_t = __t405;
_t = __t390;
	public final void definebufferstate(AST _t) throws RecognitionException {				AST definebufferstate_AST_in = (_t == ASTNULL) ? null : (AST)_t;		AST def = null;		AST id = null;		AST rec = null;				AST __t396 = _t;		def = _t==ASTNULL ? null :(AST)_t;		match(_t,DEFINE);		_t = _t.getFirstChild();		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case NEW:		case SHARED:		{			def_shared(_t);			_t = _retTree;			break;		}		case BUFFER:		case PRIVATE:		case PUBLIC:		case PROTECTED:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case PRIVATE:		case PUBLIC:		case PROTECTED:		{			def_visib(_t);			_t = _retTree;			break;		}		case BUFFER:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		AST tmp985_AST_in = (AST)_t;		match(_t,BUFFER);		_t = _t.getNextSibling();		id = (AST)_t;		match(_t,ID);		_t = _t.getNextSibling();		AST tmp986_AST_in = (AST)_t;		match(_t,FOR);		_t = _t.getNextSibling();		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case TEMPTABLE:		{			AST tmp987_AST_in = (AST)_t;			match(_t,TEMPTABLE);			_t = _t.getNextSibling();			break;		}		case RECORD_NAME:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		rec = _t==ASTNULL ? null : (AST)_t;		tbl(_t,CQ.SYMBOL);		_t = _retTree;		if ( inputState.guessing==0 ) {			action.defineBuffer(def, id, rec, false);		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case PRESELECT:		{			AST tmp988_AST_in = (AST)_t;			match(_t,PRESELECT);			_t = _t.getNextSibling();			break;		}		case EOF:		case PERIOD:		case COLUMNLABEL:		case FIELDS:		case LABEL:		case NAMESPACEPREFIX:		case NAMESPACEURI:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case COLUMNLABEL:		case LABEL:		{			label_constant(_t);			_t = _retTree;			break;		}		case EOF:		case PERIOD:		case FIELDS:		case NAMESPACEPREFIX:		case NAMESPACEURI:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case NAMESPACEURI:		{			namespace_uri(_t);			_t = _retTree;			break;		}		case EOF:		case PERIOD:		case FIELDS:		case NAMESPACEPREFIX:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case NAMESPACEPREFIX:		{			namespace_prefix(_t);			_t = _retTree;			break;		}		case EOF:		case PERIOD:		case FIELDS:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case FIELDS:		{			AST __t405 = _t;			AST tmp989_AST_in = (AST)_t;			match(_t,FIELDS);			_t = _t.getFirstChild();			{			_loop407:			do {				if (_t==null) _t=ASTNULL;				if ((_t.getType()==Field_ref)) {					fld1(_t,CQ.SYMBOL);					_t = _retTree;				}				else {					break _loop407;				}							} while (true);			}			_t = __t405;			_t = _t.getNextSibling();			break;		}		case EOF:		case PERIOD:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		state_end(_t);		_t = _retTree;		_t = __t396;		_t = _t.getNextSibling();		_retTree = _t;	}