boolean synPredMatched63 = false;
boolean synPredMatched64 = false;
	public final void exprSingle() throws RecognitionException, TokenStreamException {				returnAST = null;		ASTPair currentAST = new ASTPair();		AST exprSingle_AST = null;				boolean synPredMatched59 = false;		if (((LA(1)==LITERAL_for||LA(1)==LITERAL_let))) {			int _m59 = mark();			synPredMatched59 = true;			inputState.guessing++;			try {				{				{				switch ( LA(1)) {				case LITERAL_for:				{					match(LITERAL_for);					break;				}				case LITERAL_let:				{					match(LITERAL_let);					break;				}				default:				{					throw new NoViableAltException(LT(1), getFilename());				}				}				}				match(DOLLAR);				}			}			catch (RecognitionException pe) {				synPredMatched59 = false;			}			rewind(_m59);			inputState.guessing--;		}		if ( synPredMatched59 ) {			flworExpr();			astFactory.addASTChild(currentAST, returnAST);			exprSingle_AST = (AST)currentAST.root;		}		else {			boolean synPredMatched61 = false;			if (((LA(1)==LITERAL_some))) {				int _m61 = mark();				synPredMatched61 = true;				inputState.guessing++;				try {					{					match(LITERAL_some);					match(DOLLAR);					}				}				catch (RecognitionException pe) {					synPredMatched61 = false;				}				rewind(_m61);				inputState.guessing--;			}			if ( synPredMatched61 ) {				quantifiedExpr();				astFactory.addASTChild(currentAST, returnAST);				exprSingle_AST = (AST)currentAST.root;			}			else {				boolean synPredMatched63 = false;				if (((LA(1)==LITERAL_if))) {					int _m63 = mark();					synPredMatched63 = true;					inputState.guessing++;					try {						{						match(LITERAL_if);						match(LPAREN);						}					}					catch (RecognitionException pe) {						synPredMatched63 = false;					}					rewind(_m63);					inputState.guessing--;				}				if ( synPredMatched63 ) {					ifExpr();					astFactory.addASTChild(currentAST, returnAST);					exprSingle_AST = (AST)currentAST.root;				}				else if ((_tokenSet_4.member(LA(1)))) {					orExpr();					astFactory.addASTChild(currentAST, returnAST);					exprSingle_AST = (AST)currentAST.root;				}				else {					throw new NoViableAltException(LT(1), getFilename());				}				}}				returnAST = exprSingle_AST;			}