AST tmp270_AST_in = (AST)_t;
AST tmp269_AST_in = (AST)_t;
	public final void block_opt(AST _t) throws RecognitionException {				AST block_opt_AST_in = (_t == ASTNULL) ? null : (AST)_t;				if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case Block_iterator:		{			AST __t230 = _t;			AST tmp265_AST_in = (AST)_t;			match(_t,Block_iterator);			_t = _t.getFirstChild();			field(_t);			_t = _retTree;			AST tmp266_AST_in = (AST)_t;			match(_t,EQUAL);			_t = _t.getNextSibling();			expression(_t);			_t = _retTree;			AST tmp267_AST_in = (AST)_t;			match(_t,TO);			_t = _t.getNextSibling();			expression(_t);			_t = _retTree;			{			if (_t==null) _t=ASTNULL;			switch ( _t.getType()) {			case BY:			{				AST tmp268_AST_in = (AST)_t;				match(_t,BY);				_t = _t.getNextSibling();				constant(_t);				_t = _retTree;				break;			}			case 3:			{				break;			}			default:			{				throw new NoViableAltException(_t);			}			}			}			_t = __t230;			_t = _t.getNextSibling();			break;		}		case QUERYTUNING:		{			querytuningphrase(_t);			_t = _retTree;			break;		}		case WHILE:		{			AST __t232 = _t;			AST tmp269_AST_in = (AST)_t;			match(_t,WHILE);			_t = _t.getFirstChild();			expression(_t);			_t = _retTree;			_t = __t232;			_t = _t.getNextSibling();			break;		}		case TRANSACTION:		{			AST tmp270_AST_in = (AST)_t;			match(_t,TRANSACTION);			_t = _t.getNextSibling();			break;		}		case ON:		{			on___phrase(_t);			_t = _retTree;			break;		}		case WITH:		{			framephrase(_t);			_t = _retTree;			break;		}		case BREAK:		{			AST tmp271_AST_in = (AST)_t;			match(_t,BREAK);			_t = _t.getNextSibling();			break;		}		case BY:		{			AST __t233 = _t;			AST tmp272_AST_in = (AST)_t;			match(_t,BY);			_t = _t.getFirstChild();			expression(_t);			_t = _retTree;			{			if (_t==null) _t=ASTNULL;			switch ( _t.getType()) {			case DESCENDING:			{				AST tmp273_AST_in = (AST)_t;				match(_t,DESCENDING);				_t = _t.getNextSibling();				break;			}			case 3:			{				break;			}			default:			{				throw new NoViableAltException(_t);			}			}			}			_t = __t233;			_t = _t.getNextSibling();			break;		}		case COLLATE:		{			collatephrase(_t);			_t = _retTree;			break;		}		case GROUP:		{			AST __t235 = _t;			AST tmp274_AST_in = (AST)_t;			match(_t,GROUP);			_t = _t.getFirstChild();			{			int _cnt239=0;			_loop239:			do {				if (_t==null) _t=ASTNULL;				if ((_t.getType()==BY)) {					AST __t237 = _t;					AST tmp275_AST_in = (AST)_t;					match(_t,BY);					_t = _t.getFirstChild();					expression(_t);					_t = _retTree;					{					if (_t==null) _t=ASTNULL;					switch ( _t.getType()) {					case DESCENDING:					{						AST tmp276_AST_in = (AST)_t;						match(_t,DESCENDING);						_t = _t.getNextSibling();						break;					}					case 3:					{						break;					}					default:					{						throw new NoViableAltException(_t);					}					}					}					_t = __t237;					_t = _t.getNextSibling();				}				else {					if ( _cnt239>=1 ) { break _loop239; } else {throw new NoViableAltException(_t);}				}								_cnt239++;			} while (true);			}			_t = __t235;			_t = _t.getNextSibling();			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		_retTree = _t;	}