push(action.defineVariable(def, id));
push(action.defineSymbol(FRAME, def, id));
	public final void defineframestate(AST _t) throws RecognitionException {				AST defineframestate_AST_in = (_t == ASTNULL) ? null : (AST)_t;		AST def = null;		AST id = null;				AST __t852 = _t;		def = _t==ASTNULL ? null :(AST)_t;		match(_t,DEFINE);		_t = _t.getFirstChild();		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case NEW:		{			AST __t854 = _t;			AST tmp741_AST_in = (AST)_t;			match(_t,NEW);			_t = _t.getFirstChild();			{			if (_t==null) _t=ASTNULL;			switch ( _t.getType()) {			case GLOBAL:			{				AST tmp742_AST_in = (AST)_t;				match(_t,GLOBAL);				_t = _t.getNextSibling();				break;			}			case SHARED:			{				break;			}			default:			{				throw new NoViableAltException(_t);			}			}			}			AST tmp743_AST_in = (AST)_t;			match(_t,SHARED);			_t = _t.getNextSibling();			_t = __t854;			_t = _t.getNextSibling();			break;		}		case SHARED:		{			AST tmp744_AST_in = (AST)_t;			match(_t,SHARED);			_t = _t.getNextSibling();			break;		}		case FRAME:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		AST tmp745_AST_in = (AST)_t;		match(_t,FRAME);		_t = _t.getNextSibling();		id = (AST)_t;		match(_t,ID);		_t = _t.getNextSibling();		if ( inputState.guessing==0 ) {			push(action.defineVariable(def, id));		}		{		_loop857:		do {			if (_t==null) _t=ASTNULL;			if ((_t.getType()==Form_item)) {				form_item(_t,CQ.SYMBOL);				_t = _retTree;			}			else {				break _loop857;			}					} while (true);		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case HEADER:		{			AST __t859 = _t;			AST tmp746_AST_in = (AST)_t;			match(_t,HEADER);			_t = _t.getFirstChild();			{			int _cnt861=0;			_loop861:			do {				if (_t==null) _t=ASTNULL;				if ((_t.getType()==Form_item)) {					display_item(_t);					_t = _retTree;				}				else {					if ( _cnt861>=1 ) { break _loop861; } else {throw new NoViableAltException(_t);}				}								_cnt861++;			} while (true);			}			_t = __t859;			_t = _t.getNextSibling();			break;		}		case BACKGROUND:		{			AST __t862 = _t;			AST tmp747_AST_in = (AST)_t;			match(_t,BACKGROUND);			_t = _t.getFirstChild();			{			int _cnt864=0;			_loop864:			do {				if (_t==null) _t=ASTNULL;				if ((_t.getType()==Form_item)) {					display_item(_t);					_t = _retTree;				}				else {					if ( _cnt864>=1 ) { break _loop864; } else {throw new NoViableAltException(_t);}				}								_cnt864++;			} while (true);			}			_t = __t862;			_t = _t.getNextSibling();			break;		}		case EOF:		case PERIOD:		case EXCEPT:		case WITH:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case EXCEPT:		{			AST __t866 = _t;			AST tmp748_AST_in = (AST)_t;			match(_t,EXCEPT);			_t = _t.getFirstChild();			{			_loop868:			do {				if (_t==null) _t=ASTNULL;				if ((_t.getType()==Field_ref)) {					fld1(_t,CQ.SYMBOL);					_t = _retTree;				}				else {					break _loop868;				}							} while (true);			}			_t = __t866;			_t = _t.getNextSibling();			break;		}		case EOF:		case PERIOD:		case WITH:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case WITH:		{			framephrase(_t);			_t = _retTree;			break;		}		case EOF:		case PERIOD:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		state_end(_t);		_t = _retTree;		if ( inputState.guessing==0 ) {			action.addToScope(pop());		}		_t = __t852;		_t = _t.getNextSibling();		_retTree = _t;	}