AST __t1099 = _t;
AST __t1100 = _t;
	public final void scrollstate(AST _t) throws RecognitionException {				AST scrollstate_AST_in = (_t == ASTNULL) ? null : (AST)_t;		AST head = null;				AST __t1099 = _t;		head = _t==ASTNULL ? null :(AST)_t;		match(_t,SCROLL);		_t = _t.getFirstChild();		if ( inputState.guessing==0 ) {			action.frameInitializingStatement(head);		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case FROMCURRENT:		{			AST tmp1511_AST_in = (AST)_t;			match(_t,FROMCURRENT);			_t = _t.getNextSibling();			break;		}		case EOF:		case PERIOD:		case DOWN:		case UP:		case WITH:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case UP:		{			AST tmp1512_AST_in = (AST)_t;			match(_t,UP);			_t = _t.getNextSibling();			break;		}		case EOF:		case PERIOD:		case DOWN:		case WITH:		{			break;		}		default:		{			throw new NoViableAltException(_t);		}		}		}		{		if (_t==null) _t=ASTNULL;		switch ( _t.getType()) {		case DOWN:		{			AST tmp1513_AST_in = (AST)_t;			match(_t,DOWN);			_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.frameStatementEnd();		}		_t = __t1099;		_t = _t.getNextSibling();		_retTree = _t;	}