} returnAST = pathExpr_AST; } finally { traceOut("pathExpr");
else { throw new NoViableAltException(LT(1), getFilename());
	public final void pathExpr() throws RecognitionException, TokenStreamException {				traceIn("pathExpr");		try { // debugging			returnAST = null;			ASTPair currentAST = new ASTPair();			org.exist.xquery.parser.XQueryAST pathExpr_AST = null;			org.exist.xquery.parser.XQueryAST relPath_AST = null;			org.exist.xquery.parser.XQueryAST relPath2_AST = null;						switch ( LA(1)) {			case LPAREN:			case NCNAME:			case LITERAL_module:			case LITERAL_namespace:			case STRING_LITERAL:			case XQUERY:			case VERSION:			case LITERAL_default:			case LITERAL_function:			case LITERAL_variable:			case LITERAL_element:			case DOLLAR:			case LITERAL_import:			case LITERAL_at:			case LITERAL_as:			case LITERAL_empty:			case STAR:			case LITERAL_item:			case LITERAL_for:			case LITERAL_let:			case LITERAL_some:			case LITERAL_every:			case LITERAL_if:			case LITERAL_order:			case LITERAL_by:			case LITERAL_then:			case LITERAL_else:			case LITERAL_or:			case LITERAL_and:			case LITERAL_cast:			case LT:			case LITERAL_is:			case LITERAL_isnot:			case LITERAL_div:			case LITERAL_mod:			case LITERAL_union:			case LITERAL_intersect:			case LITERAL_except:			case LITERAL_text:			case LITERAL_node:			case SELF:			case XML_COMMENT:			case AT:			case PARENT:			case LITERAL_child:			case LITERAL_self:			case LITERAL_attribute:			case LITERAL_descendant:			case 123:			case 124:			case LITERAL_parent:			case LITERAL_ancestor:			case 127:			case 128:			case DOUBLE_LITERAL:			case DECIMAL_LITERAL:			case INTEGER_LITERAL:			case LITERAL_comment:			case 133:			case 134:			case XML_PI:			case LITERAL_document:			case LITERAL_collection:			{				relativePathExpr();				astFactory.addASTChild(currentAST, returnAST);				pathExpr_AST = (org.exist.xquery.parser.XQueryAST)currentAST.root;				break;			}			case DSLASH:			{				org.exist.xquery.parser.XQueryAST tmp233_AST = null;				tmp233_AST = (org.exist.xquery.parser.XQueryAST)astFactory.create(LT(1));				astFactory.addASTChild(currentAST, tmp233_AST);				match(DSLASH);				relativePathExpr();				relPath2_AST = (org.exist.xquery.parser.XQueryAST)returnAST;				astFactory.addASTChild(currentAST, returnAST);				if ( inputState.guessing==0 ) {					pathExpr_AST = (org.exist.xquery.parser.XQueryAST)currentAST.root;					pathExpr_AST= (org.exist.xquery.parser.XQueryAST)astFactory.make( (new ASTArray(2)).add((org.exist.xquery.parser.XQueryAST)astFactory.create(ABSOLUTE_DSLASH,"AbsoluteSlashSlash")).add(relPath2_AST));					currentAST.root = pathExpr_AST;					currentAST.child = pathExpr_AST!=null &&pathExpr_AST.getFirstChild()!=null ?						pathExpr_AST.getFirstChild() : pathExpr_AST;					currentAST.advanceChildToEnd();				}				pathExpr_AST = (org.exist.xquery.parser.XQueryAST)currentAST.root;				break;			}			default:				boolean synPredMatched147 = false;				if (((LA(1)==SLASH))) {					int _m147 = mark();					synPredMatched147 = true;					inputState.guessing++;					try {						{						match(SLASH);						relativePathExpr();						}					}					catch (RecognitionException pe) {						synPredMatched147 = false;					}					rewind(_m147);					inputState.guessing--;				}				if ( synPredMatched147 ) {					org.exist.xquery.parser.XQueryAST tmp234_AST = null;					tmp234_AST = (org.exist.xquery.parser.XQueryAST)astFactory.create(LT(1));					astFactory.addASTChild(currentAST, tmp234_AST);					match(SLASH);					relativePathExpr();					relPath_AST = (org.exist.xquery.parser.XQueryAST)returnAST;					astFactory.addASTChild(currentAST, returnAST);					if ( inputState.guessing==0 ) {						pathExpr_AST = (org.exist.xquery.parser.XQueryAST)currentAST.root;						pathExpr_AST= (org.exist.xquery.parser.XQueryAST)astFactory.make( (new ASTArray(2)).add((org.exist.xquery.parser.XQueryAST)astFactory.create(ABSOLUTE_SLASH,"AbsoluteSlash")).add(relPath_AST));						currentAST.root = pathExpr_AST;						currentAST.child = pathExpr_AST!=null &&pathExpr_AST.getFirstChild()!=null ?							pathExpr_AST.getFirstChild() : pathExpr_AST;						currentAST.advanceChildToEnd();					}					pathExpr_AST = (org.exist.xquery.parser.XQueryAST)currentAST.root;				}				else if ((LA(1)==SLASH)) {					org.exist.xquery.parser.XQueryAST tmp235_AST = null;					tmp235_AST = (org.exist.xquery.parser.XQueryAST)astFactory.create(LT(1));					astFactory.addASTChild(currentAST, tmp235_AST);					match(SLASH);					if ( inputState.guessing==0 ) {						pathExpr_AST = (org.exist.xquery.parser.XQueryAST)currentAST.root;						pathExpr_AST= (org.exist.xquery.parser.XQueryAST)astFactory.create(ABSOLUTE_SLASH,"AbsoluteSlash");						currentAST.root = pathExpr_AST;						currentAST.child = pathExpr_AST!=null &&pathExpr_AST.getFirstChild()!=null ?							pathExpr_AST.getFirstChild() : pathExpr_AST;						currentAST.advanceChildToEnd();					}					pathExpr_AST = (org.exist.xquery.parser.XQueryAST)currentAST.root;				}			else {				throw new NoViableAltException(LT(1), getFilename());			}			}			returnAST = pathExpr_AST;		} finally { // debugging			traceOut("pathExpr");		}	}