diff --git a/build/demo/kitchen-sink/mode-xquery-uncompressed.js b/build/demo/kitchen-sink/mode-xquery-uncompressed.js
new file mode 100644
index 00000000..9d7bbc12
--- /dev/null
+++ b/build/demo/kitchen-sink/mode-xquery-uncompressed.js
@@ -0,0 +1,721 @@
+/*
+ * eXide - web-based XQuery IDE
+ *
+ * Copyright (C) 2011 Wolfgang Meier
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+define('ace/mode/xquery', ['require', 'exports', 'module' , 'ace/worker/worker_client', 'ace/lib/oop', 'ace/mode/text', 'ace/tokenizer', 'ace/mode/xquery_highlight_rules', 'ace/mode/behaviour/xquery', 'ace/range'], function(require, exports, module) {
+"use strict";
+
+var WorkerClient = require("../worker/worker_client").WorkerClient;
+var oop = require("../lib/oop");
+var TextMode = require("./text").Mode;
+var Tokenizer = require("../tokenizer").Tokenizer;
+var XQueryHighlightRules = require("./xquery_highlight_rules").XQueryHighlightRules;
+var XQueryBehaviour = require("./behaviour/xquery").XQueryBehaviour;
+var Range = require("../range").Range;
+
+var Mode = function(parent) {
+ this.$tokenizer = new Tokenizer(new XQueryHighlightRules().getRules());
+ this.$behaviour = new XQueryBehaviour(parent);
+};
+
+oop.inherits(Mode, TextMode);
+
+(function() {
+
+ this.getNextLineIndent = function(state, line, tab) {
+ var indent = this.$getIndent(line);
+ var match = line.match(/\s*(?:then|else|return|[{\(]|<\w+>)\s*$/);
+ if (match)
+ indent += tab;
+ return indent;
+ };
+
+ this.checkOutdent = function(state, line, input) {
+ if (! /^\s+$/.test(line))
+ return false;
+
+ return /^\s*[\}\)]/.test(input);
+ };
+
+ this.autoOutdent = function(state, doc, row) {
+ var line = doc.getLine(row);
+ var match = line.match(/^(\s*[\}\)])/);
+
+ if (!match) return 0;
+
+ var column = match[1].length;
+ var openBracePos = doc.findMatchingBracket({row: row, column: column});
+
+ if (!openBracePos || openBracePos.row == row) return 0;
+
+ var indent = this.$getIndent(doc.getLine(openBracePos.row));
+ doc.replace(new Range(row, 0, row, column-1), indent);
+ };
+
+ this.$getIndent = function(line) {
+ var match = line.match(/^(\s+)/);
+ if (match) {
+ return match[1];
+ }
+
+ return "";
+ };
+
+ this.toggleCommentLines = function(state, doc, startRow, endRow) {
+ var i, line;
+ var outdent = true;
+ var re = /^\s*\(:(.*):\)/;
+
+ for (i=startRow; i<= endRow; i++) {
+ if (!re.test(doc.getLine(i))) {
+ outdent = false;
+ break;
+ }
+ }
+
+ var range = new Range(0, 0, 0, 0);
+ for (i=startRow; i<= endRow; i++) {
+ line = doc.getLine(i);
+ range.start.row = i;
+ range.end.row = i;
+ range.end.column = line.length;
+
+ doc.replace(range, outdent ? line.match(re)[1] : "(:" + line + ":)");
+ }
+ };
+
+ this.createWorker = function(session) {
+ var worker = new WorkerClient(["ace"], "worker-xquery.js", "ace/mode/xquery_worker", "XQueryWorker");
+ worker.attachToDocument(session.getDocument());
+
+ worker.on("error", function(e) {
+ session.setAnnotations([e.data]);
+ });
+
+ worker.on("ok", function(e) {
+ session.clearAnnotations();
+ });
+
+ return worker;
+ };
+
+}).call(Mode.prototype);
+
+exports.Mode = Mode;
+});
+/* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Ajax.org Code Editor (ACE).
+ *
+ * The Initial Developer of the Original Code is
+ * Ajax.org B.V.
+ * Portions created by the Initial Developer are Copyright (C) 2010
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Fabian Jakobs
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+define('ace/worker/worker_client', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/event_emitter', 'ace/config'], function(require, exports, module) {
+"use strict";
+
+var oop = require("../lib/oop");
+var EventEmitter = require("../lib/event_emitter").EventEmitter;
+var config = require("../config");
+
+var WorkerClient = function(topLevelNamespaces, packagedJs, mod, classname) {
+
+ this.changeListener = this.changeListener.bind(this);
+
+ if (config.get("packaged")) {
+ this.$worker = new Worker(config.get("workerPath") + "/" + packagedJs);
+ }
+ else {
+ var workerUrl = this.$normalizePath(require.nameToUrl("ace/worker/worker", null, "_"));
+ this.$worker = new Worker(workerUrl);
+
+ var tlns = {};
+ for (var i=0; i .
+ */
+define('ace/mode/xquery_highlight_rules', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/lang', 'ace/mode/text_highlight_rules'], function(require, exports, module) {
+"use strict";
+
+var oop = require("../lib/oop");
+var lang = require("../lib/lang");
+var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
+
+var XQueryHighlightRules = function() {
+
+ var keywords = lang.arrayToMap(
+ ("return|for|let|where|order|by|declare|function|variable|xquery|version|option|namespace|import|module|when|encoding|" +
+ "switch|default|try|catch|group|tumbling|sliding|window|start|end|at|only|" +
+ "using|stemming|" +
+ "while|" +
+ "external|" +
+ "if|then|else|as|and|or|typeswitch|case|ascending|descending|empty|in|count|updating|insert|delete|replace|value|node|attribute|text|element|into|of|with|contains").split("|")
+ );
+
+ // regexp must not have capturing parentheses
+ // regexps are ordered -> the first match is used
+
+ this.$rules = {
+ start : [ {
+ token : "text",
+ regex : "<\\!\\[CDATA\\[",
+ next : "cdata"
+ }, {
+ token : "xml_pe",
+ regex : "<\\?.*?\\?>"
+ }, {
+ token : "comment",
+ regex : "<\\!--",
+ next : "comment"
+ }, {
+ token : "comment",
+ regex : "\\(:",
+ next : "comment"
+ }, {
+ token : "text", // opening tag
+ regex : "<\\/?",
+ next : "tag"
+ }, {
+ token : "constant", // number
+ regex : "[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"
+ }, {
+ token : "variable", // variable
+ regex : "\\$[a-zA-Z_][a-zA-Z0-9_\\-:]*\\b"
+ }, {
+ token: "string",
+ regex : '".*?"'
+ }, {
+ token: "string",
+ regex : "'.*?'"
+ }, {
+ token : "text",
+ regex : "\\s+"
+ }, {
+ token: "support.function",
+ regex: "\\w[\\w+_\\-:]+(?=\\()"
+ }, {
+ token : function(value) {
+ if (keywords[value])
+ return "keyword";
+ else
+ return "identifier";
+ },
+ regex : "[a-zA-Z_$][a-zA-Z0-9_$]*\\b"
+ }, {
+ token: "keyword.operator",
+ regex: "\\*|=|<|>|\\-|\\+|and|or|eq|ne|lt|gt"
+ }, {
+ token: "lparen",
+ regex: "[[({]"
+ }, {
+ token: "rparen",
+ regex: "[\\])}]"
+ } ],
+
+ tag : [ {
+ token : "text",
+ regex : ">",
+ next : "start"
+ }, {
+ token : "meta.tag",
+ regex : "[-_a-zA-Z0-9:]+"
+ }, {
+ token : "text",
+ regex : "\\s+"
+ }, {
+ token : "string",
+ regex : '".*?"'
+ }, {
+ token : "string",
+ regex : "'.*?'"
+ } ],
+
+ cdata : [ {
+ token : "text",
+ regex : "\\]\\]>",
+ next : "start"
+ }, {
+ token : "text",
+ regex : "\\s+"
+ }, {
+ token : "text",
+ regex : "(?:[^\\]]|\\](?!\\]>))+"
+ } ],
+
+ comment : [ {
+ token : "comment",
+ regex : ".*?-->",
+ next : "start"
+ }, {
+ token: "comment",
+ regex : ".*:\\)",
+ next : "start"
+ }, {
+ token : "comment",
+ regex : ".+"
+ } ]
+ };
+};
+
+oop.inherits(XQueryHighlightRules, TextHighlightRules);
+
+exports.XQueryHighlightRules = XQueryHighlightRules;
+});
+/*
+* eXide - web-based XQuery IDE
+*
+* Copyright (C) 2011 Wolfgang Meier
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+define('ace/mode/behaviour/xquery', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/behaviour', 'ace/mode/behaviour/cstyle'], function(require, exports, module) {
+"use strict";
+
+ var oop = require("../../lib/oop");
+ var Behaviour = require('../behaviour').Behaviour;
+ var CstyleBehaviour = require('./cstyle').CstyleBehaviour;
+
+ var XQueryBehaviour = function (parent) {
+
+ this.inherit(CstyleBehaviour, ["braces", "parens", "string_dquotes"]); // Get string behaviour
+ this.parent = parent;
+
+ this.add("brackets", "insertion", function (state, action, editor, session, text) {
+ if (text == "\n") {
+ var cursor = editor.getCursorPosition();
+ var line = session.doc.getLine(cursor.row);
+ var rightChars = line.substring(cursor.column, cursor.column + 2);
+ if (rightChars == '') {
+ var indent = this.$getIndent(session.doc.getLine(cursor.row)) + session.getTabString();
+ var next_indent = this.$getIndent(session.doc.getLine(cursor.row));
+
+ return {
+ text: '\n' + indent + '\n' + next_indent,
+ selection: [1, indent.length, 1, indent.length]
+ }
+ }
+ }
+ return false;
+ });
+
+ // Check for open tag if user enters / and auto-close it.
+ this.add("slash", "insertion", function (state, action, editor, session, text) {
+ if (text == "/") {
+ var cursor = editor.getCursorPosition();
+ var line = session.doc.getLine(cursor.row);
+ if (cursor.column > 0 && line.charAt(cursor.column - 1) == "<") {
+ line = line.substring(0, cursor.column) + "/" + line.substring(cursor.column);
+ var lines = session.doc.getAllLines();
+ lines[cursor.row] = line;
+ // call mode helper to close the tag if possible
+ parent.exec("closeTag", lines.join(session.doc.getNewLineCharacter()), cursor.row);
+ }
+ }
+ return false;
+ });
+ }
+ oop.inherits(XQueryBehaviour, Behaviour);
+
+ exports.XQueryBehaviour = XQueryBehaviour;
+});
+/* vim:ts=4:sts=4:sw=4:
+ * ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Ajax.org Code Editor (ACE).
+ *
+ * The Initial Developer of the Original Code is
+ * Ajax.org B.V.
+ * Portions created by the Initial Developer are Copyright (C) 2010
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Chris Spencer
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+define('ace/mode/behaviour/cstyle', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/behaviour'], function(require, exports, module) {
+"use strict";
+
+var oop = require("../../lib/oop");
+var Behaviour = require('../behaviour').Behaviour;
+
+var CstyleBehaviour = function () {
+
+ this.add("braces", "insertion", function (state, action, editor, session, text) {
+ if (text == '{') {
+ var selection = editor.getSelectionRange();
+ var selected = session.doc.getTextRange(selection);
+ if (selected !== "") {
+ return {
+ text: '{' + selected + '}',
+ selection: false
+ }
+ } else {
+ return {
+ text: '{}',
+ selection: [1, 1]
+ }
+ }
+ } else if (text == '}') {
+ var cursor = editor.getCursorPosition();
+ var line = session.doc.getLine(cursor.row);
+ var rightChar = line.substring(cursor.column, cursor.column + 1);
+ if (rightChar == '}') {
+ var matching = session.$findOpeningBracket('}', {column: cursor.column + 1, row: cursor.row});
+ if (matching !== null) {
+ return {
+ text: '',
+ selection: [1, 1]
+ }
+ }
+ }
+ } else if (text == "\n") {
+ var cursor = editor.getCursorPosition();
+ var line = session.doc.getLine(cursor.row);
+ var rightChar = line.substring(cursor.column, cursor.column + 1);
+ if (rightChar == '}') {
+ var openBracePos = session.findMatchingBracket({row: cursor.row, column: cursor.column + 1});
+ if (!openBracePos)
+ return null;
+
+ var indent = this.getNextLineIndent(state, line.substring(0, line.length - 1), session.getTabString());
+ var next_indent = this.$getIndent(session.doc.getLine(openBracePos.row));
+
+ return {
+ text: '\n' + indent + '\n' + next_indent,
+ selection: [1, indent.length, 1, indent.length]
+ }
+ }
+ }
+ });
+
+ this.add("braces", "deletion", function (state, action, editor, session, range) {
+ var selected = session.doc.getTextRange(range);
+ if (!range.isMultiLine() && selected == '{') {
+ var line = session.doc.getLine(range.start.row);
+ var rightChar = line.substring(range.end.column, range.end.column + 1);
+ if (rightChar == '}') {
+ range.end.column++;
+ return range;
+ }
+ }
+ });
+
+ this.add("parens", "insertion", function (state, action, editor, session, text) {
+ if (text == '(') {
+ var selection = editor.getSelectionRange();
+ var selected = session.doc.getTextRange(selection);
+ if (selected !== "") {
+ return {
+ text: '(' + selected + ')',
+ selection: false
+ }
+ } else {
+ return {
+ text: '()',
+ selection: [1, 1]
+ }
+ }
+ } else if (text == ')') {
+ var cursor = editor.getCursorPosition();
+ var line = session.doc.getLine(cursor.row);
+ var rightChar = line.substring(cursor.column, cursor.column + 1);
+ if (rightChar == ')') {
+ var matching = session.$findOpeningBracket(')', {column: cursor.column + 1, row: cursor.row});
+ if (matching !== null) {
+ return {
+ text: '',
+ selection: [1, 1]
+ }
+ }
+ }
+ }
+ });
+
+ this.add("parens", "deletion", function (state, action, editor, session, range) {
+ var selected = session.doc.getTextRange(range);
+ if (!range.isMultiLine() && selected == '(') {
+ var line = session.doc.getLine(range.start.row);
+ var rightChar = line.substring(range.start.column + 1, range.start.column + 2);
+ if (rightChar == ')') {
+ range.end.column++;
+ return range;
+ }
+ }
+ });
+
+ this.add("string_dquotes", "insertion", function (state, action, editor, session, text) {
+ if (text == '"') {
+ var selection = editor.getSelectionRange();
+ var selected = session.doc.getTextRange(selection);
+ if (selected !== "") {
+ return {
+ text: '"' + selected + '"',
+ selection: false
+ }
+ } else {
+ var cursor = editor.getCursorPosition();
+ var line = session.doc.getLine(cursor.row);
+ var leftChar = line.substring(cursor.column-1, cursor.column);
+
+ // We're escaped.
+ if (leftChar == '\\') {
+ return null;
+ }
+
+ // Find what token we're inside.
+ var tokens = session.getTokens(selection.start.row, selection.start.row)[0].tokens;
+ var col = 0, token;
+ var quotepos = -1; // Track whether we're inside an open quote.
+
+ for (var x = 0; x < tokens.length; x++) {
+ token = tokens[x];
+ if (token.type == "string") {
+ quotepos = -1;
+ } else if (quotepos < 0) {
+ quotepos = token.value.indexOf('"');
+ }
+ if ((token.value.length + col) > selection.start.column) {
+ break;
+ }
+ col += tokens[x].value.length;
+ }
+
+ // Try and be smart about when we auto insert.
+ if (!token || (quotepos < 0 && token.type !== "comment" && (token.type !== "string" || ((selection.start.column !== token.value.length+col-1) && token.value.lastIndexOf('"') === token.value.length-1)))) {
+ return {
+ text: '""',
+ selection: [1,1]
+ }
+ } else if (token && token.type === "string") {
+ // Ignore input and move right one if we're typing over the closing quote.
+ var rightChar = line.substring(cursor.column, cursor.column + 1);
+ if (rightChar == '"') {
+ return {
+ text: '',
+ selection: [1, 1]
+ }
+ }
+ }
+ }
+ }
+ });
+
+ this.add("string_dquotes", "deletion", function (state, action, editor, session, range) {
+ var selected = session.doc.getTextRange(range);
+ if (!range.isMultiLine() && selected == '"') {
+ var line = session.doc.getLine(range.start.row);
+ var rightChar = line.substring(range.start.column + 1, range.start.column + 2);
+ if (rightChar == '"') {
+ range.end.column++;
+ return range;
+ }
+ }
+ });
+
+}
+oop.inherits(CstyleBehaviour, Behaviour);
+
+exports.CstyleBehaviour = CstyleBehaviour;
+});
\ No newline at end of file
diff --git a/build/demo/kitchen-sink/worker-xquery.js b/build/demo/kitchen-sink/worker-xquery.js
new file mode 100644
index 00000000..f153a06d
--- /dev/null
+++ b/build/demo/kitchen-sink/worker-xquery.js
@@ -0,0 +1,48847 @@
+"no use strict";
+
+var console = {
+ log: function(msg) {
+ postMessage({type: "log", data: msg});
+ }
+};
+var window = {
+ console: console
+};
+
+var normalizeModule = function(parentId, moduleName) {
+ // normalize plugin requires
+ if (moduleName.indexOf("!") !== -1) {
+ var chunks = moduleName.split("!");
+ return normalizeModule(parentId, chunks[0]) + "!" + normalizeModule(parentId, chunks[1]);
+ }
+ // normalize relative requires
+ if (moduleName.charAt(0) == ".") {
+ var base = parentId.split("/").slice(0, -1).join("/");
+ var moduleName = base + "/" + moduleName;
+
+ while(moduleName.indexOf(".") !== -1 && previous != moduleName) {
+ var previous = moduleName;
+ var moduleName = moduleName.replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, "");
+ }
+ }
+
+ return moduleName;
+};
+
+var require = function(parentId, id) {
+ var id = normalizeModule(parentId, id);
+
+ var module = require.modules[id];
+ if (module) {
+ if (!module.initialized) {
+ module.exports = module.factory().exports;
+ module.initialized = true;
+ }
+ return module.exports;
+ }
+
+ var chunks = id.split("/");
+ chunks[0] = require.tlns[chunks[0]] || chunks[0];
+ var path = chunks.join("/") + ".js";
+
+ require.id = id;
+ importScripts(path);
+ return require(parentId, id);
+};
+
+require.modules = {};
+require.tlns = {};
+
+var define = function(id, deps, factory) {
+ if (arguments.length == 2) {
+ factory = deps;
+ } else if (arguments.length == 1) {
+ factory = id;
+ id = require.id;
+ }
+
+ if (id.indexOf("text!") === 0)
+ return;
+
+ var req = function(deps, factory) {
+ return require(id, deps, factory);
+ };
+
+ require.modules[id] = {
+ factory: function() {
+ var module = {
+ exports: {}
+ };
+ var returnExports = factory(req, module.exports, module);
+ if (returnExports)
+ module.exports = returnExports;
+ return module;
+ }
+ };
+};
+
+function initBaseUrls(topLevelNamespaces) {
+ require.tlns = topLevelNamespaces;
+}
+
+function initSender() {
+
+ var EventEmitter = require(null, "ace/lib/event_emitter").EventEmitter;
+ var oop = require(null, "ace/lib/oop");
+
+ var Sender = function() {};
+
+ (function() {
+
+ oop.implement(this, EventEmitter);
+
+ this.callback = function(data, callbackId) {
+ postMessage({
+ type: "call",
+ id: callbackId,
+ data: data
+ });
+ };
+
+ this.emit = function(name, data) {
+ postMessage({
+ type: "event",
+ name: name,
+ data: data
+ });
+ };
+
+ }).call(Sender.prototype);
+
+ return new Sender();
+}
+
+var main;
+var sender;
+
+onmessage = function(e) {
+ var msg = e.data;
+ if (msg.command) {
+ main[msg.command].apply(main, msg.args);
+ }
+ else if (msg.init) {
+ initBaseUrls(msg.tlns);
+ require(null, "ace/lib/fixoldbrowsers");
+ sender = initSender();
+ var clazz = require(null, msg.module)[msg.classname];
+ main = new clazz(sender);
+ }
+ else if (msg.event && sender) {
+ sender._emit(msg.event, msg.data);
+ }
+};
+// vim:set ts=4 sts=4 sw=4 st:
+// -- kriskowal Kris Kowal Copyright (C) 2009-2010 MIT License
+// -- tlrobinson Tom Robinson Copyright (C) 2009-2010 MIT License (Narwhal Project)
+// -- dantman Daniel Friesen Copyright(C) 2010 XXX No License Specified
+// -- fschaefer Florian Schäfer Copyright (C) 2010 MIT License
+// -- Irakli Gozalishvili Copyright (C) 2010 MIT License
+
+/*!
+ Copyright (c) 2009, 280 North Inc. http://280north.com/
+ MIT License. http://github.com/280north/narwhal/blob/master/README.md
+*/
+
+define('ace/lib/fixoldbrowsers', ['require', 'exports', 'module' , 'ace/lib/regexp', 'ace/lib/es5-shim'], function(require, exports, module) {
+"use strict";
+
+require("./regexp");
+require("./es5-shim");
+
+});/**
+ * Based on code from:
+ *
+ * XRegExp 1.5.0
+ * (c) 2007-2010 Steven Levithan
+ * MIT License
+ *
+ * Provides an augmented, extensible, cross-browser implementation of regular expressions,
+ * including support for additional syntax, flags, and methods
+ */
+
+define('ace/lib/regexp', ['require', 'exports', 'module' ], function(require, exports, module) {
+"use strict";
+
+ //---------------------------------
+ // Private variables
+ //---------------------------------
+
+ var real = {
+ exec: RegExp.prototype.exec,
+ test: RegExp.prototype.test,
+ match: String.prototype.match,
+ replace: String.prototype.replace,
+ split: String.prototype.split
+ },
+ compliantExecNpcg = real.exec.call(/()??/, "")[1] === undefined, // check `exec` handling of nonparticipating capturing groups
+ compliantLastIndexIncrement = function () {
+ var x = /^/g;
+ real.test.call(x, "");
+ return !x.lastIndex;
+ }();
+
+ //---------------------------------
+ // Overriden native methods
+ //---------------------------------
+
+ // Adds named capture support (with backreferences returned as `result.name`), and fixes two
+ // cross-browser issues per ES3:
+ // - Captured values for nonparticipating capturing groups should be returned as `undefined`,
+ // rather than the empty string.
+ // - `lastIndex` should not be incremented after zero-length matches.
+ RegExp.prototype.exec = function (str) {
+ var match = real.exec.apply(this, arguments),
+ name, r2;
+ if ( typeof(str) == 'string' && match) {
+ // Fix browsers whose `exec` methods don't consistently return `undefined` for
+ // nonparticipating capturing groups
+ if (!compliantExecNpcg && match.length > 1 && indexOf(match, "") > -1) {
+ r2 = RegExp(this.source, real.replace.call(getNativeFlags(this), "g", ""));
+ // Using `str.slice(match.index)` rather than `match[0]` in case lookahead allowed
+ // matching due to characters outside the match
+ real.replace.call(str.slice(match.index), r2, function () {
+ for (var i = 1; i < arguments.length - 2; i++) {
+ if (arguments[i] === undefined)
+ match[i] = undefined;
+ }
+ });
+ }
+ // Attach named capture properties
+ if (this._xregexp && this._xregexp.captureNames) {
+ for (var i = 1; i < match.length; i++) {
+ name = this._xregexp.captureNames[i - 1];
+ if (name)
+ match[name] = match[i];
+ }
+ }
+ // Fix browsers that increment `lastIndex` after zero-length matches
+ if (!compliantLastIndexIncrement && this.global && !match[0].length && (this.lastIndex > match.index))
+ this.lastIndex--;
+ }
+ return match;
+ };
+
+ // Don't override `test` if it won't change anything
+ if (!compliantLastIndexIncrement) {
+ // Fix browser bug in native method
+ RegExp.prototype.test = function (str) {
+ // Use the native `exec` to skip some processing overhead, even though the overriden
+ // `exec` would take care of the `lastIndex` fix
+ var match = real.exec.call(this, str);
+ // Fix browsers that increment `lastIndex` after zero-length matches
+ if (match && this.global && !match[0].length && (this.lastIndex > match.index))
+ this.lastIndex--;
+ return !!match;
+ };
+ }
+
+ //---------------------------------
+ // Private helper functions
+ //---------------------------------
+
+ function getNativeFlags (regex) {
+ return (regex.global ? "g" : "") +
+ (regex.ignoreCase ? "i" : "") +
+ (regex.multiline ? "m" : "") +
+ (regex.extended ? "x" : "") + // Proposed for ES4; included in AS3
+ (regex.sticky ? "y" : "");
+ };
+
+ function indexOf (array, item, from) {
+ if (Array.prototype.indexOf) // Use the native array method if available
+ return array.indexOf(item, from);
+ for (var i = from || 0; i < array.length; i++) {
+ if (array[i] === item)
+ return i;
+ }
+ return -1;
+ };
+
+});
+// vim: ts=4 sts=4 sw=4 expandtab
+// -- kriskowal Kris Kowal Copyright (C) 2009-2011 MIT License
+// -- tlrobinson Tom Robinson Copyright (C) 2009-2010 MIT License (Narwhal Project)
+// -- dantman Daniel Friesen Copyright (C) 2010 XXX TODO License or CLA
+// -- fschaefer Florian Schäfer Copyright (C) 2010 MIT License
+// -- Gozala Irakli Gozalishvili Copyright (C) 2010 MIT License
+// -- kitcambridge Kit Cambridge Copyright (C) 2011 MIT License
+// -- kossnocorp Sasha Koss XXX TODO License or CLA
+// -- bryanforbes Bryan Forbes XXX TODO License or CLA
+// -- killdream Quildreen Motta Copyright (C) 2011 MIT Licence
+// -- michaelficarra Michael Ficarra Copyright (C) 2011 3-clause BSD License
+// -- sharkbrainguy Gerard Paapu Copyright (C) 2011 MIT License
+// -- bbqsrc Brendan Molloy (C) 2011 Creative Commons Zero (public domain)
+// -- iwyg XXX TODO License or CLA
+// -- DomenicDenicola Domenic Denicola Copyright (C) 2011 MIT License
+// -- xavierm02 Montillet Xavier XXX TODO License or CLA
+// -- Raynos Raynos XXX TODO License or CLA
+// -- samsonjs Sami Samhuri Copyright (C) 2010 MIT License
+// -- rwldrn Rick Waldron Copyright (C) 2011 MIT License
+// -- lexer Alexey Zakharov XXX TODO License or CLA
+
+/*!
+ Copyright (c) 2009, 280 North Inc. http://280north.com/
+ MIT License. http://github.com/280north/narwhal/blob/master/README.md
+*/
+
+define('ace/lib/es5-shim', ['require', 'exports', 'module' ], function(require, exports, module) {
+
+/**
+ * Brings an environment as close to ECMAScript 5 compliance
+ * as is possible with the facilities of erstwhile engines.
+ *
+ * Annotated ES5: http://es5.github.com/ (specific links below)
+ * ES5 Spec: http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf
+ *
+ * @module
+ */
+
+/*whatsupdoc*/
+
+//
+// Function
+// ========
+//
+
+// ES-5 15.3.4.5
+// http://es5.github.com/#x15.3.4.5
+
+if (!Function.prototype.bind) {
+ Function.prototype.bind = function bind(that) { // .length is 1
+ // 1. Let Target be the this value.
+ var target = this;
+ // 2. If IsCallable(Target) is false, throw a TypeError exception.
+ if (typeof target != "function")
+ throw new TypeError(); // TODO message
+ // 3. Let A be a new (possibly empty) internal list of all of the
+ // argument values provided after thisArg (arg1, arg2 etc), in order.
+ // XXX slicedArgs will stand in for "A" if used
+ var args = slice.call(arguments, 1); // for normal call
+ // 4. Let F be a new native ECMAScript object.
+ // 11. Set the [[Prototype]] internal property of F to the standard
+ // built-in Function prototype object as specified in 15.3.3.1.
+ // 12. Set the [[Call]] internal property of F as described in
+ // 15.3.4.5.1.
+ // 13. Set the [[Construct]] internal property of F as described in
+ // 15.3.4.5.2.
+ // 14. Set the [[HasInstance]] internal property of F as described in
+ // 15.3.4.5.3.
+ var bound = function () {
+
+ if (this instanceof bound) {
+ // 15.3.4.5.2 [[Construct]]
+ // When the [[Construct]] internal method of a function object,
+ // F that was created using the bind function is called with a
+ // list of arguments ExtraArgs, the following steps are taken:
+ // 1. Let target be the value of F's [[TargetFunction]]
+ // internal property.
+ // 2. If target has no [[Construct]] internal method, a
+ // TypeError exception is thrown.
+ // 3. Let boundArgs be the value of F's [[BoundArgs]] internal
+ // property.
+ // 4. Let args be a new list containing the same values as the
+ // list boundArgs in the same order followed by the same
+ // values as the list ExtraArgs in the same order.
+ // 5. Return the result of calling the [[Construct]] internal
+ // method of target providing args as the arguments.
+
+ var F = function(){};
+ F.prototype = target.prototype;
+ var self = new F;
+
+ var result = target.apply(
+ self,
+ args.concat(slice.call(arguments))
+ );
+ if (result !== null && Object(result) === result)
+ return result;
+ return self;
+
+ } else {
+ // 15.3.4.5.1 [[Call]]
+ // When the [[Call]] internal method of a function object, F,
+ // which was created using the bind function is called with a
+ // this value and a list of arguments ExtraArgs, the following
+ // steps are taken:
+ // 1. Let boundArgs be the value of F's [[BoundArgs]] internal
+ // property.
+ // 2. Let boundThis be the value of F's [[BoundThis]] internal
+ // property.
+ // 3. Let target be the value of F's [[TargetFunction]] internal
+ // property.
+ // 4. Let args be a new list containing the same values as the
+ // list boundArgs in the same order followed by the same
+ // values as the list ExtraArgs in the same order.
+ // 5. Return the result of calling the [[Call]] internal method
+ // of target providing boundThis as the this value and
+ // providing args as the arguments.
+
+ // equiv: target.call(this, ...boundArgs, ...args)
+ return target.apply(
+ that,
+ args.concat(slice.call(arguments))
+ );
+
+ }
+
+ };
+ // XXX bound.length is never writable, so don't even try
+ //
+ // 15. If the [[Class]] internal property of Target is "Function", then
+ // a. Let L be the length property of Target minus the length of A.
+ // b. Set the length own property of F to either 0 or L, whichever is
+ // larger.
+ // 16. Else set the length own property of F to 0.
+ // 17. Set the attributes of the length own property of F to the values
+ // specified in 15.3.5.1.
+
+ // TODO
+ // 18. Set the [[Extensible]] internal property of F to true.
+
+ // TODO
+ // 19. Let thrower be the [[ThrowTypeError]] function Object (13.2.3).
+ // 20. Call the [[DefineOwnProperty]] internal method of F with
+ // arguments "caller", PropertyDescriptor {[[Get]]: thrower, [[Set]]:
+ // thrower, [[Enumerable]]: false, [[Configurable]]: false}, and
+ // false.
+ // 21. Call the [[DefineOwnProperty]] internal method of F with
+ // arguments "arguments", PropertyDescriptor {[[Get]]: thrower,
+ // [[Set]]: thrower, [[Enumerable]]: false, [[Configurable]]: false},
+ // and false.
+
+ // TODO
+ // NOTE Function objects created using Function.prototype.bind do not
+ // have a prototype property or the [[Code]], [[FormalParameters]], and
+ // [[Scope]] internal properties.
+ // XXX can't delete prototype in pure-js.
+
+ // 22. Return F.
+ return bound;
+ };
+}
+
+// Shortcut to an often accessed properties, in order to avoid multiple
+// dereference that costs universally.
+// _Please note: Shortcuts are defined after `Function.prototype.bind` as we
+// us it in defining shortcuts.
+var call = Function.prototype.call;
+var prototypeOfArray = Array.prototype;
+var prototypeOfObject = Object.prototype;
+var slice = prototypeOfArray.slice;
+var toString = call.bind(prototypeOfObject.toString);
+var owns = call.bind(prototypeOfObject.hasOwnProperty);
+
+// If JS engine supports accessors creating shortcuts.
+var defineGetter;
+var defineSetter;
+var lookupGetter;
+var lookupSetter;
+var supportsAccessors;
+if ((supportsAccessors = owns(prototypeOfObject, "__defineGetter__"))) {
+ defineGetter = call.bind(prototypeOfObject.__defineGetter__);
+ defineSetter = call.bind(prototypeOfObject.__defineSetter__);
+ lookupGetter = call.bind(prototypeOfObject.__lookupGetter__);
+ lookupSetter = call.bind(prototypeOfObject.__lookupSetter__);
+}
+
+//
+// Array
+// =====
+//
+
+// ES5 15.4.3.2
+// http://es5.github.com/#x15.4.3.2
+// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/isArray
+if (!Array.isArray) {
+ Array.isArray = function isArray(obj) {
+ return toString(obj) == "[object Array]";
+ };
+}
+
+// The IsCallable() check in the Array functions
+// has been replaced with a strict check on the
+// internal class of the object to trap cases where
+// the provided function was actually a regular
+// expression literal, which in V8 and
+// JavaScriptCore is a typeof "function". Only in
+// V8 are regular expression literals permitted as
+// reduce parameters, so it is desirable in the
+// general case for the shim to match the more
+// strict and common behavior of rejecting regular
+// expressions.
+
+// ES5 15.4.4.18
+// http://es5.github.com/#x15.4.4.18
+// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/array/forEach
+if (!Array.prototype.forEach) {
+ Array.prototype.forEach = function forEach(fun /*, thisp*/) {
+ var self = toObject(this),
+ thisp = arguments[1],
+ i = 0,
+ length = self.length >>> 0;
+
+ // If no callback function or if callback is not a callable function
+ if (toString(fun) != "[object Function]") {
+ throw new TypeError(); // TODO message
+ }
+
+ while (i < length) {
+ if (i in self) {
+ // Invoke the callback function with call, passing arguments:
+ // context, property value, property key, thisArg object context
+ fun.call(thisp, self[i], i, self);
+ }
+ i++;
+ }
+ };
+}
+
+// ES5 15.4.4.19
+// http://es5.github.com/#x15.4.4.19
+// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/map
+if (!Array.prototype.map) {
+ Array.prototype.map = function map(fun /*, thisp*/) {
+ var self = toObject(this),
+ length = self.length >>> 0,
+ result = Array(length),
+ thisp = arguments[1];
+
+ // If no callback function or if callback is not a callable function
+ if (toString(fun) != "[object Function]") {
+ throw new TypeError(); // TODO message
+ }
+
+ for (var i = 0; i < length; i++) {
+ if (i in self)
+ result[i] = fun.call(thisp, self[i], i, self);
+ }
+ return result;
+ };
+}
+
+// ES5 15.4.4.20
+// http://es5.github.com/#x15.4.4.20
+// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/filter
+if (!Array.prototype.filter) {
+ Array.prototype.filter = function filter(fun /*, thisp */) {
+ var self = toObject(this),
+ length = self.length >>> 0,
+ result = [],
+ thisp = arguments[1];
+
+ // If no callback function or if callback is not a callable function
+ if (toString(fun) != "[object Function]") {
+ throw new TypeError(); // TODO message
+ }
+
+ for (var i = 0; i < length; i++) {
+ if (i in self && fun.call(thisp, self[i], i, self))
+ result.push(self[i]);
+ }
+ return result;
+ };
+}
+
+// ES5 15.4.4.16
+// http://es5.github.com/#x15.4.4.16
+// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/every
+if (!Array.prototype.every) {
+ Array.prototype.every = function every(fun /*, thisp */) {
+ var self = toObject(this),
+ length = self.length >>> 0,
+ thisp = arguments[1];
+
+ // If no callback function or if callback is not a callable function
+ if (toString(fun) != "[object Function]") {
+ throw new TypeError(); // TODO message
+ }
+
+ for (var i = 0; i < length; i++) {
+ if (i in self && !fun.call(thisp, self[i], i, self))
+ return false;
+ }
+ return true;
+ };
+}
+
+// ES5 15.4.4.17
+// http://es5.github.com/#x15.4.4.17
+// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/some
+if (!Array.prototype.some) {
+ Array.prototype.some = function some(fun /*, thisp */) {
+ var self = toObject(this),
+ length = self.length >>> 0,
+ thisp = arguments[1];
+
+ // If no callback function or if callback is not a callable function
+ if (toString(fun) != "[object Function]") {
+ throw new TypeError(); // TODO message
+ }
+
+ for (var i = 0; i < length; i++) {
+ if (i in self && fun.call(thisp, self[i], i, self))
+ return true;
+ }
+ return false;
+ };
+}
+
+// ES5 15.4.4.21
+// http://es5.github.com/#x15.4.4.21
+// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/reduce
+if (!Array.prototype.reduce) {
+ Array.prototype.reduce = function reduce(fun /*, initial*/) {
+ var self = toObject(this),
+ length = self.length >>> 0;
+
+ // If no callback function or if callback is not a callable function
+ if (toString(fun) != "[object Function]") {
+ throw new TypeError(); // TODO message
+ }
+
+ // no value to return if no initial value and an empty array
+ if (!length && arguments.length == 1)
+ throw new TypeError(); // TODO message
+
+ var i = 0;
+ var result;
+ if (arguments.length >= 2) {
+ result = arguments[1];
+ } else {
+ do {
+ if (i in self) {
+ result = self[i++];
+ break;
+ }
+
+ // if array contains no values, no initial value to return
+ if (++i >= length)
+ throw new TypeError(); // TODO message
+ } while (true);
+ }
+
+ for (; i < length; i++) {
+ if (i in self)
+ result = fun.call(void 0, result, self[i], i, self);
+ }
+
+ return result;
+ };
+}
+
+// ES5 15.4.4.22
+// http://es5.github.com/#x15.4.4.22
+// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/reduceRight
+if (!Array.prototype.reduceRight) {
+ Array.prototype.reduceRight = function reduceRight(fun /*, initial*/) {
+ var self = toObject(this),
+ length = self.length >>> 0;
+
+ // If no callback function or if callback is not a callable function
+ if (toString(fun) != "[object Function]") {
+ throw new TypeError(); // TODO message
+ }
+
+ // no value to return if no initial value, empty array
+ if (!length && arguments.length == 1)
+ throw new TypeError(); // TODO message
+
+ var result, i = length - 1;
+ if (arguments.length >= 2) {
+ result = arguments[1];
+ } else {
+ do {
+ if (i in self) {
+ result = self[i--];
+ break;
+ }
+
+ // if array contains no values, no initial value to return
+ if (--i < 0)
+ throw new TypeError(); // TODO message
+ } while (true);
+ }
+
+ do {
+ if (i in this)
+ result = fun.call(void 0, result, self[i], i, self);
+ } while (i--);
+
+ return result;
+ };
+}
+
+// ES5 15.4.4.14
+// http://es5.github.com/#x15.4.4.14
+// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf
+if (!Array.prototype.indexOf) {
+ Array.prototype.indexOf = function indexOf(sought /*, fromIndex */ ) {
+ var self = toObject(this),
+ length = self.length >>> 0;
+
+ if (!length)
+ return -1;
+
+ var i = 0;
+ if (arguments.length > 1)
+ i = toInteger(arguments[1]);
+
+ // handle negative indices
+ i = i >= 0 ? i : Math.max(0, length + i);
+ for (; i < length; i++) {
+ if (i in self && self[i] === sought) {
+ return i;
+ }
+ }
+ return -1;
+ };
+}
+
+// ES5 15.4.4.15
+// http://es5.github.com/#x15.4.4.15
+// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/lastIndexOf
+if (!Array.prototype.lastIndexOf) {
+ Array.prototype.lastIndexOf = function lastIndexOf(sought /*, fromIndex */) {
+ var self = toObject(this),
+ length = self.length >>> 0;
+
+ if (!length)
+ return -1;
+ var i = length - 1;
+ if (arguments.length > 1)
+ i = Math.min(i, toInteger(arguments[1]));
+ // handle negative indices
+ i = i >= 0 ? i : length - Math.abs(i);
+ for (; i >= 0; i--) {
+ if (i in self && sought === self[i])
+ return i;
+ }
+ return -1;
+ };
+}
+
+//
+// Object
+// ======
+//
+
+// ES5 15.2.3.2
+// http://es5.github.com/#x15.2.3.2
+if (!Object.getPrototypeOf) {
+ // https://github.com/kriskowal/es5-shim/issues#issue/2
+ // http://ejohn.org/blog/objectgetprototypeof/
+ // recommended by fschaefer on github
+ Object.getPrototypeOf = function getPrototypeOf(object) {
+ return object.__proto__ || (
+ object.constructor ?
+ object.constructor.prototype :
+ prototypeOfObject
+ );
+ };
+}
+
+// ES5 15.2.3.3
+// http://es5.github.com/#x15.2.3.3
+if (!Object.getOwnPropertyDescriptor) {
+ var ERR_NON_OBJECT = "Object.getOwnPropertyDescriptor called on a " +
+ "non-object: ";
+ Object.getOwnPropertyDescriptor = function getOwnPropertyDescriptor(object, property) {
+ if ((typeof object != "object" && typeof object != "function") || object === null)
+ throw new TypeError(ERR_NON_OBJECT + object);
+ // If object does not owns property return undefined immediately.
+ if (!owns(object, property))
+ return;
+
+ var descriptor, getter, setter;
+
+ // If object has a property then it's for sure both `enumerable` and
+ // `configurable`.
+ descriptor = { enumerable: true, configurable: true };
+
+ // If JS engine supports accessor properties then property may be a
+ // getter or setter.
+ if (supportsAccessors) {
+ // Unfortunately `__lookupGetter__` will return a getter even
+ // if object has own non getter property along with a same named
+ // inherited getter. To avoid misbehavior we temporary remove
+ // `__proto__` so that `__lookupGetter__` will return getter only
+ // if it's owned by an object.
+ var prototype = object.__proto__;
+ object.__proto__ = prototypeOfObject;
+
+ var getter = lookupGetter(object, property);
+ var setter = lookupSetter(object, property);
+
+ // Once we have getter and setter we can put values back.
+ object.__proto__ = prototype;
+
+ if (getter || setter) {
+ if (getter) descriptor.get = getter;
+ if (setter) descriptor.set = setter;
+
+ // If it was accessor property we're done and return here
+ // in order to avoid adding `value` to the descriptor.
+ return descriptor;
+ }
+ }
+
+ // If we got this far we know that object has an own property that is
+ // not an accessor so we set it as a value and return descriptor.
+ descriptor.value = object[property];
+ return descriptor;
+ };
+}
+
+// ES5 15.2.3.4
+// http://es5.github.com/#x15.2.3.4
+if (!Object.getOwnPropertyNames) {
+ Object.getOwnPropertyNames = function getOwnPropertyNames(object) {
+ return Object.keys(object);
+ };
+}
+
+// ES5 15.2.3.5
+// http://es5.github.com/#x15.2.3.5
+if (!Object.create) {
+ Object.create = function create(prototype, properties) {
+ var object;
+ if (prototype === null) {
+ object = { "__proto__": null };
+ } else {
+ if (typeof prototype != "object")
+ throw new TypeError("typeof prototype["+(typeof prototype)+"] != 'object'");
+ var Type = function () {};
+ Type.prototype = prototype;
+ object = new Type();
+ // IE has no built-in implementation of `Object.getPrototypeOf`
+ // neither `__proto__`, but this manually setting `__proto__` will
+ // guarantee that `Object.getPrototypeOf` will work as expected with
+ // objects created using `Object.create`
+ object.__proto__ = prototype;
+ }
+ if (properties !== void 0)
+ Object.defineProperties(object, properties);
+ return object;
+ };
+}
+
+// ES5 15.2.3.6
+// http://es5.github.com/#x15.2.3.6
+
+// Patch for WebKit and IE8 standard mode
+// Designed by hax
+// related issue: https://github.com/kriskowal/es5-shim/issues#issue/5
+// IE8 Reference:
+// http://msdn.microsoft.com/en-us/library/dd282900.aspx
+// http://msdn.microsoft.com/en-us/library/dd229916.aspx
+// WebKit Bugs:
+// https://bugs.webkit.org/show_bug.cgi?id=36423
+
+function doesDefinePropertyWork(object) {
+ try {
+ Object.defineProperty(object, "sentinel", {});
+ return "sentinel" in object;
+ } catch (exception) {
+ // returns falsy
+ }
+}
+
+// check whether defineProperty works if it's given. Otherwise,
+// shim partially.
+if (Object.defineProperty) {
+ var definePropertyWorksOnObject = doesDefinePropertyWork({});
+ var definePropertyWorksOnDom = typeof document == "undefined" ||
+ doesDefinePropertyWork(document.createElement("div"));
+ if (!definePropertyWorksOnObject || !definePropertyWorksOnDom) {
+ var definePropertyFallback = Object.defineProperty;
+ }
+}
+
+if (!Object.defineProperty || definePropertyFallback) {
+ var ERR_NON_OBJECT_DESCRIPTOR = "Property description must be an object: ";
+ var ERR_NON_OBJECT_TARGET = "Object.defineProperty called on non-object: "
+ var ERR_ACCESSORS_NOT_SUPPORTED = "getters & setters can not be defined " +
+ "on this javascript engine";
+
+ Object.defineProperty = function defineProperty(object, property, descriptor) {
+ if ((typeof object != "object" && typeof object != "function") || object === null)
+ throw new TypeError(ERR_NON_OBJECT_TARGET + object);
+ if ((typeof descriptor != "object" && typeof descriptor != "function") || descriptor === null)
+ throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR + descriptor);
+
+ // make a valiant attempt to use the real defineProperty
+ // for I8's DOM elements.
+ if (definePropertyFallback) {
+ try {
+ return definePropertyFallback.call(Object, object, property, descriptor);
+ } catch (exception) {
+ // try the shim if the real one doesn't work
+ }
+ }
+
+ // If it's a data property.
+ if (owns(descriptor, "value")) {
+ // fail silently if "writable", "enumerable", or "configurable"
+ // are requested but not supported
+ /*
+ // alternate approach:
+ if ( // can't implement these features; allow false but not true
+ !(owns(descriptor, "writable") ? descriptor.writable : true) ||
+ !(owns(descriptor, "enumerable") ? descriptor.enumerable : true) ||
+ !(owns(descriptor, "configurable") ? descriptor.configurable : true)
+ )
+ throw new RangeError(
+ "This implementation of Object.defineProperty does not " +
+ "support configurable, enumerable, or writable."
+ );
+ */
+
+ if (supportsAccessors && (lookupGetter(object, property) ||
+ lookupSetter(object, property)))
+ {
+ // As accessors are supported only on engines implementing
+ // `__proto__` we can safely override `__proto__` while defining
+ // a property to make sure that we don't hit an inherited
+ // accessor.
+ var prototype = object.__proto__;
+ object.__proto__ = prototypeOfObject;
+ // Deleting a property anyway since getter / setter may be
+ // defined on object itself.
+ delete object[property];
+ object[property] = descriptor.value;
+ // Setting original `__proto__` back now.
+ object.__proto__ = prototype;
+ } else {
+ object[property] = descriptor.value;
+ }
+ } else {
+ if (!supportsAccessors)
+ throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);
+ // If we got that far then getters and setters can be defined !!
+ if (owns(descriptor, "get"))
+ defineGetter(object, property, descriptor.get);
+ if (owns(descriptor, "set"))
+ defineSetter(object, property, descriptor.set);
+ }
+
+ return object;
+ };
+}
+
+// ES5 15.2.3.7
+// http://es5.github.com/#x15.2.3.7
+if (!Object.defineProperties) {
+ Object.defineProperties = function defineProperties(object, properties) {
+ for (var property in properties) {
+ if (owns(properties, property))
+ Object.defineProperty(object, property, properties[property]);
+ }
+ return object;
+ };
+}
+
+// ES5 15.2.3.8
+// http://es5.github.com/#x15.2.3.8
+if (!Object.seal) {
+ Object.seal = function seal(object) {
+ // this is misleading and breaks feature-detection, but
+ // allows "securable" code to "gracefully" degrade to working
+ // but insecure code.
+ return object;
+ };
+}
+
+// ES5 15.2.3.9
+// http://es5.github.com/#x15.2.3.9
+if (!Object.freeze) {
+ Object.freeze = function freeze(object) {
+ // this is misleading and breaks feature-detection, but
+ // allows "securable" code to "gracefully" degrade to working
+ // but insecure code.
+ return object;
+ };
+}
+
+// detect a Rhino bug and patch it
+try {
+ Object.freeze(function () {});
+} catch (exception) {
+ Object.freeze = (function freeze(freezeObject) {
+ return function freeze(object) {
+ if (typeof object == "function") {
+ return object;
+ } else {
+ return freezeObject(object);
+ }
+ };
+ })(Object.freeze);
+}
+
+// ES5 15.2.3.10
+// http://es5.github.com/#x15.2.3.10
+if (!Object.preventExtensions) {
+ Object.preventExtensions = function preventExtensions(object) {
+ // this is misleading and breaks feature-detection, but
+ // allows "securable" code to "gracefully" degrade to working
+ // but insecure code.
+ return object;
+ };
+}
+
+// ES5 15.2.3.11
+// http://es5.github.com/#x15.2.3.11
+if (!Object.isSealed) {
+ Object.isSealed = function isSealed(object) {
+ return false;
+ };
+}
+
+// ES5 15.2.3.12
+// http://es5.github.com/#x15.2.3.12
+if (!Object.isFrozen) {
+ Object.isFrozen = function isFrozen(object) {
+ return false;
+ };
+}
+
+// ES5 15.2.3.13
+// http://es5.github.com/#x15.2.3.13
+if (!Object.isExtensible) {
+ Object.isExtensible = function isExtensible(object) {
+ // 1. If Type(O) is not Object throw a TypeError exception.
+ if (Object(object) === object) {
+ throw new TypeError(); // TODO message
+ }
+ // 2. Return the Boolean value of the [[Extensible]] internal property of O.
+ var name = '';
+ while (owns(object, name)) {
+ name += '?';
+ }
+ object[name] = true;
+ var returnValue = owns(object, name);
+ delete object[name];
+ return returnValue;
+ };
+}
+
+// ES5 15.2.3.14
+// http://es5.github.com/#x15.2.3.14
+if (!Object.keys) {
+ // http://whattheheadsaid.com/2010/10/a-safer-object-keys-compatibility-implementation
+ var hasDontEnumBug = true,
+ dontEnums = [
+ "toString",
+ "toLocaleString",
+ "valueOf",
+ "hasOwnProperty",
+ "isPrototypeOf",
+ "propertyIsEnumerable",
+ "constructor"
+ ],
+ dontEnumsLength = dontEnums.length;
+
+ for (var key in {"toString": null})
+ hasDontEnumBug = false;
+
+ Object.keys = function keys(object) {
+
+ if ((typeof object != "object" && typeof object != "function") || object === null)
+ throw new TypeError("Object.keys called on a non-object");
+
+ var keys = [];
+ for (var name in object) {
+ if (owns(object, name)) {
+ keys.push(name);
+ }
+ }
+
+ if (hasDontEnumBug) {
+ for (var i = 0, ii = dontEnumsLength; i < ii; i++) {
+ var dontEnum = dontEnums[i];
+ if (owns(object, dontEnum)) {
+ keys.push(dontEnum);
+ }
+ }
+ }
+
+ return keys;
+ };
+
+}
+
+//
+// Date
+// ====
+//
+
+// ES5 15.9.5.43
+// http://es5.github.com/#x15.9.5.43
+// This function returns a String value represent the instance in time
+// represented by this Date object. The format of the String is the Date Time
+// string format defined in 15.9.1.15. All fields are present in the String.
+// The time zone is always UTC, denoted by the suffix Z. If the time value of
+// this object is not a finite Number a RangeError exception is thrown.
+if (!Date.prototype.toISOString || (new Date(-62198755200000).toISOString().indexOf('-000001') === -1)) {
+ Date.prototype.toISOString = function toISOString() {
+ var result, length, value, year;
+ if (!isFinite(this))
+ throw new RangeError;
+
+ // the date time string format is specified in 15.9.1.15.
+ result = [this.getUTCMonth() + 1, this.getUTCDate(),
+ this.getUTCHours(), this.getUTCMinutes(), this.getUTCSeconds()];
+ year = this.getUTCFullYear();
+ year = (year < 0 ? '-' : (year > 9999 ? '+' : '')) + ('00000' + Math.abs(year)).slice(0 <= year && year <= 9999 ? -4 : -6);
+
+ length = result.length;
+ while (length--) {
+ value = result[length];
+ // pad months, days, hours, minutes, and seconds to have two digits.
+ if (value < 10)
+ result[length] = "0" + value;
+ }
+ // pad milliseconds to have three digits.
+ return year + "-" + result.slice(0, 2).join("-") + "T" + result.slice(2).join(":") + "." +
+ ("000" + this.getUTCMilliseconds()).slice(-3) + "Z";
+ }
+}
+
+// ES5 15.9.4.4
+// http://es5.github.com/#x15.9.4.4
+if (!Date.now) {
+ Date.now = function now() {
+ return new Date().getTime();
+ };
+}
+
+// ES5 15.9.5.44
+// http://es5.github.com/#x15.9.5.44
+// This function provides a String representation of a Date object for use by
+// JSON.stringify (15.12.3).
+if (!Date.prototype.toJSON) {
+ Date.prototype.toJSON = function toJSON(key) {
+ // When the toJSON method is called with argument key, the following
+ // steps are taken:
+
+ // 1. Let O be the result of calling ToObject, giving it the this
+ // value as its argument.
+ // 2. Let tv be ToPrimitive(O, hint Number).
+ // 3. If tv is a Number and is not finite, return null.
+ // XXX
+ // 4. Let toISO be the result of calling the [[Get]] internal method of
+ // O with argument "toISOString".
+ // 5. If IsCallable(toISO) is false, throw a TypeError exception.
+ if (typeof this.toISOString != "function")
+ throw new TypeError(); // TODO message
+ // 6. Return the result of calling the [[Call]] internal method of
+ // toISO with O as the this value and an empty argument list.
+ return this.toISOString();
+
+ // NOTE 1 The argument is ignored.
+
+ // NOTE 2 The toJSON function is intentionally generic; it does not
+ // require that its this value be a Date object. Therefore, it can be
+ // transferred to other kinds of objects for use as a method. However,
+ // it does require that any such object have a toISOString method. An
+ // object is free to use the argument key to filter its
+ // stringification.
+ };
+}
+
+// ES5 15.9.4.2
+// http://es5.github.com/#x15.9.4.2
+// based on work shared by Daniel Friesen (dantman)
+// http://gist.github.com/303249
+if (Date.parse("+275760-09-13T00:00:00.000Z") !== 8.64e15) {
+ // XXX global assignment won't work in embeddings that use
+ // an alternate object for the context.
+ Date = (function(NativeDate) {
+
+ // Date.length === 7
+ var Date = function Date(Y, M, D, h, m, s, ms) {
+ var length = arguments.length;
+ if (this instanceof NativeDate) {
+ var date = length == 1 && String(Y) === Y ? // isString(Y)
+ // We explicitly pass it through parse:
+ new NativeDate(Date.parse(Y)) :
+ // We have to manually make calls depending on argument
+ // length here
+ length >= 7 ? new NativeDate(Y, M, D, h, m, s, ms) :
+ length >= 6 ? new NativeDate(Y, M, D, h, m, s) :
+ length >= 5 ? new NativeDate(Y, M, D, h, m) :
+ length >= 4 ? new NativeDate(Y, M, D, h) :
+ length >= 3 ? new NativeDate(Y, M, D) :
+ length >= 2 ? new NativeDate(Y, M) :
+ length >= 1 ? new NativeDate(Y) :
+ new NativeDate();
+ // Prevent mixups with unfixed Date object
+ date.constructor = Date;
+ return date;
+ }
+ return NativeDate.apply(this, arguments);
+ };
+
+ // 15.9.1.15 Date Time String Format.
+ var isoDateExpression = new RegExp("^" +
+ "(\\d{4}|[\+\-]\\d{6})" + // four-digit year capture or sign + 6-digit extended year
+ "(?:-(\\d{2})" + // optional month capture
+ "(?:-(\\d{2})" + // optional day capture
+ "(?:" + // capture hours:minutes:seconds.milliseconds
+ "T(\\d{2})" + // hours capture
+ ":(\\d{2})" + // minutes capture
+ "(?:" + // optional :seconds.milliseconds
+ ":(\\d{2})" + // seconds capture
+ "(?:\\.(\\d{3}))?" + // milliseconds capture
+ ")?" +
+ "(?:" + // capture UTC offset component
+ "Z|" + // UTC capture
+ "(?:" + // offset specifier +/-hours:minutes
+ "([-+])" + // sign capture
+ "(\\d{2})" + // hours offset capture
+ ":(\\d{2})" + // minutes offset capture
+ ")" +
+ ")?)?)?)?" +
+ "$");
+
+ // Copy any custom methods a 3rd party library may have added
+ for (var key in NativeDate)
+ Date[key] = NativeDate[key];
+
+ // Copy "native" methods explicitly; they may be non-enumerable
+ Date.now = NativeDate.now;
+ Date.UTC = NativeDate.UTC;
+ Date.prototype = NativeDate.prototype;
+ Date.prototype.constructor = Date;
+
+ // Upgrade Date.parse to handle simplified ISO 8601 strings
+ Date.parse = function parse(string) {
+ var match = isoDateExpression.exec(string);
+ if (match) {
+ match.shift(); // kill match[0], the full match
+ // parse months, days, hours, minutes, seconds, and milliseconds
+ for (var i = 1; i < 7; i++) {
+ // provide default values if necessary
+ match[i] = +(match[i] || (i < 3 ? 1 : 0));
+ // match[1] is the month. Months are 0-11 in JavaScript
+ // `Date` objects, but 1-12 in ISO notation, so we
+ // decrement.
+ if (i == 1)
+ match[i]--;
+ }
+
+ // parse the UTC offset component
+ var minuteOffset = +match.pop(), hourOffset = +match.pop(), sign = match.pop();
+
+ // compute the explicit time zone offset if specified
+ var offset = 0;
+ if (sign) {
+ // detect invalid offsets and return early
+ if (hourOffset > 23 || minuteOffset > 59)
+ return NaN;
+
+ // express the provided time zone offset in minutes. The offset is
+ // negative for time zones west of UTC; positive otherwise.
+ offset = (hourOffset * 60 + minuteOffset) * 6e4 * (sign == "+" ? -1 : 1);
+ }
+
+ // Date.UTC for years between 0 and 99 converts year to 1900 + year
+ // The Gregorian calendar has a 400-year cycle, so
+ // to Date.UTC(year + 400, .... ) - 12622780800000 == Date.UTC(year, ...),
+ // where 12622780800000 - number of milliseconds in Gregorian calendar 400 years
+ var year = +match[0];
+ if (0 <= year && year <= 99) {
+ match[0] = year + 400;
+ return NativeDate.UTC.apply(this, match) + offset - 12622780800000;
+ }
+
+ // compute a new UTC date value, accounting for the optional offset
+ return NativeDate.UTC.apply(this, match) + offset;
+ }
+ return NativeDate.parse.apply(this, arguments);
+ };
+
+ return Date;
+ })(Date);
+}
+
+//
+// String
+// ======
+//
+
+// ES5 15.5.4.20
+// http://es5.github.com/#x15.5.4.20
+var ws = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003" +
+ "\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028" +
+ "\u2029\uFEFF";
+if (!String.prototype.trim || ws.trim()) {
+ // http://blog.stevenlevithan.com/archives/faster-trim-javascript
+ // http://perfectionkills.com/whitespace-deviations/
+ ws = "[" + ws + "]";
+ var trimBeginRegexp = new RegExp("^" + ws + ws + "*"),
+ trimEndRegexp = new RegExp(ws + ws + "*$");
+ String.prototype.trim = function trim() {
+ return String(this).replace(trimBeginRegexp, "").replace(trimEndRegexp, "");
+ };
+}
+
+//
+// Util
+// ======
+//
+
+// ES5 9.4
+// http://es5.github.com/#x9.4
+// http://jsperf.com/to-integer
+var toInteger = function (n) {
+ n = +n;
+ if (n !== n) // isNaN
+ n = 0;
+ else if (n !== 0 && n !== (1/0) && n !== -(1/0))
+ n = (n > 0 || -1) * Math.floor(Math.abs(n));
+ return n;
+};
+
+var prepareString = "a"[0] != "a",
+ // ES5 9.9
+ // http://es5.github.com/#x9.9
+ toObject = function (o) {
+ if (o == null) { // this matches both null and undefined
+ throw new TypeError(); // TODO message
+ }
+ // If the implementation doesn't support by-index access of
+ // string characters (ex. IE < 7), split the string
+ if (prepareString && typeof o == "string" && o) {
+ return o.split("");
+ }
+ return Object(o);
+ };
+});/* vim:ts=4:sts=4:sw=4:
+ * ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Ajax.org Code Editor (ACE).
+ *
+ * The Initial Developer of the Original Code is
+ * Ajax.org B.V.
+ * Portions created by the Initial Developer are Copyright (C) 2010
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Fabian Jakobs
+ * Irakli Gozalishvili (http://jeditoolkit.com)
+ * Mike de Boer
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+define('ace/lib/event_emitter', ['require', 'exports', 'module' ], function(require, exports, module) {
+"use strict";
+
+var EventEmitter = {};
+
+EventEmitter._emit =
+EventEmitter._dispatchEvent = function(eventName, e) {
+ this._eventRegistry = this._eventRegistry || {};
+ this._defaultHandlers = this._defaultHandlers || {};
+
+ var listeners = this._eventRegistry[eventName] || [];
+ var defaultHandler = this._defaultHandlers[eventName];
+ if (!listeners.length && !defaultHandler)
+ return;
+
+ e = e || {};
+ e.type = eventName;
+
+ if (!e.stopPropagation) {
+ e.stopPropagation = function() {
+ this.propagationStopped = true;
+ };
+ }
+
+ if (!e.preventDefault) {
+ e.preventDefault = function() {
+ this.defaultPrevented = true;
+ };
+ }
+
+ for (var i=0; i
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+define('ace/lib/oop', ['require', 'exports', 'module' ], function(require, exports, module) {
+"use strict";
+
+exports.inherits = (function() {
+ var tempCtor = function() {};
+ return function(ctor, superCtor) {
+ tempCtor.prototype = superCtor.prototype;
+ ctor.super_ = superCtor.prototype;
+ ctor.prototype = new tempCtor();
+ ctor.prototype.constructor = ctor;
+ };
+}());
+
+exports.mixin = function(obj, mixin) {
+ for (var key in mixin) {
+ obj[key] = mixin[key];
+ }
+};
+
+exports.implement = function(proto, mixin) {
+ exports.mixin(proto, mixin);
+};
+
+});
+/* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Ajax.org Code Editor (ACE).
+ *
+ * The Initial Developer of the Original Code is
+ * Ajax.org B.V.
+ * Portions created by the Initial Developer are Copyright (C) 2010
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * William Candillon
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+define('ace/mode/xquery_worker', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/worker/mirror', 'ace/mode/xquery/xquery'], function(require, exports, module) {
+"use strict";
+
+var oop = require("../lib/oop");
+var Mirror = require("../worker/mirror").Mirror;
+var xquery = require("../mode/xquery/xquery");
+
+window.addEventListener = function() {};
+
+
+var XQueryWorker = exports.XQueryWorker = function(sender) {
+ Mirror.call(this, sender);
+ this.setTimeout(200);
+};
+
+oop.inherits(XQueryWorker, Mirror);
+
+(function() {
+
+ this.onUpdate = function() {
+ var value = this.doc.getValue();
+
+ try {
+ xquery.parse(value);
+ } catch(e) {
+ console.log(e);
+ var m = e.match(/line (\d+):\-?(\d+) (.*)/);
+
+ if (m) {
+ var line = parseInt(m[1]) - 1;
+ line = line <= 0 ? 0 : line;
+ var col = parseInt(m[2]);
+ console.log("Row: " + line);
+ console.log("Col: " + col);
+ this.sender.emit("error", {
+ row: line,
+ column: col,
+ text: m[3],
+ type: "error"
+ });
+ return;
+ }
+ /*
+ if (e instanceof SyntaxError) {
+ var m = e.message.match(/ on line (\d+)/);
+ if (m) {
+ this.sender.emit("error", {
+ row: parseInt(m[1]) - 1,
+ column: null,
+ text: e.message.replace(m[0], ""),
+ type: "error"
+ });
+ }
+ }
+ */
+ return;
+ }
+ this.sender.emit("ok");
+ };
+
+}).call(XQueryWorker.prototype);
+
+});
+define('ace/worker/mirror', ['require', 'exports', 'module' , 'ace/document', 'ace/lib/lang'], function(require, exports, module) {
+"use strict";
+
+var Document = require("../document").Document;
+var lang = require("../lib/lang");
+
+var Mirror = exports.Mirror = function(sender) {
+ this.sender = sender;
+ var doc = this.doc = new Document("");
+
+ var deferredUpdate = this.deferredUpdate = lang.deferredCall(this.onUpdate.bind(this));
+
+ var _self = this;
+ sender.on("change", function(e) {
+ doc.applyDeltas([e.data]);
+ deferredUpdate.schedule(_self.$timeout);
+ });
+};
+
+(function() {
+
+ this.$timeout = 500;
+
+ this.setTimeout = function(timeout) {
+ this.$timeout = timeout;
+ };
+
+ this.setValue = function(value) {
+ this.doc.setValue(value);
+ this.deferredUpdate.schedule(this.$timeout);
+ };
+
+ this.getValue = function(callbackId) {
+ this.sender.callback(this.doc.getValue(), callbackId);
+ };
+
+ this.onUpdate = function() {
+ // abstract method
+ };
+
+}).call(Mirror.prototype);
+
+});/* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Ajax.org Code Editor (ACE).
+ *
+ * The Initial Developer of the Original Code is
+ * Ajax.org B.V.
+ * Portions created by the Initial Developer are Copyright (C) 2010
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Fabian Jakobs
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+define('ace/document', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/event_emitter', 'ace/range', 'ace/anchor'], function(require, exports, module) {
+"use strict";
+
+var oop = require("./lib/oop");
+var EventEmitter = require("./lib/event_emitter").EventEmitter;
+var Range = require("./range").Range;
+var Anchor = require("./anchor").Anchor;
+
+var Document = function(text) {
+ this.$lines = [];
+
+ if (Array.isArray(text)) {
+ this.insertLines(0, text);
+ }
+ // There has to be one line at least in the document. If you pass an empty
+ // string to the insert function, nothing will happen. Workaround.
+ else if (text.length == 0) {
+ this.$lines = [""];
+ } else {
+ this.insert({row: 0, column:0}, text);
+ }
+};
+
+(function() {
+
+ oop.implement(this, EventEmitter);
+
+ this.setValue = function(text) {
+ var len = this.getLength();
+ this.remove(new Range(0, 0, len, this.getLine(len-1).length));
+ this.insert({row: 0, column:0}, text);
+ };
+
+ this.getValue = function() {
+ return this.getAllLines().join(this.getNewLineCharacter());
+ };
+
+ this.createAnchor = function(row, column) {
+ return new Anchor(this, row, column);
+ };
+
+ // check for IE split bug
+ if ("aaa".split(/a/).length == 0)
+ this.$split = function(text) {
+ return text.replace(/\r\n|\r/g, "\n").split("\n");
+ }
+ else
+ this.$split = function(text) {
+ return text.split(/\r\n|\r|\n/);
+ };
+
+
+ this.$detectNewLine = function(text) {
+ var match = text.match(/^.*?(\r\n|\r|\n)/m);
+ if (match) {
+ this.$autoNewLine = match[1];
+ } else {
+ this.$autoNewLine = "\n";
+ }
+ };
+
+ this.getNewLineCharacter = function() {
+ switch (this.$newLineMode) {
+ case "windows":
+ return "\r\n";
+
+ case "unix":
+ return "\n";
+
+ case "auto":
+ return this.$autoNewLine;
+ }
+ };
+
+ this.$autoNewLine = "\n";
+ this.$newLineMode = "auto";
+ this.setNewLineMode = function(newLineMode) {
+ if (this.$newLineMode === newLineMode)
+ return;
+
+ this.$newLineMode = newLineMode;
+ };
+
+ this.getNewLineMode = function() {
+ return this.$newLineMode;
+ };
+
+ this.isNewLine = function(text) {
+ return (text == "\r\n" || text == "\r" || text == "\n");
+ };
+
+ /**
+ * Get a verbatim copy of the given line as it is in the document
+ */
+ this.getLine = function(row) {
+ return this.$lines[row] || "";
+ };
+
+ this.getLines = function(firstRow, lastRow) {
+ return this.$lines.slice(firstRow, lastRow + 1);
+ };
+
+ /**
+ * Returns all lines in the document as string array. Warning: The caller
+ * should not modify this array!
+ */
+ this.getAllLines = function() {
+ return this.getLines(0, this.getLength());
+ };
+
+ this.getLength = function() {
+ return this.$lines.length;
+ };
+
+ this.getTextRange = function(range) {
+ if (range.start.row == range.end.row) {
+ return this.$lines[range.start.row].substring(range.start.column,
+ range.end.column);
+ }
+ else {
+ var lines = [];
+ lines.push(this.$lines[range.start.row].substring(range.start.column));
+ lines.push.apply(lines, this.getLines(range.start.row+1, range.end.row-1));
+ lines.push(this.$lines[range.end.row].substring(0, range.end.column));
+ return lines.join(this.getNewLineCharacter());
+ }
+ };
+
+ this.$clipPosition = function(position) {
+ var length = this.getLength();
+ if (position.row >= length) {
+ position.row = Math.max(0, length - 1);
+ position.column = this.getLine(length-1).length;
+ }
+ return position;
+ };
+
+ this.insert = function(position, text) {
+ if (!text || text.length === 0)
+ return position;
+
+ position = this.$clipPosition(position);
+
+ if (this.getLength() <= 1)
+ this.$detectNewLine(text);
+
+ var lines = this.$split(text);
+ var firstLine = lines.splice(0, 1)[0];
+ var lastLine = lines.length == 0 ? null : lines.splice(lines.length - 1, 1)[0];
+
+ position = this.insertInLine(position, firstLine);
+ if (lastLine !== null) {
+ position = this.insertNewLine(position); // terminate first line
+ position = this.insertLines(position.row, lines);
+ position = this.insertInLine(position, lastLine || "");
+ }
+ return position;
+ };
+
+ this.insertLines = function(row, lines) {
+ if (lines.length == 0)
+ return {row: row, column: 0};
+
+ var args = [row, 0];
+ args.push.apply(args, lines);
+ this.$lines.splice.apply(this.$lines, args);
+
+ var range = new Range(row, 0, row + lines.length, 0);
+ var delta = {
+ action: "insertLines",
+ range: range,
+ lines: lines
+ };
+ this._emit("change", { data: delta });
+ return range.end;
+ };
+
+ this.insertNewLine = function(position) {
+ position = this.$clipPosition(position);
+ var line = this.$lines[position.row] || "";
+
+ this.$lines[position.row] = line.substring(0, position.column);
+ this.$lines.splice(position.row + 1, 0, line.substring(position.column, line.length));
+
+ var end = {
+ row : position.row + 1,
+ column : 0
+ };
+
+ var delta = {
+ action: "insertText",
+ range: Range.fromPoints(position, end),
+ text: this.getNewLineCharacter()
+ };
+ this._emit("change", { data: delta });
+
+ return end;
+ };
+
+ this.insertInLine = function(position, text) {
+ if (text.length == 0)
+ return position;
+
+ var line = this.$lines[position.row] || "";
+
+ this.$lines[position.row] = line.substring(0, position.column) + text
+ + line.substring(position.column);
+
+ var end = {
+ row : position.row,
+ column : position.column + text.length
+ };
+
+ var delta = {
+ action: "insertText",
+ range: Range.fromPoints(position, end),
+ text: text
+ };
+ this._emit("change", { data: delta });
+
+ return end;
+ };
+
+ this.remove = function(range) {
+ // clip to document
+ range.start = this.$clipPosition(range.start);
+ range.end = this.$clipPosition(range.end);
+
+ if (range.isEmpty())
+ return range.start;
+
+ var firstRow = range.start.row;
+ var lastRow = range.end.row;
+
+ if (range.isMultiLine()) {
+ var firstFullRow = range.start.column == 0 ? firstRow : firstRow + 1;
+ var lastFullRow = lastRow - 1;
+
+ if (range.end.column > 0)
+ this.removeInLine(lastRow, 0, range.end.column);
+
+ if (lastFullRow >= firstFullRow)
+ this.removeLines(firstFullRow, lastFullRow);
+
+ if (firstFullRow != firstRow) {
+ this.removeInLine(firstRow, range.start.column, this.getLine(firstRow).length);
+ this.removeNewLine(range.start.row);
+ }
+ }
+ else {
+ this.removeInLine(firstRow, range.start.column, range.end.column);
+ }
+ return range.start;
+ };
+
+ this.removeInLine = function(row, startColumn, endColumn) {
+ if (startColumn == endColumn)
+ return;
+
+ var range = new Range(row, startColumn, row, endColumn);
+ var line = this.getLine(row);
+ var removed = line.substring(startColumn, endColumn);
+ var newLine = line.substring(0, startColumn) + line.substring(endColumn, line.length);
+ this.$lines.splice(row, 1, newLine);
+
+ var delta = {
+ action: "removeText",
+ range: range,
+ text: removed
+ };
+ this._emit("change", { data: delta });
+ return range.start;
+ };
+
+ /**
+ * Removes a range of full lines
+ *
+ * @param firstRow {Integer} The first row to be removed
+ * @param lastRow {Integer} The last row to be removed
+ * @return {String[]} The removed lines
+ */
+ this.removeLines = function(firstRow, lastRow) {
+ var range = new Range(firstRow, 0, lastRow + 1, 0);
+ var removed = this.$lines.splice(firstRow, lastRow - firstRow + 1);
+
+ var delta = {
+ action: "removeLines",
+ range: range,
+ nl: this.getNewLineCharacter(),
+ lines: removed
+ };
+ this._emit("change", { data: delta });
+ return removed;
+ };
+
+ this.removeNewLine = function(row) {
+ var firstLine = this.getLine(row);
+ var secondLine = this.getLine(row+1);
+
+ var range = new Range(row, firstLine.length, row+1, 0);
+ var line = firstLine + secondLine;
+
+ this.$lines.splice(row, 2, line);
+
+ var delta = {
+ action: "removeText",
+ range: range,
+ text: this.getNewLineCharacter()
+ };
+ this._emit("change", { data: delta });
+ };
+
+ this.replace = function(range, text) {
+ if (text.length == 0 && range.isEmpty())
+ return range.start;
+
+ // Shortcut: If the text we want to insert is the same as it is already
+ // in the document, we don't have to replace anything.
+ if (text == this.getTextRange(range))
+ return range.end;
+
+ this.remove(range);
+ if (text) {
+ var end = this.insert(range.start, text);
+ }
+ else {
+ end = range.start;
+ }
+
+ return end;
+ };
+
+ this.applyDeltas = function(deltas) {
+ for (var i=0; i=0; i--) {
+ var delta = deltas[i];
+
+ var range = Range.fromPoints(delta.range.start, delta.range.end);
+
+ if (delta.action == "insertLines")
+ this.removeLines(range.start.row, range.end.row - 1);
+ else if (delta.action == "insertText")
+ this.remove(range);
+ else if (delta.action == "removeLines")
+ this.insertLines(range.start.row, delta.lines);
+ else if (delta.action == "removeText")
+ this.insert(range.start, delta.text);
+ }
+ };
+
+}).call(Document.prototype);
+
+exports.Document = Document;
+});
+/* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Ajax.org Code Editor (ACE).
+ *
+ * The Initial Developer of the Original Code is
+ * Ajax.org B.V.
+ * Portions created by the Initial Developer are Copyright (C) 2010
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Fabian Jakobs
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+define('ace/range', ['require', 'exports', 'module' ], function(require, exports, module) {
+"use strict";
+
+var Range = function(startRow, startColumn, endRow, endColumn) {
+ this.start = {
+ row: startRow,
+ column: startColumn
+ };
+
+ this.end = {
+ row: endRow,
+ column: endColumn
+ };
+};
+
+(function() {
+ this.isEequal = function(range) {
+ return this.start.row == range.start.row &&
+ this.end.row == range.end.row &&
+ this.start.column == range.start.column &&
+ this.end.column == range.end.column
+ };
+
+ this.toString = function() {
+ return ("Range: [" + this.start.row + "/" + this.start.column +
+ "] -> [" + this.end.row + "/" + this.end.column + "]");
+ };
+
+ this.contains = function(row, column) {
+ return this.compare(row, column) == 0;
+ };
+
+ /**
+ * Compares this range (A) with another range (B), where B is the passed in
+ * range.
+ *
+ * Return values:
+ * -2: (B) is infront of (A) and doesn't intersect with (A)
+ * -1: (B) begins before (A) but ends inside of (A)
+ * 0: (B) is completly inside of (A) OR (A) is complety inside of (B)
+ * +1: (B) begins inside of (A) but ends outside of (A)
+ * +2: (B) is after (A) and doesn't intersect with (A)
+ *
+ * 42: FTW state: (B) ends in (A) but starts outside of (A)
+ */
+ this.compareRange = function(range) {
+ var cmp,
+ end = range.end,
+ start = range.start;
+
+ cmp = this.compare(end.row, end.column);
+ if (cmp == 1) {
+ cmp = this.compare(start.row, start.column);
+ if (cmp == 1) {
+ return 2;
+ } else if (cmp == 0) {
+ return 1;
+ } else {
+ return 0;
+ }
+ } else if (cmp == -1) {
+ return -2;
+ } else {
+ cmp = this.compare(start.row, start.column);
+ if (cmp == -1) {
+ return -1;
+ } else if (cmp == 1) {
+ return 42;
+ } else {
+ return 0;
+ }
+ }
+ }
+
+ this.comparePoint = function(p) {
+ return this.compare(p.row, p.column);
+ }
+
+ this.containsRange = function(range) {
+ return this.comparePoint(range.start) == 0 && this.comparePoint(range.end) == 0;
+ }
+
+ this.isEnd = function(row, column) {
+ return this.end.row == row && this.end.column == column;
+ }
+
+ this.isStart = function(row, column) {
+ return this.start.row == row && this.start.column == column;
+ }
+
+ this.setStart = function(row, column) {
+ if (typeof row == "object") {
+ this.start.column = row.column;
+ this.start.row = row.row;
+ } else {
+ this.start.row = row;
+ this.start.column = column;
+ }
+ }
+
+ this.setEnd = function(row, column) {
+ if (typeof row == "object") {
+ this.end.column = row.column;
+ this.end.row = row.row;
+ } else {
+ this.end.row = row;
+ this.end.column = column;
+ }
+ }
+
+ this.inside = function(row, column) {
+ if (this.compare(row, column) == 0) {
+ if (this.isEnd(row, column) || this.isStart(row, column)) {
+ return false;
+ } else {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ this.insideStart = function(row, column) {
+ if (this.compare(row, column) == 0) {
+ if (this.isEnd(row, column)) {
+ return false;
+ } else {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ this.insideEnd = function(row, column) {
+ if (this.compare(row, column) == 0) {
+ if (this.isStart(row, column)) {
+ return false;
+ } else {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ this.compare = function(row, column) {
+ if (!this.isMultiLine()) {
+ if (row === this.start.row) {
+ return column < this.start.column ? -1 : (column > this.end.column ? 1 : 0);
+ };
+ }
+
+ if (row < this.start.row)
+ return -1;
+
+ if (row > this.end.row)
+ return 1;
+
+ if (this.start.row === row)
+ return column >= this.start.column ? 0 : -1;
+
+ if (this.end.row === row)
+ return column <= this.end.column ? 0 : 1;
+
+ return 0;
+ };
+
+ /**
+ * Like .compare(), but if isStart is true, return -1;
+ */
+ this.compareStart = function(row, column) {
+ if (this.start.row == row && this.start.column == column) {
+ return -1;
+ } else {
+ return this.compare(row, column);
+ }
+ }
+
+ /**
+ * Like .compare(), but if isEnd is true, return 1;
+ */
+ this.compareEnd = function(row, column) {
+ if (this.end.row == row && this.end.column == column) {
+ return 1;
+ } else {
+ return this.compare(row, column);
+ }
+ }
+
+ this.compareInside = function(row, column) {
+ if (this.end.row == row && this.end.column == column) {
+ return 1;
+ } else if (this.start.row == row && this.start.column == column) {
+ return -1;
+ } else {
+ return this.compare(row, column);
+ }
+ }
+
+ this.clipRows = function(firstRow, lastRow) {
+ if (this.end.row > lastRow) {
+ var end = {
+ row: lastRow+1,
+ column: 0
+ };
+ }
+
+ if (this.start.row > lastRow) {
+ var start = {
+ row: lastRow+1,
+ column: 0
+ };
+ }
+
+ if (this.start.row < firstRow) {
+ var start = {
+ row: firstRow,
+ column: 0
+ };
+ }
+
+ if (this.end.row < firstRow) {
+ var end = {
+ row: firstRow,
+ column: 0
+ };
+ }
+ return Range.fromPoints(start || this.start, end || this.end);
+ };
+
+ this.extend = function(row, column) {
+ var cmp = this.compare(row, column);
+
+ if (cmp == 0)
+ return this;
+ else if (cmp == -1)
+ var start = {row: row, column: column};
+ else
+ var end = {row: row, column: column};
+
+ return Range.fromPoints(start || this.start, end || this.end);
+ };
+
+ this.isEmpty = function() {
+ return (this.start.row == this.end.row && this.start.column == this.end.column);
+ };
+
+ this.isMultiLine = function() {
+ return (this.start.row !== this.end.row);
+ };
+
+ this.clone = function() {
+ return Range.fromPoints(this.start, this.end);
+ };
+
+ this.collapseRows = function() {
+ if (this.end.column == 0)
+ return new Range(this.start.row, 0, Math.max(this.start.row, this.end.row-1), 0)
+ else
+ return new Range(this.start.row, 0, this.end.row, 0)
+ };
+
+ this.toScreenRange = function(session) {
+ var screenPosStart =
+ session.documentToScreenPosition(this.start);
+ var screenPosEnd =
+ session.documentToScreenPosition(this.end);
+
+ return new Range(
+ screenPosStart.row, screenPosStart.column,
+ screenPosEnd.row, screenPosEnd.column
+ );
+ };
+
+}).call(Range.prototype);
+
+
+Range.fromPoints = function(start, end) {
+ return new Range(start.row, start.column, end.row, end.column);
+};
+
+exports.Range = Range;
+});
+/* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Ajax.org Code Editor (ACE).
+ *
+ * The Initial Developer of the Original Code is
+ * Ajax.org B.V.
+ * Portions created by the Initial Developer are Copyright (C) 2010
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Fabian Jakobs
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+define('ace/anchor', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/event_emitter'], function(require, exports, module) {
+"use strict";
+
+var oop = require("./lib/oop");
+var EventEmitter = require("./lib/event_emitter").EventEmitter;
+
+/**
+ * An Anchor is a floating pointer in the document. Whenever text is inserted or
+ * deleted before the cursor, the position of the cursor is updated
+ */
+var Anchor = exports.Anchor = function(doc, row, column) {
+ this.document = doc;
+
+ if (typeof column == "undefined")
+ this.setPosition(row.row, row.column);
+ else
+ this.setPosition(row, column);
+
+ this.$onChange = this.onChange.bind(this);
+ doc.on("change", this.$onChange);
+};
+
+(function() {
+
+ oop.implement(this, EventEmitter);
+
+ this.getPosition = function() {
+ return this.$clipPositionToDocument(this.row, this.column);
+ };
+
+ this.getDocument = function() {
+ return this.document;
+ };
+
+ this.onChange = function(e) {
+ var delta = e.data;
+ var range = delta.range;
+
+ if (range.start.row == range.end.row && range.start.row != this.row)
+ return;
+
+ if (range.start.row > this.row)
+ return;
+
+ if (range.start.row == this.row && range.start.column > this.column)
+ return;
+
+ var row = this.row;
+ var column = this.column;
+
+ if (delta.action === "insertText") {
+ if (range.start.row === row && range.start.column <= column) {
+ if (range.start.row === range.end.row) {
+ column += range.end.column - range.start.column;
+ }
+ else {
+ column -= range.start.column;
+ row += range.end.row - range.start.row;
+ }
+ }
+ else if (range.start.row !== range.end.row && range.start.row < row) {
+ row += range.end.row - range.start.row;
+ }
+ } else if (delta.action === "insertLines") {
+ if (range.start.row <= row) {
+ row += range.end.row - range.start.row;
+ }
+ }
+ else if (delta.action == "removeText") {
+ if (range.start.row == row && range.start.column < column) {
+ if (range.end.column >= column)
+ column = range.start.column;
+ else
+ column = Math.max(0, column - (range.end.column - range.start.column));
+
+ } else if (range.start.row !== range.end.row && range.start.row < row) {
+ if (range.end.row == row) {
+ column = Math.max(0, column - range.end.column) + range.start.column;
+ }
+ row -= (range.end.row - range.start.row);
+ }
+ else if (range.end.row == row) {
+ row -= range.end.row - range.start.row;
+ column = Math.max(0, column - range.end.column) + range.start.column;
+ }
+ } else if (delta.action == "removeLines") {
+ if (range.start.row <= row) {
+ if (range.end.row <= row)
+ row -= range.end.row - range.start.row;
+ else {
+ row = range.start.row;
+ column = 0;
+ }
+ }
+ }
+
+ this.setPosition(row, column, true);
+ };
+
+ this.setPosition = function(row, column, noClip) {
+ var pos;
+ if (noClip) {
+ pos = {
+ row: row,
+ column: column
+ };
+ }
+ else {
+ pos = this.$clipPositionToDocument(row, column);
+ }
+
+ if (this.row == pos.row && this.column == pos.column)
+ return;
+
+ var old = {
+ row: this.row,
+ column: this.column
+ };
+
+ this.row = pos.row;
+ this.column = pos.column;
+ this._emit("change", {
+ old: old,
+ value: pos
+ });
+ };
+
+ this.detach = function() {
+ this.document.removeEventListener("change", this.$onChange);
+ };
+
+ this.$clipPositionToDocument = function(row, column) {
+ var pos = {};
+
+ if (row >= this.document.getLength()) {
+ pos.row = Math.max(0, this.document.getLength() - 1);
+ pos.column = this.document.getLine(pos.row).length;
+ }
+ else if (row < 0) {
+ pos.row = 0;
+ pos.column = 0;
+ }
+ else {
+ pos.row = row;
+ pos.column = Math.min(this.document.getLine(pos.row).length, Math.max(0, column));
+ }
+
+ if (column < 0)
+ pos.column = 0;
+
+ return pos;
+ };
+
+}).call(Anchor.prototype);
+
+});
+/* ***** BEGIN LICENSE BLOCK *****
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Original Code is Ajax.org Code Editor (ACE).
+ *
+ * The Initial Developer of the Original Code is
+ * Ajax.org B.V.
+ * Portions created by the Initial Developer are Copyright (C) 2010
+ * the Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ * Fabian Jakobs
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+define('ace/lib/lang', ['require', 'exports', 'module' ], function(require, exports, module) {
+"use strict";
+
+exports.stringReverse = function(string) {
+ return string.split("").reverse().join("");
+};
+
+exports.stringRepeat = function (string, count) {
+ return new Array(count + 1).join(string);
+};
+
+var trimBeginRegexp = /^\s\s*/;
+var trimEndRegexp = /\s\s*$/;
+
+exports.stringTrimLeft = function (string) {
+ return string.replace(trimBeginRegexp, '');
+};
+
+exports.stringTrimRight = function (string) {
+ return string.replace(trimEndRegexp, '');
+};
+
+exports.copyObject = function(obj) {
+ var copy = {};
+ for (var key in obj) {
+ copy[key] = obj[key];
+ }
+ return copy;
+};
+
+exports.copyArray = function(array){
+ var copy = [];
+ for (var i=0, l=array.length; i
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
+ * in which case the provisions of the GPL or the LGPL are applicable instead
+ * of those above. If you wish to allow use of your version of this file only
+ * under the terms of either the GPL or the LGPL, and not to allow others to
+ * use your version of this file under the terms of the MPL, indicate your
+ * decision by deleting the provisions above and replace them with the notice
+ * and other provisions required by the GPL or the LGPL. If you do not delete
+ * the provisions above, a recipient may use your version of this file under
+ * the terms of any one of the MPL, the GPL or the LGPL.
+ *
+ * ***** END LICENSE BLOCK ***** */
+
+define('ace/mode/xquery/xquery', ['require', 'exports', 'module' , 'ace/mode/xquery/antlr3-all', 'ace/mode/xquery/XQueryLexer', 'ace/mode/xquery/XQueryParser'], function(require, exports, module) {
+
+ var org = require("./antlr3-all").org;
+ var XQueryLexer = require("./XQueryLexer").XQueryLexer;
+ var XQueryParser = require("./XQueryParser").XQueryParser;
+
+ exports.parse = function(code) {
+ var cstream = new org.antlr.runtime.ANTLRStringStream(code);
+ var lexer = new XQueryLexer(cstream);
+ var tstream = new org.antlr.runtime.CommonTokenStream(lexer);
+ var parser = new XQueryParser(tstream);
+ parser.p_Module();
+ };
+});
+/*
+Copyright (c) 2003-2008 Terence Parr. All rights reserved.
+Code licensed under the BSD License:
+http://www.antlr.org/license.html
+
+Some parts of the ANTLR class:
+Copyright (c) 2008, Yahoo! Inc. All rights reserved.
+Code licensed under the BSD License:
+http://developer.yahoo.net/yui/license.txt
+*/
+/*
+Some portions:
+Copyright (c) 2008, Yahoo! Inc. All rights reserved.
+Code licensed under the BSD License:
+http://developer.yahoo.net/yui/license.txt
+version: 2.5.1
+*/
+define('ace/mode/xquery/antlr3-all', ['require', 'exports', 'module' ], function(require, exports, module) {
+// create org.antlr module
+if (typeof org == "undefined" || !org) {
+ var org = {};
+}
+if (typeof org.antlr == "undefined" || !org.antlr) {
+ /**
+ * The org.antlr global namespace object. If antlr is already defined, the
+ * existing antlr object will not be overwritten so that defined
+ * namespaces are preserved.
+ * @namespace org.antlr
+ */
+ org.antlr = {};
+}
+
+/**
+ * The global JavaScript object.
+ */
+org.antlr.global = (function() {
+ return this;
+}).call(null);
+
+/**
+ * Returns the namespace specified and creates it if it doesn't exist.
+ *
+ * Be careful when naming packages. Reserved words may work in some browsers
+ * and not others. For instance, the following will fail in Safari:
+ *
+ * org.antlr.namespace("really.long.nested.namespace");
+ *
+ * This fails because "long" is a future reserved word in ECMAScript
+ *
+ * @static
+ * @param {String*} arguments 1-n namespaces to create
+ * @return {Object} A reference to the last namespace object created
+ * @example
+ * org.antlr.namespace("org.antlr.property.package");
+ */
+org.antlr.namespace = function() {
+ var a=arguments, o=null, i, j, d;
+ for (i=0; i0 then it's the level of backtracking.
+ */
+ this.backtracking = 0;
+
+ /** An array[size num rules] of Map that tracks
+ * the stop token index for each rule. ruleMemo[ruleIndex] is
+ * the memoization table for ruleIndex. For key ruleStartIndex, you
+ * get back the stop token for associated rule or MEMO_RULE_FAILED.
+ *
+ * This is only used if rule memoization is on (which it is by default).
+ */
+ this.ruleMemo = null;
+
+
+ // LEXER FIELDS (must be in same state object to avoid casting
+ // constantly in generated code and Lexer object) :(
+
+
+ /** The goal of all lexer rules/methods is to create a token object.
+ * This is an instance variable as multiple rules may collaborate to
+ * create a single token. nextToken will return this object after
+ * matching lexer rule(s). If you subclass to allow multiple token
+ * emissions, then set this to the last token to be matched or
+ * something nonnull so that the auto token emit mechanism will not
+ * emit another token.
+ */
+ this.token = null;
+
+ /** What character index in the stream did the current token start at?
+ * Needed, for example, to get the text for current token. Set at
+ * the start of nextToken.
+ */
+ this.tokenStartCharIndex = -1;
+
+ /** The line on which the first character of the token resides */
+ // this.tokenStartLine;
+
+ /** The character position of first character within the line */
+ // this.tokenStartCharPositionInLine;
+
+ /** The channel number for the current token */
+ // this.channel;
+
+ /** The token type for the current token */
+ // this.type;
+
+ /** You can set the text for the current token to override what is in
+ * the input char buffer. Use setText() or can set this instance var.
+ */
+ this.text = null;
+};
+org.antlr.runtime.IndexOutOfBoundsException = function(m) {
+ org.antlr.runtime.IndexOutOfBoundsException.superclass.constructor.call(this, m);
+};
+
+org.antlr.lang.extend(org.antlr.runtime.IndexOutOfBoundsException, Error, {
+ name: "org.antlr.runtime.IndexOutOfBoundsException"
+});
+/** The root of the ANTLR exception hierarchy.
+ *
+ * To avoid English-only error messages and to generally make things
+ * as flexible as possible, these exceptions are not created with strings,
+ * but rather the information necessary to generate an error. Then
+ * the various reporting methods in Parser and Lexer can be overridden
+ * to generate a localized error message. For example, MismatchedToken
+ * exceptions are built with the expected token type.
+ * So, don't expect getMessage() to return anything.
+ *
+ * ANTLR generates code that throws exceptions upon recognition error and
+ * also generates code to catch these exceptions in each rule. If you
+ * want to quit upon first error, you can turn off the automatic error
+ * handling mechanism using rulecatch action, but you still need to
+ * override methods mismatch and recoverFromMismatchSet.
+ *
+ * In general, the recognition exceptions can track where in a grammar a
+ * problem occurred and/or what was the expected input. While the parser
+ * knows its state (such as current input symbol and line info) that
+ * state can change before the exception is reported so current token index
+ * is computed and stored at exception time. From this info, you can
+ * perhaps print an entire line of input not just a single token, for example.
+ * Better to just say the recognizer had a problem and then let the parser
+ * figure out a fancy report.
+ *
+ * @class
+ * @param {org.antlr.runtime.CommonTokenStream|org.antlr.runtime.tree.TreeNodeStream|org.antlr.runtime.ANTLRStringStream} input input stream that has an exception.
+ * @extends Error
+ *
+ */
+org.antlr.runtime.RecognitionException = function(input) {
+ org.antlr.runtime.RecognitionException.superclass.constructor.call(this);
+ this.input = input;
+ this.index = input.index();
+ if ( input instanceof org.antlr.runtime.CommonTokenStream ) {
+ this.token = input.LT(1);
+ this.line = this.token.getLine();
+ this.charPositionInLine = this.token.getCharPositionInLine();
+ }
+ if ( input instanceof org.antlr.runtime.tree.TreeNodeStream ) {
+ this.extractInformationFromTreeNodeStream(input);
+ }
+ else if ( input instanceof org.antlr.runtime.ANTLRStringStream ) {
+ // Note: removed CharStream from hierarchy in JS port so checking for
+ // StringStream instead
+ this.c = input.LA(1);
+ this.line = input.getLine();
+ this.charPositionInLine = input.getCharPositionInLine();
+ }
+ else {
+ this.c = input.LA(1);
+ }
+
+ this.message = this.toString();
+};
+
+org.antlr.lang.extend(org.antlr.runtime.RecognitionException, Error,
+/** @lends org.antlr.runtime.RecognitionException.prototype */
+{
+ /**
+ * What input stream did the error occur in?
+ */
+ input: null,
+
+ /** What is index of token/char were we looking at when the error occurred?
+ * @type Number
+ */
+ index: null,
+
+ /** The current Token when an error occurred. Since not all streams
+ * can retrieve the ith Token, we have to track the Token object.
+ * For parsers. Even when it's a tree parser, token might be set.
+ * @type org.antlr.runtime.CommonToken
+ */
+ token: null,
+
+ /** If this is a tree parser exception, node is set to the node with
+ * the problem.
+ * @type Object
+ */
+ node: null,
+
+ /** The current char when an error occurred. For lexers.
+ * @type Number
+ */
+ c: null,
+
+ /** Track the line at which the error occurred in case this is
+ * generated from a lexer. We need to track this since the
+ * unexpected char doesn't carry the line info.
+ * @type Number
+ */
+ line: null,
+
+ /** The exception's class name.
+ * @type String
+ */
+ name: "org.antlr.runtime.RecognitionException",
+
+ /** Position in the line where exception occurred.
+ * @type Number
+ */
+ charPositionInLine: null,
+
+ /** If you are parsing a tree node stream, you will encounter som
+ * imaginary nodes w/o line/col info. We now search backwards looking
+ * for most recent token with line/col info, but notify getErrorHeader()
+ * that info is approximate.
+ * @type Boolean
+ */
+ approximateLineInfo: null,
+
+ /** Gather exception information from input stream.
+ * @param {org.antlr.runtime.CommonTokenStream|org.antlr.runtime.tree.TreeNodeStream|org.antlr.runtime.ANTLRStringStream} input input stream that has an exception.
+ */
+ extractInformationFromTreeNodeStream: function(input) {
+ var nodes = input,
+ priorNode,
+ priorPayLoad,
+ type,
+ text,
+ i;
+
+ this.node = nodes.LT(1);
+ var adaptor = nodes.getTreeAdaptor(),
+ payload = adaptor.getToken(this.node);
+ if ( payload ) {
+ this.token = payload;
+ if ( payload.getLine()<= 0 ) {
+ // imaginary node; no line/pos info; scan backwards
+ i = -1;
+ priorNode = nodes.LT(i);
+ while ( priorNode ) {
+ priorPayload = adaptor.getToken(priorNode);
+ if ( priorPayload && priorPayload.getLine()>0 ) {
+ // we found the most recent real line / pos info
+ this.line = priorPayload.getLine();
+ this.charPositionInLine = priorPayload.getCharPositionInLine();
+ this.approximateLineInfo = true;
+ break;
+ }
+ --i;
+ priorNode = nodes.LT(i);
+ }
+ }
+ else { // node created from real token
+ this.line = payload.getLine();
+ this.charPositionInLine = payload.getCharPositionInLine();
+ }
+ }
+ else if ( this.node instanceof org.antlr.runtime.tree.CommonTree) {
+ this.line = this.node.getLine();
+ this.charPositionInLine = this.node.getCharPositionInLine();
+ if ( this.node instanceof org.antlr.runtime.tree.CommonTree) {
+ this.token = this.node.token;
+ }
+ }
+ else {
+ type = adaptor.getType(this.node);
+ text = adaptor.getText(this.node);
+ this.token = new org.antlr.runtime.CommonToken(type, text);
+ }
+ },
+
+ /** Return the token type or char of the unexpected input element
+ * @return {Number} type of the unexpected input element.
+ */
+ getUnexpectedType: function() {
+ if ( this.input instanceof org.antlr.runtime.CommonTokenStream ) {
+ return this.token.getType();
+ }
+ else if ( this.input instanceof org.antlr.runtime.tree.TreeNodeStream ) {
+ var nodes = this.input;
+ var adaptor = nodes.getTreeAdaptor();
+ return adaptor.getType(this.node);
+ }
+ else {
+ return this.c;
+ }
+ }
+});
+org.antlr.runtime.MismatchedTokenException = function(expecting, input) {
+ if (arguments.length===0) {
+ this.expecting = org.antlr.runtime.Token.INVALID_TOKEN_TYPE;
+ } else {
+ org.antlr.runtime.MismatchedTokenException.superclass.constructor.call(
+ this, input);
+ this.expecting = expecting;
+ }
+};
+
+org.antlr.lang.extend(
+ org.antlr.runtime.MismatchedTokenException,
+ org.antlr.runtime.RecognitionException, {
+ toString: function() {
+ return "MismatchedTokenException(" +
+ this.getUnexpectedType() + "!=" + this.expecting + ")";
+ },
+ name: "org.antlr.runtime.MismatchedTokenException"
+});
+/** An extra token while parsing a TokenStream */
+org.antlr.runtime.UnwantedTokenException = function(expecting, input) {
+ if (arguments.length>0) {
+ org.antlr.runtime.UnwantedTokenException.superclass.constructor.call(
+ this, expecting, input);
+ }
+};
+
+org.antlr.lang.extend(
+ org.antlr.runtime.UnwantedTokenException,
+ org.antlr.runtime.MismatchedTokenException, {
+ getUnexpectedToken: function() {
+ return this.token;
+ },
+ toString: function() {
+ var exp = ", expected "+this.expecting;
+ if ( this.expecting===org.antlr.runtime.Token.INVALID_TOKEN_TYPE ) {
+ exp = "";
+ }
+ if ( !org.antlr.lang.isValue(this.token) ) {
+ return "UnwantedTokenException(found="+exp+")";
+ }
+ return "UnwantedTokenException(found="+this.token.getText()+exp+")";
+ },
+ name: "org.antlr.runtime.UnwantedTokenException"
+});
+org.antlr.runtime.MissingTokenException = function(expecting, input, inserted) {
+ if (arguments.length>0) {
+ org.antlr.runtime.MissingTokenException.superclass.constructor.call(
+ this, expecting, input);
+ this.inserted = inserted;
+ }
+};
+
+org.antlr.lang.extend(
+ org.antlr.runtime.MissingTokenException,
+ org.antlr.runtime.MismatchedTokenException, {
+ getMissingType: function() {
+ return this.expecting;
+ },
+
+ toString: function() {
+ if (org.antlr.lang.isValue(this.inserted) &&
+ org.antlr.lang.isValue(this.token))
+ {
+ return "MissingTokenException(inserted "+this.inserted+" at "+this.token.getText()+")";
+ }
+ if ( org.antlr.lang.isValue(this.token) ) {
+ return "MissingTokenException(at "+this.token.getText()+")";
+ }
+ return "MissingTokenException";
+ },
+ name: "org.antlr.runtime.MissingTokenException"
+});
+org.antlr.runtime.NoViableAltException = function(grammarDecisionDescription,
+ decisionNumber,
+ stateNumber,
+ input)
+{
+ org.antlr.runtime.NoViableAltException.superclass.constructor.call(this, input);
+ this.grammarDecisionDescription = grammarDecisionDescription;
+ this.decisionNumber = decisionNumber;
+ this.stateNumber = stateNumber;
+};
+
+org.antlr.lang.extend(
+ org.antlr.runtime.NoViableAltException,
+ org.antlr.runtime.RecognitionException, {
+ toString: function() {
+ if ( this.input instanceof org.antlr.runtime.ANTLRStringStream ) {
+ return "NoViableAltException('"+this.getUnexpectedType()+"'@["+this.grammarDecisionDescription+"])";
+ }
+ else {
+ return "NoViableAltException("+this.getUnexpectedType()+"@["+this.grammarDecisionDescription+"])";
+ }
+ },
+ name: "org.antlr.runtime.NoViableAltException"
+});
+/** The recognizer did not match anything for a ()+ loop.
+ *
+ * @class
+ * @param {Number} decisionNumber
+ * @param {org.antlr.runtime.CommonTokenStream|org.antlr.runtime.tree.TreeNodeStream|org.antlr.runtime.ANTLRStringStream} input input stream that has an exception.
+ * @extends org.antlr.runtime.RecognitionException
+ */
+org.antlr.runtime.EarlyExitException = function(decisionNumber, input) {
+ org.antlr.runtime.EarlyExitException.superclass.constructor.call(
+ this, input);
+ this.decisionNumber = decisionNumber;
+};
+
+org.antlr.lang.extend(
+ org.antlr.runtime.EarlyExitException,
+ org.antlr.runtime.RecognitionException,
+/** @lends org.antlr.runtime.EarlyExitException.prototype */
+{
+ /** Name of this class.
+ * @type String
+ */
+ name: "org.antlr.runtime.EarlyExitException"
+});
+org.antlr.runtime.MismatchedSetException = function(expecting, input) {
+ org.antlr.runtime.MismatchedSetException.superclass.constructor.call(
+ this, input);
+ this.expecting = expecting;
+};
+
+org.antlr.lang.extend(
+ org.antlr.runtime.MismatchedSetException,
+ org.antlr.runtime.RecognitionException, {
+ toString: function() {
+ return "MismatchedSetException(" +
+ this.getUnexpectedType() + "!=" + this.expecting + ")";
+ },
+ name: "org.antlr.runtime.MismatchedSetException"
+});
+org.antlr.runtime.MismatchedNotSetException = function(expecting, input) {
+ org.antlr.runtime.MismatchedNotSetException.superclass.constructor.call(this, expecting, input);
+};
+
+org.antlr.lang.extend(
+ org.antlr.runtime.MismatchedNotSetException,
+ org.antlr.runtime.MismatchedSetException, {
+ toString: function() {
+ return "MismatchedNotSetException(" +
+ this.getUnexpectedType() + "!=" + this.expecting + ")";
+ },
+ name: "org.antlr.runtime.MismatchedNotSetException"
+});
+org.antlr.runtime.MismatchedRangeException = function(a, b, input) {
+ if (arguments.length===0) {
+ return this;
+ }
+
+ org.antlr.runtime.MismatchedRangeException.superclass.constructor.call(
+ this, input);
+ this.a = a;
+ this.b = b;
+};
+
+org.antlr.lang.extend(
+ org.antlr.runtime.MismatchedRangeException,
+ org.antlr.runtime.RecognitionException, {
+ toString: function() {
+ return "MismatchedRangeException(" +
+ this.getUnexpectedType()+" not in ["+this.a+","+this.b+"])";
+ },
+ name: "org.antlr.runtime.MismatchedRangeException"
+});
+/** A semantic predicate failed during validation. Validation of predicates
+ * occurs when normally parsing the alternative just like matching a token.
+ * Disambiguating predicate evaluation occurs when we hoist a predicate into
+ * a prediction decision.
+ *
+ * @class
+ * @param {org.antlr.runtime.CommonTokenStream|org.antlr.runtime.tree.TreeNodeStream|org.antlr.runtime.ANTLRStringStream} input input stream that has an exception.
+ * @param {String} ruleName name of the rule in which the exception occurred.
+ * @param {String} predicateText the predicate that failed.
+ * @extends org.antlr.runtime.RecognitionException
+ */
+org.antlr.runtime.FailedPredicateException = function(input, ruleName, predicateText){
+ org.antlr.runtime.FailedPredicateException.superclass.constructor.call(this, input);
+ this.ruleName = ruleName;
+ this.predicateText = predicateText;
+};
+
+org.antlr.lang.extend(
+ org.antlr.runtime.FailedPredicateException,
+ org.antlr.runtime.RecognitionException,
+/** @lends org.antlr.runtime.FailedPredicateException.prototype */
+{
+ /** Create a string representation of this exception.
+ * @returns {String}
+ */
+ toString: function() {
+ return "FailedPredicateException("+this.ruleName+",{"+this.predicateText+"}?)";
+ },
+
+ /** Name of this class.
+ * @type String
+ */
+ name: "org.antlr.runtime.FailedPredicateException"
+});
+/**
+ * A BitSet similar to java.util.BitSet.
+ *
+ * JavaScript Note: There is no good way to implement something like this in
+ * JavaScript. JS has no true int type, arrays are usually implemented as
+ * hashes, etc. This class should probably be nixed for something that is
+ * similarly (in)efficient, but more clear.
+ *
+ * @class
+ * @param {Number|Array} [bits] a 32 bit number or array of 32 bit numbers
+ * representing the bitset. These are typically
+ * generated by the ANTLR Tool.
+ */
+org.antlr.runtime.BitSet = function(bits) {
+ if (!bits) {
+ bits = org.antlr.runtime.BitSet.BITS;
+ }
+
+ if (org.antlr.lang.isArray(bits)) {
+ /**
+ * An array of Numbers representing the BitSet.
+ * @type Array
+ */
+ this.bits = bits;
+ } else if(org.antlr.lang.isNumber(bits)) {
+ this.bits = [];
+ }
+};
+
+org.antlr.lang.augmentObject(org.antlr.runtime.BitSet, {
+ /**
+ * Number of bits in each number.
+ * @constant
+ * @memberOf org.antlr.runtime.BitSet
+ */
+ BITS: 32,
+
+ /**
+ * Log (base 2) of the number of bits in each number.
+ * @constant
+ * @memberOf org.antlr.runtime.BitSet
+ */
+ LOG_BITS: 5, // 2^5 == 32
+
+ /**
+ * We will often need to do a mod operator (i mod nbits). Its
+ * turns out that, for powers of two, this mod operation is
+ * same as (i & (nbits-1)). Since mod is slow, we use a
+ * precomputed mod mask to do the mod instead.
+ * @constant
+ * @memberOf org.antlr.runtime.BitSet
+ */
+ MOD_MASK: 31, // BITS - 1
+
+ /**
+ * Create mask for bit modded to fit in a single word.
+ * @example
+ * bitmask(35) => 00000000000000000000000000000100
+ * bitmask(3) => 00000000000000000000000000000100
+ * @param {Number} bitNumber the bit to create a mask for.
+ * @returns {Number} the bitmask.
+ * @memberOf org.antlr.runtime.BitSet
+ * @private
+ */
+ bitMask: function(bitNumber) {
+ var bitPosition = bitNumber & org.antlr.runtime.BitSet.MOD_MASK;
+ return 1 << bitPosition;
+ },
+
+ /**
+ * Calculate the minimum number of bits needed to represent el.
+ * @param {Number} el a number to be included in the BitSet.
+ * @returns {Number} the number of bits need to create a BitSet with member
+ * el.
+ * @memberOf org.antlr.runtime.BitSet
+ * @private
+ */
+ numWordsToHold: function(el) {
+ return (el >> org.antlr.runtime.BitSet.LOG_BITS) + 1;
+ },
+
+ /**
+ * @param {Number} bit a number to be included in the BitSet
+ * @returns {Number} the index of the word in the field bits that would
+ * hold bit.
+ * @memberOf org.antlr.runtime.BitSet
+ * @private
+ */
+ wordNumber: function(bit) {
+ return bit >> org.antlr.runtime.BitSet.LOG_BITS; // bit / BITS
+ },
+
+ /**
+ * BitSet factory method.
+ *
+ * Operates in a number of modes:
+ *
+ * If el is a number create the BitSet containing that number.
+ * If el is an array create the BitSet containing each number in the
+ * array.
+ * If el is a BitSet return el.
+ * If el is an Object create the BitSet containing each numeric value
+ * in el.
+ * If el is a number and el2 is a number return a BitSet containing
+ * the numbers between el and el2 (inclusive).
+ *
+ *
+ * @param {Number|Array|org.antlr.runtime.BitSet|Object} el
+ * @param {Number} el2
+ * @returns {org.antlr.runtime.BitSet}
+ * @memberOf org.antlr.runtime.BitSet
+ */
+ of: function(el, el2) {
+ var i, n, s, keys;
+
+ if (org.antlr.lang.isNumber(el)) {
+ if (org.antlr.lang.isNumber(el2)) {
+ s = new org.antlr.runtime.BitSet(el2 + 1);
+ for (i = el; i <= el2; i++) {
+ n = org.antlr.runtime.BitSet.wordNumber(i);
+ s.bits[n] |= org.antlr.runtime.BitSet.bitMask(i);
+ }
+ return s;
+ } else {
+ s = new org.antlr.runtime.BitSet(el + 1);
+ s.add(el);
+ return s;
+ }
+ } else if(org.antlr.lang.isArray(el)) {
+ s = new org.antlr.runtime.BitSet();
+ for (i=el.length-1; i>=0; i--) {
+ s.add(el[i]);
+ }
+ return s;
+ } else if (el instanceof org.antlr.runtime.BitSet) {
+ if (!el) {
+ return null;
+ }
+ return el;
+ } else if (el instanceof org.antlr.runtime.IntervalSet) {
+ if (!el) {
+ return null;
+ }
+ s = new org.antlr.runtime.BitSet();
+ s.addAll(el);
+ return s;
+ } else if (org.antlr.lang.isObject(el)) {
+ keys = [];
+ for (i in el) {
+ if (org.antlr.lang.isNumber(i)) {
+ keys.push(i);
+ }
+ }
+ return org.antlr.runtime.BitSet.of(keys);
+ }
+ }
+});
+
+
+
+org.antlr.runtime.BitSet.prototype = {
+ /**
+ * Add el into this set.
+ * @param {Number} el the number to add to the set.
+ */
+ add: function(el) {
+ var n = org.antlr.runtime.BitSet.wordNumber(el);
+ if (n >= this.bits.length) {
+ this.growToInclude(el);
+ }
+ this.bits[n] |= org.antlr.runtime.BitSet.bitMask(el);
+ },
+
+ /**
+ * Add multiple elements into this set.
+ * @param {Array|org.antlr.runtime.BitSet} elements the elements to be added to
+ * this set.
+ */
+ addAll: function(elements) {
+ var other,
+ i,
+ e;
+
+ if ( elements instanceof org.antlr.runtime.BitSet ) {
+ this.orInPlace(elements);
+ }
+ else if ( elements instanceof org.antlr.runtime.IntervalSet ) {
+ other = elements;
+ // walk set and add each interval
+ /* @todo after implementing intervalset
+ for (Iterator iter = other.intervals.iterator(); iter.hasNext();) {
+ Interval I = (Interval) iter.next();
+ this.orInPlace(BitSet.range(I.a,I.b));
+ }*/
+ } else if (org.antlr.lang.isArray(elements)) {
+ for (i = 0; i < elements.length; i++) {
+ e = elements[i];
+ this.add(e);
+ }
+ } else {
+ return;
+ }
+ },
+
+ /**
+ * Clone this BitSet and then {@link #andInPlace} with a.
+ * @param {org.antlr.runtime.BitSet} a a bit set.
+ * @returns {org.antlr.runtime.BitSet}
+ */
+ and: function(a) {
+ var s = this.clone();
+ s.andInPlace(a);
+ return s;
+ },
+
+ /**
+ * Perform a logical AND of this target BitSet with the argument BitSet.
+ *
+ * This bit set is modified so that each bit in it has the value true if
+ * and only if it both initially had the value true and the corresponding
+ * bit in the bit set argument also had the value true.
+ * @param {org.antlr.runtime.BitSet} a a bit set.
+ * @returns {org.antlr.runtime.BitSet}
+ */
+ andInPlace: function(a) {
+ var min = Math.min(this.bits.length, a.bits.length),
+ i;
+ for (i = min - 1; i >= 0; i--) {
+ this.bits[i] &= a.bits[i];
+ }
+ // clear all bits in this not present in a (if this bigger than a).
+ for (i = min; i < this.bits.length; i++) {
+ this.bits[i] = 0;
+ }
+ },
+
+ /**
+ * Clear all bits or a specific bit.
+ *
+ * If no arguments given, sets all of the bits in this BitSet to false.
+ * If one argument given, sets the bit specified by the index to false.
+ * @param {Number} [el] the index of the bit to be cleared.
+ */
+ clear: function(el) {
+ if (arguments.length===0) {
+ var i;
+ for (i = this.bits.length - 1; i >= 0; i--) {
+ this.bits[i] = 0;
+ }
+ return;
+ }
+
+ var n = org.antlr.runtime.BitSet.wordNumber(el);
+ if (n >= this.bits.length) { // grow as necessary to accommodate
+ this.growToInclude(el);
+ }
+ this.bits[n] &= ~org.antlr.runtime.BitSet.bitMask(el);
+ },
+
+ /**
+ * Cloning this BitSet produces a new BitSet that is equal to it.
+ *
+ * The clone of the bit set is another bit set that has exactly the same
+ * bit set to true as this bit set.
+ * @returns {org.antlr.runtime.BitSet} a clone of this BitSet.
+ */
+ clone: function() {
+ var i, len, b=[];
+ for (i=0, len=this.bits.length; i= 0; i--) {
+ word = this.bits[i];
+ if (word !== 0) {
+ for (bit = org.antlr.runtime.BitSet.BITS - 1; bit >= 0; bit--) {
+ if ((word & (1 << bit)) !== 0) {
+ deg++;
+ }
+ }
+ }
+ }
+ return deg;
+ },
+
+ /**
+ * Compares this object against the specified object.
+ *
+ * The result is true if and only if the argument is not null and is a
+ * BitSet object that has exactly the same set of bits set to true as
+ * this bit set. That is, for every nonnegative int index k,
+ *
+ * ((BitSet)obj).get(k) == this.get(k)
+ *
+ * must be true. The current sizes of the two bit sets are not compared.
+ * @param {Object} other the object to compare with.
+ * @returns {Boolean} if the objects are the same; false otherwise.
+ */
+ equals: function(other) {
+ if ( !other || !(other instanceof org.antlr.runtime.BitSet) ) {
+ return false;
+ }
+
+ var otherSet = other,
+ i,
+ n = Math.min(this.bits.length, otherSet.bits.length);
+
+ // for any bits in common, compare
+ for (i=0; i n) {
+ for (i = n+1; i n) {
+ for (i = n+1; i= this.bits.length) { return false; }
+ return (this.bits[n] & org.antlr.runtime.BitSet.bitMask(el)) !== 0;
+ },
+
+ /**
+ * Returns the index of the first bit that is set to true.
+ * If no such bit exists then -1 is returned.
+ * @returns {Number} the index of the next set bit.
+ */
+ getSingleElement: function() {
+ var i;
+ for (i = 0; i < (this.bits.length << org.antlr.runtime.BitSet.LOG_BITS); i++) {
+ if (this.member(i)) {
+ return i;
+ }
+ }
+ return -1; //Label.INVALID;
+ },
+
+ /**
+ * Returns true if this BitSet contains no bits that are set to true.
+ * @returns {Boolean} boolean indicating whether this BitSet is empty.
+ */
+ isNil: function() {
+ var i;
+ for (i = this.bits.length - 1; i >= 0; i--) {
+ if (this.bits[i] !== 0) {
+ return false;
+ }
+ }
+ return true;
+ },
+
+ /**
+ * If a bit set argument is passed performs a {@link #subtract} of this bit
+ * set with the argument bit set. If no argument is passed, clone this bit
+ * set and {@link #notInPlace}.
+ * @param {org.antlr.runtime.BitSet} [set]
+ * @returns {org.antlr.runtime.BitSet}
+ */
+ complement: function(set) {
+ if (set) {
+ return set.subtract(this);
+ } else {
+ var s = this.clone();
+ s.notInPlace();
+ return s;
+ }
+ },
+
+ /**
+ * If no arguments are passed sets all bits to the complement of their
+ * current values. If one argument is passed sets each bit from the
+ * beginning of the bit set to index1 (inclusive) to the complement of its
+ * current value. If two arguments are passed sets each bit from the
+ * specified index1 (inclusive) to the sepcified index2 (inclusive) to the
+ * complement of its current value.
+ * @param {Number} index1
+ * @param {Number} index2
+ */
+ notInPlace: function() {
+ var minBit, maxBit, i, n;
+ if (arguments.length===0) {
+ for (i = this.bits.length - 1; i >= 0; i--) {
+ this.bits[i] = ~this.bits[i];
+ }
+ } else {
+ if (arguments.length===1) {
+ minBit = 0;
+ maxBit = arguments[0];
+ } else {
+ minBit = arguments[0];
+ maxBit = arguments[1];
+ }
+ // make sure that we have room for maxBit
+ this.growToInclude(maxBit);
+ for (i = minBit; i <= maxBit; i++) {
+ n = org.antlr.runtime.BitSet.wordNumber(i);
+ this.bits[n] ^= org.antlr.runtime.BitSet.bitMask(i);
+ }
+ }
+
+ },
+
+ /**
+ * Performs a logical OR of this bit set with the bit set argument.
+ * If no argument is passed, return this bit set. Otherwise a clone of
+ * this bit set is modified so that a bit in it has the value true if and
+ * only if it either already had the value true or the corresponding bit
+ * in the bit set argument has the value true.
+ * @param {org.antlr.runtime.BitSet} [a] a bit set.
+ * @returns {org.antlr.runtime.BitSet}
+ */
+ or: function(a) {
+ if ( !a ) {
+ return this;
+ }
+ var s = this.clone();
+ s.orInPlace(a);
+ return s;
+ },
+
+ /**
+ * Performs a logical {@link #or} in place.
+ * @param {org.antlr.runtime.BitSet} [a]
+ * @returns {org.antlr.runtime.BitSet}
+ */
+ orInPlace: function(a) {
+ if ( !a ) {
+ return;
+ }
+ // If this is smaller than a, grow this first
+ if (a.bits.length > this.bits.length) {
+ this.setSize(a.bits.length);
+ }
+ var min = Math.min(this.bits.length, a.bits.length),
+ i;
+ for (i = min - 1; i >= 0; i--) {
+ this.bits[i] |= a.bits[i];
+ }
+ },
+
+ /**
+ * Sets the bit specified by the index to false.
+ * @param {Number} bitIndex the index of the bit to be cleared.
+ */
+ remove: function(el) {
+ var n = org.antlr.runtime.BitSet.wordNumber(el);
+ if (n >= this.bits.length) {
+ this.growToInclude(el);
+ }
+ this.bits[n] &= ~org.antlr.runtime.BitSet.bitMask(el);
+ },
+
+ /**
+ * Grows the internal bits array to include at least nwords numbers.
+ * @private
+ * @param {Number} nwords how many words the new set should be
+ * @private
+ */
+ setSize: function(nwords) {
+ var n = nwords - this.bits.length;
+ while (n>=0) {
+ this.bits.push(0);
+ n--;
+ }
+ },
+
+ /**
+ * Returns the number of bits capable of being represented by this bit set
+ * given its current size.
+ * @returns {Number} the maximum number of bits that can be represented at
+ * the moment.
+ * @private
+ */
+ numBits: function() {
+ return this.bits.length << org.antlr.runtime.BitSet.LOG_BITS; // num words * bits per word
+ },
+
+ /**
+ * Return how much space is being used by the bits array not
+ * how many actually have member bits on.
+ * @returns {Number} the length of the internal bits array.
+ * @private
+ */
+ lengthInLongWords: function() {
+ return this.bits.length;
+ },
+
+ /**
+ * Is this bit set contained within a?
+ * @param {org.antlr.runtime.BitSet} a bit set
+ * @returns {Boolean} true if and only if a is a subset of this bit set.
+ */
+ subset: function(a) {
+ if (!a) { return false; }
+ return this.and(a).equals(this);
+ },
+
+ /**
+ * Subtract the elements of the argument bit set from this bit set in place.
+ * That is, for each set bit in the argument bit set, set the corresponding
+ * bit in this bit set to false.
+ * @param {org.antlr.runtime.BitSet} a bit set.
+ */
+ subtractInPlace: function(a) {
+ if (!a) { return; }
+ // for all words of 'a', turn off corresponding bits of 'this'
+ var i;
+ for (i = 0; i < this.bits.length && i < a.bits.length; i++) {
+ this.bits[i] &= ~a.bits[i];
+ }
+ },
+
+ /**
+ * Perform a {@link #subtractInPlace} on a clone of this bit set.
+ * @param {org.antlr.runtime.BitSet} a bit set.
+ * @returns {org.antlr.runtime.BitSet} the new bit set.
+ */
+ subtract: function(a) {
+ if (!a || !(a instanceof org.antlr.runtime.BitSet)) { return null; }
+
+ var s = this.clone();
+ s.subtractInPlace(a);
+ return s;
+ },
+
+ /* antlr-java needs this to make its class hierarchy happy . . .
+ toList: function() {
+ throw new Error("BitSet.toList() unimplemented");
+ },
+ */
+
+ /**
+ * Creates an array of the indexes of each bit set in this bit set.
+ * @returns {Array}
+ */
+ toArray: function() {
+ var elems = [], //new Array(this.size()),
+ i,
+ en = 0;
+ for (i = 0; i < (this.bits.length << org.antlr.runtime.BitSet.LOG_BITS); i++) {
+ if (this.member(i)) {
+ elems[en++] = i;
+ }
+ }
+ return elems;
+ },
+
+ /**
+ * Returns the internal representation of this bit set.
+ * This representation is an array of numbers, each representing 32 bits.
+ * @returns {Array}
+ */
+ toPackedArray: function() {
+ return this.bits;
+ },
+
+ /**
+ * Returns a string representation of this bit set.
+ * For every index for which this BitSet contains a bit in the set state,
+ * the decimal representation of that index is included in the result.
+ * Such indices are listed in order from lowest to highest, separated by
+ * ", " (a comma and a space) and surrounded by braces, resulting in the
+ * usual mathematical notation for a set of integers.
+ *
+ * If a grammar g is passed, print g.getTokenDisplayName(i) for each set
+ * index instead of the numerical index.
+ *
+ * <>If two arguments are passed, the first will be used as a custom
+ * separator string. The second argument is an array whose i-th element
+ * will be added if the corresponding bit is set.
+ *
+ * @param {Object|String} [arg1] an Object with function property
+ * getTokenDispalyName or a String that will be used as a list
+ * separator.
+ * @param {Array} [vocabulary] array from which the i-th value will be
+ * drawn if the corresponding bit is set. Must pass a string as the
+ * first argument if using this option.
+ * @return A commma-separated list of values
+ */
+ toString: function() {
+ if (arguments.length===0) {
+ return this.toString1(null);
+ } else {
+ if (org.antlr.lang.isString(arguments[0])) {
+ if (!org.antlr.lang.isValue(arguments[1])) {
+ return this.toString1(null);
+ } else {
+ return this.toString2(arguments[0], arguments[1]);
+ }
+ } else {
+ return this.toString1(arguments[0]);
+ }
+ }
+ },
+
+ /**
+ * Transform a bit set into a string by formatting each element as an
+ * integer separator The string to put in between elements
+ * @private
+ * @return A commma-separated list of values
+ */
+ toString1: function(g) {
+ var buf = "{",
+ separator = ",",
+ i,
+ havePrintedAnElement = false;
+
+ for (i = 0; i < (this.bits.length << org.antlr.runtime.BitSet.LOG_BITS); i++) {
+ if (this.member(i)) {
+ if (i > 0 && havePrintedAnElement ) {
+ buf += separator;
+ }
+ if ( g ) {
+ buf += g.getTokenDisplayName(i);
+ }
+ else {
+ buf += i.toString();
+ }
+ havePrintedAnElement = true;
+ }
+ }
+ return buf + "}";
+ },
+
+ /**
+ * Create a string representation where instead of integer elements, the
+ * ith element of vocabulary is displayed instead. Vocabulary is a Vector
+ * of Strings.
+ * separator The string to put in between elements
+ * @private
+ * @return A commma-separated list of character constants.
+ */
+ toString2: function(separator, vocabulary) {
+ var str = "",
+ i;
+ for (i = 0; i < (this.bits.length << org.antlr.runtime.BitSet.LOG_BITS); i++) {
+ if (this.member(i)) {
+ if (str.length > 0) {
+ str += separator;
+ }
+ if (i >= vocabulary.size()) {
+ str += "'" + i + "'";
+ }
+ else if (!org.antlr.lang.isValue(vocabulary.get(i))) {
+ str += "'" + i + "'";
+ }
+ else {
+ str += vocabulary.get(i);
+ }
+ }
+ }
+ return str;
+ }
+
+ /*
+ * Dump a comma-separated list of the words making up the bit set.
+ * Split each 32 bit number into two more manageable 16 bit numbers.
+ * @returns {String} comma separated list view of the this.bits property.
+ *
+ toStringOfHalfWords: function() {
+ var s = "",
+ tmp,
+ i;
+ for (i = 0; i < this.bits.length; i++) {
+ if (i !== 0) {
+ s+=", ";
+ }
+ tmp = this.bits[i];
+ tmp &= 0xFFFF;
+ s += tmp + "UL, ";
+ tmp = this.bits[i] >> 16;
+ tmp &= 0xFFFF;
+ s += tmp+"UL";
+ }
+ return s;
+ },
+ */
+
+ /*
+ * Dump a comma-separated list of the words making up the bit set.
+ * This generates a comma-separated list of Java-like long int constants.
+ *
+ toStringOfWords: function() {
+ var s="",
+ i;
+ for (i = 0; i < this.bits.length; i++) {
+ if (i !== 0) {
+ s+=", ";
+ }
+ s += this.bits[i]+"L";
+ }
+ return s;
+ },
+
+ toStringWithRanges: function() {
+ return this.toString();
+ }
+ */
+};
+
+/*
+ *
+ *
+org.antlr.runtime.IntervalSet = function() {
+ throw new Error("not implemented");
+};
+*/
+org.antlr.runtime.CharStream = {
+ EOF: -1
+};
+org.antlr.runtime.CommonToken = function() {
+ var oldToken;
+
+ this.charPositionInLine = -1; // set to invalid position
+ this.channel = 0; // org.antlr.runtime.CommonToken.DEFAULT_CHANNEL
+ this.index = -1;
+
+ if (arguments.length == 1) {
+ if (org.antlr.lang.isNumber(arguments[0])) {
+ this.type = arguments[0];
+ } else {
+ oldToken = arguments[0];
+ this.text = oldToken.getText();
+ this.type = oldToken.getType();
+ this.line = oldToken.getLine();
+ this.index = oldToken.getTokenIndex();
+ this.charPositionInLine = oldToken.getCharPositionInLine();
+ this.channel = oldToken.getChannel();
+ if ( oldToken instanceof org.antlr.runtime.CommonToken ) {
+ this.start = oldToken.start;
+ this.stop = oldToken.stop;
+ }
+ }
+ } else if (arguments.length == 2) {
+ this.type = arguments[0];
+ this.text = arguments[1];
+ this.channel = 0; // org.antlr.runtime.CommonToken.DEFAULT_CHANNEL
+ } else if (arguments.length == 5) {
+ this.input = arguments[0];
+ this.type = arguments[1];
+ this.channel = arguments[2];
+ this.start = arguments[3];
+ this.stop = arguments[4];
+ }
+};
+
+org.antlr.runtime.CommonToken.prototype = {
+ getType: function() {
+ return this.type;
+ },
+
+ setLine: function(line) {
+ this.line = line;
+ },
+
+ getText: function() {
+ if ( org.antlr.lang.isString(this.text) ) {
+ return this.text;
+ }
+ if ( !this.input ) {
+ return null;
+ }
+ this.text = this.input.substring(this.start,this.stop);
+ return this.text;
+ },
+
+ /** Override the text for this token. getText() will return this text
+ * rather than pulling from the buffer. Note that this does not mean
+ * that start/stop indexes are not valid. It means that that input
+ * was converted to a new string in the token object.
+ */
+ setText: function(text) {
+ this.text = text;
+ },
+
+ getLine: function() {
+ return this.line;
+ },
+
+ getCharPositionInLine: function() {
+ return this.charPositionInLine;
+ },
+
+ setCharPositionInLine: function(charPositionInLine) {
+ this.charPositionInLine = charPositionInLine;
+ },
+
+ getChannel: function() {
+ return this.channel;
+ },
+
+ setChannel: function(channel) {
+ this.channel = channel;
+ },
+
+ setType: function(type) {
+ this.type = type;
+ },
+
+ getStartIndex: function() {
+ return this.start;
+ },
+
+ setStartIndex: function(start) {
+ this.start = start;
+ },
+
+ getStopIndex: function() {
+ return this.stop;
+ },
+
+ setStopIndex: function(stop) {
+ this.stop = stop;
+ },
+
+ getTokenIndex: function() {
+ return this.index;
+ },
+
+ setTokenIndex: function(index) {
+ this.index = index;
+ },
+
+ getInputStream: function() {
+ return this.input;
+ },
+
+ setInputStream: function(input) {
+ this.input = input;
+ },
+
+ toString: function() {
+ var channelStr = "";
+ if ( this.channel>0 ) {
+ channelStr=",channel="+this.channel;
+ }
+ var txt = this.getText();
+ if ( !org.antlr.lang.isNull(txt) ) {
+ txt = txt.replace(/\n/g,"\\\\n");
+ txt = txt.replace(/\r/g,"\\\\r");
+ txt = txt.replace(/\t/g,"\\\\t");
+ }
+ else {
+ txt = "";
+ }
+ return "[@"+this.getTokenIndex()+","+this.start+":"+this.stop+"='"+txt+"',<"+this.type+">"+channelStr+","+this.line+":"+this.getCharPositionInLine()+"]";
+ }
+};
+// NB: Because Token has static members of type CommonToken, the Token dummy
+// constructor is defined in CommonToken. All methods and vars of Token are
+// defined here. Token is an interface, not a subclass in the Java runtime.
+
+/**
+ * @class Abstract base class of all token types.
+ * @name Token
+ * @memberOf org.antlr.runtime
+ */
+org.antlr.runtime.Token = function() {};
+org.antlr.lang.augmentObject(org.antlr.runtime.Token, /** @lends Token */ {
+ EOR_TOKEN_TYPE: 1,
+
+ /** imaginary tree navigation type; traverse "get child" link */
+ DOWN: 2,
+ /** imaginary tree navigation type; finish with a child list */
+ UP: 3,
+
+ MIN_TOKEN_TYPE: 4, // UP+1,
+
+ EOF: org.antlr.runtime.CharStream.EOF,
+ EOF_TOKEN: new org.antlr.runtime.CommonToken(org.antlr.runtime.CharStream.EOF),
+
+ INVALID_TOKEN_TYPE: 0,
+ INVALID_TOKEN: new org.antlr.runtime.CommonToken(0),
+
+ /** In an action, a lexer rule can set token to this SKIP_TOKEN and ANTLR
+ * will avoid creating a token for this symbol and try to fetch another.
+ */
+ SKIP_TOKEN: new org.antlr.runtime.CommonToken(0),
+
+ /** All tokens go to the parser (unless skip() is called in that rule)
+ * on a particular "channel". The parser tunes to a particular channel
+ * so that whitespace etc... can go to the parser on a "hidden" channel.
+ */
+ DEFAULT_CHANNEL: 0,
+
+ /** Anything on different channel than DEFAULT_CHANNEL is not parsed
+ * by parser.
+ */
+ HIDDEN_CHANNEL: 99
+});
+
+org.antlr.lang.augmentObject(org.antlr.runtime.CommonToken, org.antlr.runtime.Token);
+org.antlr.runtime.tree = {};
+org.antlr.runtime.tree.RewriteCardinalityException = function(elementDescription) {
+ this.elementDescription = elementDescription;
+};
+
+/** Base class for all exceptions thrown during AST rewrite construction.
+ * This signifies a case where the cardinality of two or more elements
+ * in a subrule are different: (ID INT)+ where |ID|!=|INT|
+ */
+org.antlr.lang.extend(org.antlr.runtime.tree.RewriteCardinalityException, Error, {
+ getMessage: function() {
+ if ( org.antlr.lang.isString(this.elementDescription) ) {
+ return this.elementDescription;
+ }
+ return null;
+ },
+ name: function() {
+ return "org.antlr.runtime.tree.RewriteCardinalityException";
+ }
+});
+/** Ref to ID or expr but no tokens in ID stream or subtrees in expr stream */
+org.antlr.runtime.tree.RewriteEmptyStreamException = function(elementDescription) {
+ var sup = org.antlr.runtime.tree.RewriteEmptyStreamException.superclass;
+ sup.constructor.call(this, elementDescription);
+};
+
+org.antlr.lang.extend(org.antlr.runtime.tree.RewriteEmptyStreamException,
+ org.antlr.runtime.tree.RewriteCardinalityException, {
+ name: function() {
+ return "org.antlr.runtime.tree.RewriteEmptyStreamException";
+ }
+});
+/** No elements within a (...)+ in a rewrite rule */
+org.antlr.runtime.tree.RewriteEarlyExitException = function(elementDescription) {
+ var sup = org.antlr.runtime.tree.RewriteEarlyExitException.superclass;
+ if (org.antlr.lang.isUndefined(elementDescription)) {
+ elementDescription = null;
+ }
+ sup.constructor.call(this, elementDescription);
+};
+
+org.antlr.lang.extend(org.antlr.runtime.tree.RewriteEarlyExitException,
+ org.antlr.runtime.tree.RewriteCardinalityException, {
+ name: function() {
+ return "org.antlr.runtime.tree.RewriteEarlyExitException";
+ }
+});
+org.antlr.runtime.MismatchedTreeNodeException = function(expecting, input) {
+ if (expecting && input) {
+ org.antlr.runtime.MismatchedTreeNodeException.superclass.constructor.call(
+ this, input);
+ this.expecting = expecting;
+ }
+};
+
+org.antlr.lang.extend(
+ org.antlr.runtime.MismatchedTreeNodeException,
+ org.antlr.runtime.RecognitionException, {
+ toString: function() {
+ return "MismatchedTreeNodeException(" +
+ this.getUnexpectedType() + "!=" + this.expecting + ")";
+ },
+ name: "org.antlr.runtime.MismatchedTreeNodeException"
+});
+/** A generic tree implementation with no payload. You must subclass to
+ * actually have any user data. ANTLR v3 uses a list of children approach
+ * instead of the child-sibling approach in v2. A flat tree (a list) is
+ * an empty node whose children represent the list. An empty, but
+ * non-null node is called "nil".
+ */
+org.antlr.runtime.tree.BaseTree = function() {};
+
+org.antlr.runtime.tree.BaseTree.prototype = {
+ getChild: function(i) {
+ if ( !this.children || i>=this.children.length ) {
+ return null;
+ }
+ return this.children[i];
+ },
+
+ /** Get the children internal List; note that if you directly mess with
+ * the list, do so at your own risk.
+ */
+ getChildren: function() {
+ return this.children;
+ },
+
+ getFirstChildWithType: function(type) {
+ var i, t;
+ for (i = 0; this.children && i < this.children.length; i++) {
+ t = this.children[i];
+ if ( t.getType()===type ) {
+ return t;
+ }
+ }
+ return null;
+ },
+
+ getChildCount: function() {
+ if ( !this.children ) {
+ return 0;
+ }
+ return this.children.length;
+ },
+
+ /** Add t as child of this node.
+ *
+ * Warning: if t has no children, but child does
+ * and child isNil then this routine moves children to t via
+ * t.children = child.children; i.e., without copying the array.
+ */
+ addChild: function(t) {
+ if ( !org.antlr.lang.isValue(t) ) {
+ return; // do nothing upon addChild(null)
+ }
+ var childTree = t, n, i, c;
+ if ( childTree.isNil() ) { // t is an empty node possibly with children
+ if ( this.children && this.children == childTree.children ) {
+ throw new Error("attempt to add child list to itself");
+ }
+ // just add all of childTree's children to this
+ if ( childTree.children ) {
+ if ( this.children ) { // must copy, this has children already
+ n = childTree.children.length;
+ for (i = 0; i < n; i++) {
+ c = childTree.children[i];
+ this.children.push(c);
+ // handle double-link stuff for each child of nil root
+ c.setParent(this);
+ c.setChildIndex(this.children.length-1);
+ }
+ }
+ else {
+ // no children for this but t has children; just set pointer
+ // call general freshener routine
+ this.children = childTree.children;
+ this.freshenParentAndChildIndexes();
+ }
+ }
+ }
+ else { // child is not nil (don't care about children)
+ if ( !this.children ) {
+ this.children = this.createChildrenList(); // create children list on demand
+ }
+ this.children.push(t);
+ childTree.setParent(this);
+ childTree.setChildIndex(this.children.length-1);
+ }
+ },
+
+ /** Add all elements of kids list as children of this node */
+ addChildren: function(kids) {
+ var i, t;
+ for (i = 0; i < kids.length; i++) {
+ t = kids[i];
+ this.addChild(t);
+ }
+ },
+
+ setChild: function(i, t) {
+ if ( !t ) {
+ return;
+ }
+ if ( t.isNil() ) {
+ throw new Error("Can't set single child to a list");
+ }
+ if ( !this.children ) {
+ this.children = this.createChildrenList();
+ }
+ this.children[i] = t;
+ t.setParent(this);
+ t.setChildIndex(i);
+ },
+
+ deleteChild: function(i) {
+ if ( !this.children ) {
+ return null;
+ }
+ if (i<0 || i>=this.children.length) {
+ throw new Error("Index out of bounds.");
+ }
+ var killed = this.children.splice(i, 1)[0];
+ // walk rest and decrement their child indexes
+ this.freshenParentAndChildIndexes(i);
+ return killed;
+ },
+
+ /** Delete children from start to stop and replace with t even if t is
+ * a list (nil-root tree). num of children can increase or decrease.
+ * For huge child lists, inserting children can force walking rest of
+ * children to set their childindex; could be slow.
+ */
+ replaceChildren: function(startChildIndex, stopChildIndex, t) {
+ if ( !this.children ) {
+ throw new Error("indexes invalid; no children in list");
+ }
+ var replacingHowMany = stopChildIndex - startChildIndex + 1;
+ var replacingWithHowMany;
+ var newTree = t;
+ var newChildren = null;
+ // normalize to a list of children to add: newChildren
+ if ( newTree.isNil() ) {
+ newChildren = newTree.children;
+ }
+ else {
+ newChildren = [];
+ newChildren.push(newTree);
+ }
+ replacingWithHowMany = newChildren.length;
+ var numNewChildren = newChildren.length;
+ var delta = replacingHowMany - replacingWithHowMany;
+ var j, i, child, indexToDelete, c, killed, numToInsert;
+ // if same number of nodes, do direct replace
+ if ( delta === 0 ) {
+ j = 0; // index into new children
+ for (i=startChildIndex; i<=stopChildIndex; i++) {
+ child = newChildren[j];
+ this.children[i] = child;
+ child.setParent(this);
+ child.setChildIndex(i);
+ j++;
+ }
+ }
+ else if ( delta > 0 ) { // fewer new nodes than there were
+ // set children and then delete extra
+ for (j=0; j0 ) {
+ buf += ' ';
+ }
+ buf += t.toStringTree();
+ }
+ if ( !this.isNil() ) {
+ buf += ")";
+ }
+ return buf;
+ },
+
+ getLine: function() {
+ return 0;
+ },
+
+ getCharPositionInLine: function() {
+ return 0;
+ }
+};
+/** A tree node that is wrapper for a Token object. After 3.0 release
+ * while building tree rewrite stuff, it became clear that computing
+ * parent and child index is very difficult and cumbersome. Better to
+ * spend the space in every tree node. If you don't want these extra
+ * fields, it's easy to cut them out in your own BaseTree subclass.
+ */
+org.antlr.runtime.tree.CommonTree = function(node) {
+ /** What token indexes bracket all tokens associated with this node
+ * and below?
+ */
+ this.startIndex = -1;
+ this.stopIndex = -1;
+
+ /** What index is this node in the child list? Range: 0..n-1 */
+ this.childIndex = -1;
+
+ /** Who is the parent node of this node; if null, implies node is root */
+ this.parent = null;
+
+ /** A single token is the payload */
+ this.token = null;
+
+ if (node instanceof org.antlr.runtime.tree.CommonTree) {
+ org.antlr.runtime.tree.CommonTree.superclass.constructor.call(this, node);
+ this.token = node.token;
+ this.startIndex = node.startIndex;
+ this.stopIndex = node.stopIndex;
+ } else if (node instanceof org.antlr.runtime.CommonToken) {
+ this.token = node;
+ }
+};
+
+/** A tree node that is wrapper for a Token object. */
+org.antlr.lang.extend(org.antlr.runtime.tree.CommonTree, org.antlr.runtime.tree.BaseTree, {
+ getToken: function() {
+ return this.token;
+ },
+
+ dupNode: function() {
+ return new org.antlr.runtime.tree.CommonTree(this);
+ },
+
+ isNil: function() {
+ return !this.token;
+ },
+
+ getType: function() {
+ if ( !this.token ) {
+ return org.antlr.runtime.Token.INVALID_TOKEN_TYPE;
+ }
+ return this.token.getType();
+ },
+
+ getText: function() {
+ if ( !this.token ) {
+ return null;
+ }
+ return this.token.getText();
+ },
+
+ getLine: function() {
+ if ( !this.token || this.token.getLine()===0 ) {
+ if ( this.getChildCount()>0 ) {
+ return this.getChild(0).getLine();
+ }
+ return 0;
+ }
+ return this.token.getLine();
+ },
+
+ getCharPositionInLine: function() {
+ if ( !this.token || this.token.getCharPositionInLine()===-1 ) {
+ if ( this.getChildCount()>0 ) {
+ return this.getChild(0).getCharPositionInLine();
+ }
+ return 0;
+ }
+ return this.token.getCharPositionInLine();
+ },
+
+ getTokenStartIndex: function() {
+ if ( this.token ) {
+ return this.token.getTokenIndex();
+ }
+ return this.startIndex;
+ },
+
+ setTokenStartIndex: function(index) {
+ this.startIndex = index;
+ },
+
+ getTokenStopIndex: function() {
+ if ( this.token ) {
+ return this.token.getTokenIndex();
+ }
+ return this.stopIndex;
+ },
+
+ setTokenStopIndex: function(index) {
+ this.stopIndex = index;
+ },
+
+ getChildIndex: function() {
+ return this.childIndex;
+ },
+
+ getParent: function() {
+ return this.parent;
+ },
+
+ setParent: function(t) {
+ this.parent = t;
+ },
+
+ setChildIndex: function(index) {
+ this.childIndex = index;
+ },
+
+ toString: function() {
+ if ( this.isNil() ) {
+ return "nil";
+ }
+ if ( this.getType()===org.antlr.runtime.Token.INVALID_TOKEN_TYPE ) {
+ return "";
+ }
+ if ( !this.token ) {
+ return null;
+ }
+ return this.token.getText();
+ }
+});
+/** What does a tree look like? ANTLR has a number of support classes
+ * such as CommonTreeNodeStream that work on these kinds of trees. You
+ * don't have to make your trees implement this interface, but if you do,
+ * you'll be able to use more support code.
+ *
+ * NOTE: When constructing trees, ANTLR can build any kind of tree; it can
+ * even use Token objects as trees if you add a child list to your tokens.
+ *
+ * This is a tree node without any payload; just navigation and factory stuff.
+ */
+org.antlr.runtime.tree.Tree = {
+ INVALID_NODE: new org.antlr.runtime.tree.CommonTree(org.antlr.runtime.Token.INVALID_TOKEN)
+};
+org.antlr.runtime.tree.CommonErrorNode = function(input, start, stop, e) {
+ if ( !stop ||
+ (stop.getTokenIndex() < start.getTokenIndex() &&
+ stop.getType()!=org.antlr.runtime.Token.EOF) )
+ {
+ // sometimes resync does not consume a token (when LT(1) is
+ // in follow set. So, stop will be 1 to left to start. adjust.
+ // Also handle case where start is the first token and no token
+ // is consumed during recovery; LT(-1) will return null.
+ stop = start;
+ }
+ this.input = input;
+ this.start = start;
+ this.stop = stop;
+ this.trappedException = e;
+};
+
+org.antlr.lang.extend(org.antlr.runtime.tree.CommonErrorNode, org.antlr.runtime.tree.CommonTree, {
+ isNil: function() {
+ return false;
+ },
+
+ getType: function() {
+ return org.antlr.runtime.Token.INVALID_TOKEN_TYPE;
+ },
+
+ getText: function() {
+ var badText = null;
+ if ( this.start instanceof org.antlr.runtime.CommonToken ) {
+ var i = this.start.getTokenIndex();
+ var j = this.stop.getTokenIndex();
+ if ( this.stop.getType() === org.antlr.runtime.Token.EOF ) {
+ j = this.input.size();
+ }
+ badText = this.input.toString(i, j);
+ }
+ else if ( this.start instanceof org.antlr.runtime.tree.CommonTree ) {
+ badText = this.input.toString(this.start, this.stop);
+ }
+ else {
+ // people should subclass if they alter the tree type so this
+ // next one is for sure correct.
+ badText = "";
+ }
+ return badText;
+ },
+
+ toString: function() {
+ if ( this.trappedException instanceof org.antlr.runtime.MissingTokenException ) {
+ return "";
+ }
+ else if ( this.trappedException instanceof org.antlr.runtime.UnwantedTokenException ) {
+ return "";
+ }
+ else if ( this.trappedException instanceof org.antlr.runtime.MismatchedTokenException ) {
+ return "";
+ }
+ else if ( this.trappedException instanceof org.antlr.runtime.NoViableAltException ) {
+ return "";
+ }
+ return "";
+ }
+});
+/** A TreeAdaptor that works with any Tree implementation. */
+org.antlr.runtime.tree.BaseTreeAdaptor = function() {
+ this.uniqueNodeID = 1;
+};
+
+org.antlr.runtime.tree.BaseTreeAdaptor.prototype = {
+ nil: function() {
+ return this.create(null);
+ },
+
+ /** create tree node that holds the start and stop tokens associated
+ * with an error.
+ *
+ * If you specify your own kind of tree nodes, you will likely have to
+ * override this method. CommonTree returns Token.INVALID_TOKEN_TYPE
+ * if no token payload but you might have to set token type for diff
+ * node type.
+ */
+ errorNode: function(input, start, stop, e) {
+ var t = new org.antlr.runtime.tree.CommonErrorNode(input, start, stop, e);
+ return t;
+ },
+
+ isNil: function(tree) {
+ return tree.isNil();
+ },
+
+ /** This is generic in the sense that it will work with any kind of
+ * tree (not just Tree interface). It invokes the adaptor routines
+ * not the tree node routines to do the construction.
+ */
+ dupTree: function(t, parent) {
+ if (arguments.length===1) {
+ parent = null;
+ }
+ if ( !t ) {
+ return null;
+ }
+ var newTree = this.dupNode(t);
+ // ensure new subtree root has parent/child index set
+ this.setChildIndex(newTree, this.getChildIndex(t)); // same index in new tree
+ this.setParent(newTree, parent);
+ var n = this.getChildCount(t),
+ i, child, newSubTree;
+ for (i = 0; i < n; i++) {
+ child = this.getChild(t, i);
+ newSubTree = this.dupTree(child, t);
+ this.addChild(newTree, newSubTree);
+ }
+ return newTree;
+ },
+
+ /** Add a child to the tree t. If child is a flat tree (a list), make all
+ * in list children of t. Warning: if t has no children, but child does
+ * and child isNil then you can decide it is ok to move children to t via
+ * t.children = child.children; i.e., without copying the array. Just
+ * make sure that this is consistent with have the user will build
+ * ASTs.
+ */
+ addChild: function(t, child) {
+ if ( t && org.antlr.lang.isValue(child) ) {
+ t.addChild(child);
+ }
+ },
+
+ /** If oldRoot is a nil root, just copy or move the children to newRoot.
+ * If not a nil root, make oldRoot a child of newRoot.
+ *
+ * old=^(nil a b c), new=r yields ^(r a b c)
+ * old=^(a b c), new=r yields ^(r ^(a b c))
+ *
+ * If newRoot is a nil-rooted single child tree, use the single
+ * child as the new root node.
+ *
+ * old=^(nil a b c), new=^(nil r) yields ^(r a b c)
+ * old=^(a b c), new=^(nil r) yields ^(r ^(a b c))
+ *
+ * If oldRoot was null, it's ok, just return newRoot (even if isNil).
+ *
+ * old=null, new=r yields r
+ * old=null, new=^(nil r) yields ^(nil r)
+ *
+ * Return newRoot. Throw an exception if newRoot is not a
+ * simple node or nil root with a single child node--it must be a root
+ * node. If newRoot is ^(nil x) return x as newRoot.
+ *
+ * Be advised that it's ok for newRoot to point at oldRoot's
+ * children; i.e., you don't have to copy the list. We are
+ * constructing these nodes so we should have this control for
+ * efficiency.
+ */
+ becomeRoot: function(newRoot, oldRoot) {
+ if (newRoot instanceof org.antlr.runtime.CommonToken || !newRoot) {
+ newRoot = this.create(newRoot);
+ }
+
+ var newRootTree = newRoot,
+ oldRootTree = oldRoot;
+ if ( !oldRoot ) {
+ return newRoot;
+ }
+ // handle ^(nil real-node)
+ if ( newRootTree.isNil() ) {
+ if ( newRootTree.getChildCount()>1 ) {
+ // TODO: make tree run time exceptions hierarchy
+ throw new Error("more than one node as root (TODO: make exception hierarchy)");
+ }
+ newRootTree = newRootTree.getChild(0);
+ }
+ // add oldRoot to newRoot; addChild takes care of case where oldRoot
+ // is a flat list (i.e., nil-rooted tree). All children of oldRoot
+ // are added to newRoot.
+ newRootTree.addChild(oldRootTree);
+ return newRootTree;
+ },
+
+ /** Transform ^(nil x) to x */
+ rulePostProcessing: function(root) {
+ var r = root;
+ if ( r && r.isNil() ) {
+ if ( r.getChildCount()===0 ) {
+ r = null;
+ }
+ else if ( r.getChildCount()===1 ) {
+ r = r.getChild(0);
+ // whoever invokes rule will set parent and child index
+ r.setParent(null);
+ r.setChildIndex(-1);
+ }
+ }
+ return r;
+ },
+
+ create: function(tokenType, fromToken) {
+ var text, t;
+ if (arguments.length===2) {
+ if (org.antlr.lang.isString(arguments[1])) {
+ text = arguments[1];
+ fromToken = this.createToken(tokenType, text);
+ t = this.create(fromToken);
+ return t;
+ } else {
+ fromToken = this.createToken(fromToken);
+ fromToken.setType(tokenType);
+ t = this.create(fromToken);
+ return t;
+ }
+ } else if (arguments.length===3) {
+ text = arguments[2];
+ fromToken = this.createToken(fromToken);
+ fromToken.setType(tokenType);
+ fromToken.setText(text);
+ t = this.create(fromToken);
+ return t;
+ }
+ },
+
+ getType: function(t) {
+ t.getType();
+ return 0;
+ },
+
+ setType: function(t, type) {
+ throw new Error("don't know enough about Tree node");
+ },
+
+ getText: function(t) {
+ return t.getText();
+ },
+
+ setText: function(t, text) {
+ throw new Error("don't know enough about Tree node");
+ },
+
+ getChild: function(t, i) {
+ return t.getChild(i);
+ },
+
+ setChild: function(t, i, child) {
+ t.setChild(i, child);
+ },
+
+ deleteChild: function(t, i) {
+ return t.deleteChild(i);
+ },
+
+ getChildCount: function(t) {
+ return t.getChildCount();
+ },
+
+ getUniqueID: function(node) {
+ if ( !this.treeToUniqueIDMap ) {
+ this.treeToUniqueIDMap = {};
+ }
+ var prevID = this.treeToUniqueIDMap[node];
+ if ( org.antlr.lang.isValue(prevID) ) {
+ return prevID;
+ }
+ var ID = this.uniqueNodeID;
+ this.treeToUniqueIDMap[node] = ID;
+ this.uniqueNodeID++;
+ return ID;
+ // GC makes these nonunique:
+ // return System.identityHashCode(node);
+ }
+};
+/** A TreeAdaptor that works with any Tree implementation. It provides
+ * really just factory methods; all the work is done by BaseTreeAdaptor.
+ * If you would like to have different tokens created than ClassicToken
+ * objects, you need to override this and then set the parser tree adaptor to
+ * use your subclass.
+ *
+ * To get your parser to build nodes of a different type, override
+ * create(Token).
+ */
+org.antlr.runtime.tree.CommonTreeAdaptor = function() {};
+
+org.antlr.lang.extend(org.antlr.runtime.tree.CommonTreeAdaptor,
+ org.antlr.runtime.tree.BaseTreeAdaptor, {
+ /** Duplicate a node. This is part of the factory;
+ * override if you want another kind of node to be built.
+ *
+ * I could use reflection to prevent having to override this
+ * but reflection is slow.
+ */
+ dupNode: function(t) {
+ if ( !org.antlr.lang.isValue(t) ) {
+ return null;
+ }
+ return t.dupNode();
+ },
+
+ create: function(payload) {
+ if (arguments.length>1) {
+ return org.antlr.runtime.tree.CommonTreeAdaptor.superclass.create.apply(this, arguments);
+ }
+ return new org.antlr.runtime.tree.CommonTree(payload);
+ },
+
+ /** Tell me how to create a token for use with imaginary token nodes.
+ * For example, there is probably no input symbol associated with imaginary
+ * token DECL, but you need to create it as a payload or whatever for
+ * the DECL node as in ^(DECL type ID).
+ *
+ * If you care what the token payload objects' type is, you should
+ * override this method and any other createToken variant.
+ *
+ * Tell me how to create a token for use with imaginary token nodes.
+ * For example, there is probably no input symbol associated with imaginary
+ * token DECL, but you need to create it as a payload or whatever for
+ * the DECL node as in ^(DECL type ID).
+ *
+ * This is a variant of createToken where the new token is derived from
+ * an actual real input token. Typically this is for converting '{'
+ * tokens to BLOCK etc... You'll see
+ *
+ * r : lc='{' ID+ '}' -> ^(BLOCK[$lc] ID+) ;
+ *
+ * If you care what the token payload objects' type is, you should
+ * override this method and any other createToken variant.
+ */
+ createToken: function(fromToken) {
+ if (arguments.length===2) {
+ return new org.antlr.runtime.CommonToken(arguments[0], arguments[1]);
+ } else {
+ return new org.antlr.runtime.CommonToken(arguments[0]);
+ }
+ },
+
+ /** Track start/stop token for subtree root created for a rule.
+ * Only works with Tree nodes. For rules that match nothing,
+ * seems like this will yield start=i and stop=i-1 in a nil node.
+ * Might be useful info so I'll not force to be i..i.
+ */
+ setTokenBoundaries: function(t, startToken, stopToken) {
+ if ( !org.antlr.lang.isValue(t) ) {
+ return;
+ }
+ var start = 0,
+ stop = 0;
+ if ( org.antlr.lang.isValue(startToken) ) {
+ if (startToken.getTokenIndex) {
+ start = startToken.getTokenIndex();
+ } else if (startToken.getStartIndex) {
+ start = startToken.getStartIndex();
+ } else {
+ start = startToken.getTokenStartIndex();
+ }
+ }
+ if ( org.antlr.lang.isValue(stopToken) ) {
+ if (stop.getTokenIndex) {
+ stop = stopToken.getTokenIndex();
+ } else if (stopToken.getStopIndex) {
+ stop = stopToken.getStopIndex();
+ } else {
+ stop = stopToken.getTokenStopIndex();
+ }
+ }
+ t.setTokenStartIndex(start);
+ t.setTokenStopIndex(stop);
+ },
+
+ getTokenStartIndex: function(t) {
+ if (!t) {
+ return -1;
+ }
+ return t.getTokenStartIndex();
+ },
+
+ getTokenStopIndex: function(t) {
+ if (!t) {
+ return -1;
+ }
+ return t.getTokenStopIndex();
+ },
+
+ getText: function(t) {
+ if (!t) {
+ return null;
+ }
+ return t.getText();
+ },
+
+ getType: function(t) {
+ if (!t) {
+ return org.antlr.runtime.Token.INVALID_TOKEN_TYPE;
+ }
+ return t.getType();
+ },
+
+ /** What is the Token associated with this node? If
+ * you are not using CommonTree, then you must
+ * override this in your own adaptor.
+ */
+ getToken: function(t) {
+ if ( t instanceof org.antlr.runtime.tree.CommonTree ) {
+ return t.getToken();
+ }
+ return null; // no idea what to do
+ },
+
+ getChild: function(t, i) {
+ if (!t) {
+ return null;
+ }
+ return t.getChild(i);
+ },
+
+ getChildCount: function(t) {
+ if (!t) {
+ return 0;
+ }
+ return t.getChildCount();
+ },
+
+ getParent: function(t) {
+ return t.getParent();
+ },
+
+ setParent: function(t, parent) {
+ t.setParent(parent);
+ },
+
+ getChildIndex: function(t) {
+ return t.getChildIndex();
+ },
+
+ setChildIndex: function(t, index) {
+ t.setChildIndex(index);
+ },
+
+ replaceChildren: function(parent, startChildIndex, stopChildIndex, t) {
+ if ( parent ) {
+ parent.replaceChildren(startChildIndex, stopChildIndex, t);
+ }
+ }
+});
+/**
+ * A stream of characters created from a JavaScript string that in turn gets
+ * fed to a lexer.
+ * @class
+ * @param {String} data the string from which this stream will be created.
+ */
+org.antlr.runtime.ANTLRStringStream = function(data) {
+ /**
+ * Location in the stream.
+ * Ranges from 0 to (stream length - 1).
+ * @private
+ * @type Number
+ */
+ this.p = 0;
+
+ /**
+ * The current line in the input.
+ * Ranges from 1 to (number of lines).
+ * @private
+ * @type Number
+ */
+ this.line = 1;
+
+ /**
+ * The index of the character relative to the beginning of the line.
+ * Ranges from 0 to (length of line - 1).
+ * @private
+ * @type Number
+ */
+ this.charPositionInLine = 0;
+
+ /**
+ * Tracks how deep mark() calls are nested
+ * @private
+ * @type Number
+ */
+ this.markDepth = 0;
+
+ /**
+ * An Array of objects that tracks the stream state
+ * values line, charPositionInLine, and p that can change as you
+ * move through the input stream. Indexed from 1..markDepth.
+ * A null is kept at index 0. Created upon first call to mark().
+ * @private
+ * @type Array
+ */
+ this.markers = null;
+
+ /**
+ * Track the last mark() call result value for use in rewind().
+ * @private
+ * @type Number
+ */
+ this.lastMarker = null;
+
+ /**
+ * The data being scanned.
+ * @private
+ * @type String
+ */
+ this.data = data;
+
+ /**
+ * The number of characters in the stream.
+ * @private
+ * @type Number
+ */
+ this.n = data.length;
+};
+
+org.antlr.runtime.ANTLRStringStream.prototype = {
+ /**
+ * Reset the stream so that it's in the same state it was
+ * when the object was created *except* the data array is not
+ * touched.
+ */
+ reset: function() {
+ this.p = 0;
+ this.line = 1;
+ this.charPositionInLine = 0;
+ this.markDepth = 0;
+ },
+
+ /**
+ * Consume the next character of data in the stream.
+ */
+ consume: function() {
+ if ( this.p < this.n ) {
+ this.charPositionInLine++;
+ if ( this.data.charAt(this.p)==="\n" ) {
+ this.line++;
+ this.charPositionInLine=0;
+ }
+ this.p++;
+ }
+ },
+
+ /**
+ * Get character at current input pointer + i ahead where i=1 is next int.
+ * Negative indexes are allowed. LA(-1) is previous token (token
+ * just matched). LA(-i) where i is before first token should
+ * yield -1, invalid char / EOF.
+ * @param {Number} i non-zero amount of lookahead or lookback
+ * @returns {String|Number} The charcter at the specified position or -1 if
+ * you fell off either end of the stream.
+ */
+ LA: function(i) {
+ if ( i<0 ) {
+ i++; // e.g., translate LA(-1) to use offset i=0; then data[p+0-1]
+ }
+
+ var new_pos = this.p+i-1;
+ if (new_pos>=this.n || new_pos<0) {
+ return org.antlr.runtime.CharStream.EOF;
+ }
+ return this.data.charAt(new_pos);
+ },
+
+
+ /**
+ * Return the current input symbol index 0..n where n indicates the
+ * last symbol has been read. The index is the index of char to
+ * be returned from LA(1) (i.e. the one about to be consumed).
+ * @returns {Number} the index of the current input symbol
+ */
+ index: function() {
+ return this.p;
+ },
+
+ /**
+ * The length of this stream.
+ * @returns {Number} the length of this stream.
+ */
+ size: function() {
+ return this.n;
+ },
+
+ /**
+ * Tell the stream to start buffering if it hasn't already. Return
+ * current input position, index(), or some other marker so that
+ * when passed to rewind() you get back to the same spot.
+ * rewind(mark()) should not affect the input cursor. The Lexer
+ * tracks line/col info as well as input index so its markers are
+ * not pure input indexes. Same for tree node streams.
+ *
+ * Marking is a mechanism for storing the current position of a stream
+ * in a stack. This corresponds with the predictive look-ahead mechanism
+ * used in Lexers.
+ * @returns {Number} the current size of the mark stack.
+ */
+ mark: function() {
+ if ( !this.markers ) {
+ this.markers = [];
+ this.markers.push(null); // depth 0 means no backtracking, leave blank
+ }
+ this.markDepth++;
+ var state = null;
+ if ( this.markDepth>=this.markers.length ) {
+ state = {};
+ this.markers.push(state);
+ }
+ else {
+ state = this.markers[this.markDepth];
+ }
+ state.p = this.p;
+ state.line = this.line;
+ state.charPositionInLine = this.charPositionInLine;
+ this.lastMarker = this.markDepth;
+ return this.markDepth;
+ },
+
+ /**
+ * Rewind to the input position of the last marker.
+ * Used currently only after a cyclic DFA and just
+ * before starting a sem/syn predicate to get the
+ * input position back to the start of the decision.
+ * Do not "pop" the marker off the state. mark(i)
+ * and rewind(i) should balance still. It is
+ * like invoking rewind(last marker) but it should not "pop"
+ * the marker off. It's like seek(last marker's input position).
+ * @param {Number} [m] the index in the mark stack to load instead of the
+ * last.
+ */
+ rewind: function(m) {
+ if (!org.antlr.lang.isNumber(m)) {
+ m = this.lastMarker;
+ }
+
+ var state = this.markers[m];
+ // restore stream state
+ this.seek(state.p);
+ this.line = state.line;
+ this.charPositionInLine = state.charPositionInLine;
+ this.release(m);
+ },
+
+ /**
+ * You may want to commit to a backtrack but don't want to force the
+ * stream to keep bookkeeping objects around for a marker that is
+ * no longer necessary. This will have the same behavior as
+ * rewind() except it releases resources without the backward seek.
+ * This must throw away resources for all markers back to the marker
+ * argument. So if you're nested 5 levels of mark(), and then release(2)
+ * you have to release resources for depths 2..5.
+ * @param {Number} marker the mark depth above which all mark states will
+ * be released.
+ */
+ release: function(marker) {
+ // unwind any other markers made after m and release m
+ this.markDepth = marker;
+ // release this marker
+ this.markDepth--;
+ },
+
+ /**
+ * Set the input cursor to the position indicated by index. This is
+ * normally used to seek ahead in the input stream. No buffering is
+ * required to do this unless you know your stream will use seek to
+ * move backwards such as when backtracking.
+ *
+ * This is different from rewind in its multi-directional
+ * requirement and in that its argument is strictly an input cursor
+ * (index).
+ *
+ * For char streams, seeking forward must update the stream state such
+ * as line number. For seeking backwards, you will be presumably
+ * backtracking using the mark/rewind mechanism that restores state and
+ * so this method does not need to update state when seeking backwards.
+ *
+ * Currently, this method is only used for efficient backtracking using
+ * memoization, but in the future it may be used for incremental
+ * parsing.
+ *
+ * The index is 0..n-1. A seek to position i means that LA(1) will
+ * return the ith symbol. So, seeking to 0 means LA(1) will return the
+ * first element in the stream.
+ *
+ * Esentially this method method moves the input position,
+ * {@link #consume}-ing data if necessary.
+ *
+ * @param {Number} index the position to seek to.
+ */
+ seek: function(index) {
+ if ( index<=this.p ) {
+ this.p = index; // just jump; don't update stream state (line, ...)
+ return;
+ }
+ // seek forward, consume until p hits index
+ while ( this.p= 2) {
+ this.channel = channel;
+ } else if (arguments.length === 1) {
+ this.tokenSource = tokenSource;
+ }
+};
+
+org.antlr.runtime.CommonTokenStream.prototype = {
+ /** Reset this token stream by setting its token source. */
+ setTokenSource: function(tokenSource) {
+ this.tokenSource = tokenSource;
+ this.tokens = [];
+ this.p = -1;
+ this.channel = org.antlr.runtime.Token.DEFAULT_CHANNEL;
+ },
+
+ /** Load all tokens from the token source and put in tokens.
+ * This is done upon first LT request because you might want to
+ * set some token type / channel overrides before filling buffer.
+ */
+ fillBuffer: function() {
+ var index = 0,
+ t = this.tokenSource.nextToken(),
+ discard,
+ channelI;
+ while ( org.antlr.lang.isValue(t) &&
+ t.getType()!=org.antlr.runtime.CharStream.EOF )
+ {
+ discard = false;
+ // is there a channel override for token type?
+ if ( this.channelOverrideMap ) {
+ channelI = this.channelOverrideMap[t.getType()];
+ if ( org.antlr.lang.isValue(channelI) ) {
+ t.setChannel(channelI);
+ }
+ }
+ if ( this.discardSet && this.discardSet[t.getType()] )
+ {
+ discard = true;
+ }
+ else if ( this.v_discardOffChannelTokens &&
+ t.getChannel()!=this.channel )
+ {
+ discard = true;
+ }
+ if ( !discard ) {
+ t.setTokenIndex(index);
+ this.tokens.push(t);
+ index++;
+ }
+ t = this.tokenSource.nextToken();
+ }
+ // leave p pointing at first token on channel
+ this.p = 0;
+ this.p = this.skipOffTokenChannels(this.p);
+ },
+
+ /** Move the input pointer to the next incoming token. The stream
+ * must become active with LT(1) available. consume() simply
+ * moves the input pointer so that LT(1) points at the next
+ * input symbol. Consume at least one token.
+ *
+ * Walk past any token not on the channel the parser is listening to.
+ */
+ consume: function() {
+ if ( this.p=0 && (this.tokens[i]).getChannel()!=this.channel ) {
+ i--;
+ }
+ return i;
+ },
+
+ /** A simple filter mechanism whereby you can tell this token stream
+ * to force all tokens of type ttype to be on channel. For example,
+ * when interpreting, we cannot exec actions so we need to tell
+ * the stream to force all WS and NEWLINE to be a different, ignored
+ * channel.
+ */
+ setTokenTypeChannel: function(ttype, channel) {
+ if ( !this.channelOverrideMap ) {
+ this.channelOverrideMap = {};
+ }
+ this.channelOverrideMap[ttype] = channel;
+ },
+
+ discardTokenType: function(ttype) {
+ if ( !this.discardSet ) {
+ this.discardSet = {};
+ }
+ this.discardSet[ttype] = true;
+ },
+
+ discardOffChannelTokens: function(b) {
+ this.v_discardOffChannelTokens = b;
+ },
+
+ /** Given a start and stop index, return a List of all tokens in
+ * the token type BitSet. Return null if no tokens were found. This
+ * method looks at both on and off channel tokens.
+ */
+ getTokens: function(start, stop, types) {
+ if ( this.p === -1 ) {
+ this.fillBuffer();
+ }
+
+ if (arguments.length===0) {
+ return this.tokens;
+ }
+
+ if (org.antlr.lang.isArray(types)) {
+ types = new org.antlr.runtime.BitSet(types);
+ } else if (org.antlr.lang.isNumber(types)) {
+ types = org.antlr.runtime.BitSet.of(types);
+ }
+
+ if ( stop>=this.tokens.length ) {
+ stop=this.tokens.length-1;
+ }
+ if ( start<0 ) {
+ start=0;
+ }
+ if ( start>stop ) {
+ return null;
+ }
+
+ // list = tokens[start:stop]:{Token t, t.getType() in types}
+ var filteredTokens = [],
+ i,
+ t;
+ for (i=start; i<=stop; i++) {
+ t = this.tokens[i];
+ if ( !this.types || types.member(t.getType()) ) {
+ filteredTokens.push(t);
+ }
+ }
+ if ( filteredTokens.length===0 ) {
+ filteredTokens = null;
+ }
+ return filteredTokens;
+ },
+
+ /** Get the ith token from the current position 1..n where k=1 is the
+ * first symbol of lookahead.
+ */
+ LT: function(k) {
+ if ( this.p === -1 ) {
+ this.fillBuffer();
+ }
+ if ( k===0 ) {
+ return null;
+ }
+ if ( k<0 ) {
+ return this.LB(-1*k);
+ }
+ if ( (this.p+k-1) >= this.tokens.length ) {
+ return org.antlr.runtime.Token.EOF_TOKEN;
+ }
+ var i = this.p,
+ n = 1;
+ // find k good tokens
+ while ( n=this.tokens.length ) {
+ return org.antlr.runtime.Token.EOF_TOKEN;
+ }
+ return this.tokens[i];
+ },
+
+ /** Look backwards k tokens on-channel tokens */
+ LB: function(k) {
+ if ( this.p === -1 ) {
+ this.fillBuffer();
+ }
+ if ( k===0 ) {
+ return null;
+ }
+ if ( (this.p-k)<0 ) {
+ return null;
+ }
+
+ var i = this.p,
+ n = 1;
+ // find k good tokens looking backwards
+ while ( n<=k ) {
+ // skip off-channel tokens
+ i = this.skipOffTokenChannelsReverse(i-1); // leave p on valid token
+ n++;
+ }
+ if ( i<0 ) {
+ return null;
+ }
+ return this.tokens[i];
+ },
+
+ /** Return absolute token i; ignore which channel the tokens are on;
+ * that is, count all tokens not just on-channel tokens.
+ */
+ get: function(i) {
+ return this.tokens[i];
+ },
+
+ LA: function(i) {
+ return this.LT(i).getType();
+ },
+
+ mark: function() {
+ if ( this.p === -1 ) {
+ this.fillBuffer();
+ }
+ this.lastMarker = this.index();
+ return this.lastMarker;
+ },
+
+ release: function(marker) {
+ // no resources to release
+ },
+
+ size: function() {
+ return this.tokens.length;
+ },
+
+ index: function() {
+ return this.p;
+ },
+
+ rewind: function(marker) {
+ if (!org.antlr.lang.isNumber(marker)) {
+ marker = this.lastMarker;
+ }
+ this.seek(marker);
+ },
+
+ reset: function() {
+ this.p = -1;
+ this.lastMarker = 0;
+ },
+
+ seek: function(index) {
+ this.p = index;
+ },
+
+ getTokenSource: function() {
+ return this.tokenSource;
+ },
+
+ getSourceName: function() {
+ return this.getTokenSource().getSourceName();
+ },
+
+ toString: function(start, stop) {
+ if (arguments.length===0) {
+ if ( this.p === -1 ) {
+ this.fillBuffer();
+ }
+ start = 0;
+ stop = this.tokens.length-1;
+ }
+
+ if (!org.antlr.lang.isNumber(start) && !org.antlr.lang.isNumber(stop)) {
+ if ( org.antlr.lang.isValue(start) && org.antlr.lang.isValue(stop) ) {
+ start = start.getTokenIndex();
+ stop = stop.getTokenIndex();
+ } else {
+ return null;
+ }
+ }
+
+ var buf = "",
+ i;
+
+ if ( start<0 || stop<0 ) {
+ return null;
+ }
+ if ( this.p == -1 ) {
+ this.fillBuffer();
+ }
+ if ( stop>=this.tokens.length ) {
+ stop = this.tokens.length-1;
+ }
+ for (i = start; i <= stop; i++) {
+ t = this.tokens[i];
+ buf = buf + this.tokens[i].getText();
+ }
+ return buf;
+ }
+};
+/* Useful for dumping out the input stream after doing some
+ * augmentation or other manipulations.
+ *
+ * You can insert stuff, replace, and delete chunks. Note that the
+ * operations are done lazily--only if you convert the buffer to a
+ * String. This is very efficient because you are not moving data around
+ * all the time. As the buffer of tokens is converted to strings, the
+ * toString() method(s) check to see if there is an operation at the
+ * current index. If so, the operation is done and then normal String
+ * rendering continues on the buffer. This is like having multiple Turing
+ * machine instruction streams (programs) operating on a single input tape. :)
+ *
+ * Since the operations are done lazily at toString-time, operations do not
+ * screw up the token index values. That is, an insert operation at token
+ * index i does not change the index values for tokens i+1..n-1.
+ *
+ * Because operations never actually alter the buffer, you may always get
+ * the original token stream back without undoing anything. Since
+ * the instructions are queued up, you can easily simulate transactions and
+ * roll back any changes if there is an error just by removing instructions.
+ * For example,
+ *
+ * CharStream input = new ANTLRFileStream("input");
+ * TLexer lex = new TLexer(input);
+ * TokenRewriteStream tokens = new TokenRewriteStream(lex);
+ * T parser = new T(tokens);
+ * parser.startRule();
+ *
+ * Then in the rules, you can execute
+ * Token t,u;
+ * ...
+ * input.insertAfter(t, "text to put after t");}
+ * input.insertAfter(u, "text after u");}
+ * System.out.println(tokens.toString());
+ *
+ * Actually, you have to cast the 'input' to a TokenRewriteStream. :(
+ *
+ * You can also have multiple "instruction streams" and get multiple
+ * rewrites from a single pass over the input. Just name the instruction
+ * streams and use that name again when printing the buffer. This could be
+ * useful for generating a C file and also its header file--all from the
+ * same buffer:
+ *
+ * tokens.insertAfter("pass1", t, "text to put after t");}
+ * tokens.insertAfter("pass2", u, "text after u");}
+ * System.out.println(tokens.toString("pass1"));
+ * System.out.println(tokens.toString("pass2"));
+ *
+ * If you don't use named rewrite streams, a "default" stream is used as
+ * the first example shows.
+ */
+
+org.antlr.runtime.TokenRewriteStream = function() {
+ var sup = org.antlr.runtime.TokenRewriteStream.superclass;
+
+ /** You may have multiple, named streams of rewrite operations.
+ * I'm calling these things "programs."
+ * Maps String (name) -> rewrite (List)
+ */
+ this.programs = null;
+
+ /** Map String (program name) -> Integer index */
+ this.lastRewriteTokenIndexes = null;
+
+
+ if (arguments.length===0) {
+ this.init();
+ } else {
+ sup.constructor.apply(this, arguments);
+ this.init();
+ }
+};
+
+(function(){
+var trs = org.antlr.runtime.TokenRewriteStream;
+
+org.antlr.lang.augmentObject(trs, {
+ DEFAULT_PROGRAM_NAME: "default",
+ PROGRAM_INIT_SIZE: 100,
+ MIN_TOKEN_INDEX: 0
+});
+
+//
+// Define the rewrite operation hierarchy
+//
+
+trs.RewriteOperation = function(index, text) {
+ this.index = index;
+ this.text = text;
+};
+
+/** Execute the rewrite operation by possibly adding to the buffer.
+ * Return the index of the next token to operate on.
+ */
+trs.RewriteOperation.prototype = {
+ execute: function(buf) {
+ return this.index;
+ },
+ toString: function() {
+ /*String opName = getClass().getName();
+ int $index = opName.indexOf('$');
+ opName = opName.substring($index+1, opName.length());
+ return opName+"@"+index+'"'+text+'"';*/
+ return this.text;
+ }
+};
+
+trs.InsertBeforeOp = function(index, text) {
+ trs.InsertBeforeOp.superclass.constructor.call(this, index, text);
+};
+org.antlr.lang.extend(trs.InsertBeforeOp, trs.RewriteOperation, {
+ execute: function(buf) {
+ buf.push(this.text);
+ return this.index;
+ }
+});
+
+/** I'm going to try replacing range from x..y with (y-x)+1 ReplaceOp
+ * instructions.
+ */
+trs.ReplaceOp = function(from, to, text) {
+ trs.ReplaceOp.superclass.constructor.call(this, from, text);
+ this.lastIndex = to;
+};
+org.antlr.lang.extend(trs.ReplaceOp, trs.RewriteOperation, {
+ execute: function(buf) {
+ if (org.antlr.lang.isValue(this.text)) {
+ buf.push(this.text);
+ }
+ return this.lastIndex+1;
+ }
+});
+
+trs.DeleteOp = function(from, to) {
+ trs.DeleteOp.superclass.constructor.call(this, from, to);
+};
+org.antlr.lang.extend(trs.DeleteOp, trs.ReplaceOp);
+
+org.antlr.lang.extend(trs, org.antlr.runtime.CommonTokenStream, {
+ init: function() {
+ this.programs = {};
+ this.programs[trs.DEFAULT_PROGRAM_NAME] = [];
+ this.lastRewriteTokenIndexes = {};
+ },
+
+ /** Rollback the instruction stream for a program so that
+ * the indicated instruction (via instructionIndex) is no
+ * longer in the stream. UNTESTED!
+ */
+ rollback: function() {
+ var programName,
+ instructionIndex;
+
+ if (arguments.length===1) {
+ programName = trs.DEFAULT_PROGRAM_NAME;
+ instructionIndex = arguments[0];
+ } else if (arguments.length===2) {
+ programName = arguments[0];
+ instructionIndex = arguments[1];
+ }
+ var is = this.programs[programName];
+ if (is) {
+ programs[programName] = is.slice(trs.MIN_TOKEN_INDEX, this.instructionIndex);
+ }
+ },
+
+ /** Reset the program so that no instructions exist */
+ deleteProgram: function(programName) {
+ programName = programName || trs.DEFAULT_PROGRAM_NAME;
+ this.rollback(programName, trs.MIN_TOKEN_INDEX);
+ },
+
+ /** Add an instruction to the rewrite instruction list ordered by
+ * the instruction number (use a binary search for efficiency).
+ * The list is ordered so that toString() can be done efficiently.
+ *
+ * When there are multiple instructions at the same index, the instructions
+ * must be ordered to ensure proper behavior. For example, a delete at
+ * index i must kill any replace operation at i. Insert-before operations
+ * must come before any replace / delete instructions. If there are
+ * multiple insert instructions for a single index, they are done in
+ * reverse insertion order so that "insert foo" then "insert bar" yields
+ * "foobar" in front rather than "barfoo". This is convenient because
+ * I can insert new InsertOp instructions at the index returned by
+ * the binary search. A ReplaceOp kills any previous replace op. Since
+ * delete is the same as replace with null text, i can check for
+ * ReplaceOp and cover DeleteOp at same time. :)
+ */
+ addToSortedRewriteList: function() {
+ var programName,
+ op;
+ if (arguments.length===1) {
+ programName = trs.DEFAULT_PROGRAM_NAME;
+ op = arguments[0];
+ } else if (arguments.length===2) {
+ programName = arguments[0];
+ op = arguments[1];
+ }
+
+ var rewrites = this.getProgram(programName);
+ var len, pos, searchOp, replaced, prevOp, i;
+ for (pos=0, len=rewrites.length; pos op.index) {
+ rewrites.splice(pos, 0, op);
+ break;
+ }
+ }
+ if (pos===len) {
+ rewrites.push(op);
+ }
+ },
+
+ insertAfter: function() {
+ var index, programName, text;
+ if (arguments.length===2) {
+ programName = trs.DEFAULT_PROGRAM_NAME;
+ index = arguments[0];
+ text = arguments[1];
+ } else if (arguments.length===3) {
+ programName = arguments[0];
+ index = arguments[1];
+ text = arguments[2];
+ }
+
+ if (index instanceof org.antlr.runtime.CommonToken) {
+ // index is a Token, grab it's stream index
+ index = index.index; // that's ugly
+ }
+
+ // insert after is the same as insert before the next index
+ this.insertBefore(programName, index+1, text);
+ },
+
+ insertBefore: function() {
+ var index, programName, text;
+ if (arguments.length===2) {
+ programName = trs.DEFAULT_PROGRAM_NAME;
+ index = arguments[0];
+ text = arguments[1];
+ } else if (arguments.length===3) {
+ programName = arguments[0];
+ index = arguments[1];
+ text = arguments[2];
+ }
+
+ if (index instanceof org.antlr.runtime.CommonToken) {
+ // index is a Token, grab it's stream index
+ index = index.index; // that's ugly
+ }
+
+ this.addToSortedRewriteList(
+ programName,
+ new trs.InsertBeforeOp(index,text)
+ );
+ },
+
+ replace: function() {
+ var programName, first, last, text;
+ if (arguments.length===2) {
+ programName = trs.DEFAULT_PROGRAM_NAME;
+ first = arguments[0];
+ last = arguments[0];
+ text = arguments[1];
+ } else if (arguments.length===3) {
+ programName = trs.DEFAULT_PROGRAM_NAME;
+ first = arguments[0];
+ last = arguments[1];
+ text = arguments[2];
+ } if (arguments.length===4) {
+ programName = arguments[0];
+ first = arguments[1];
+ last = arguments[2];
+ text = arguments[3];
+ }
+
+ if (first instanceof org.antlr.runtime.CommonToken) {
+ first = first.index;
+ }
+
+ if (last instanceof org.antlr.runtime.CommonToken) {
+ last = last.index; // that's ugly
+ }
+
+ if ( first > last || last<0 || first<0 ) {
+ return;
+ }
+ this.addToSortedRewriteList(
+ programName,
+ new trs.ReplaceOp(first, last, text));
+ },
+
+ // !!! API Break: delete is a JS keyword, so using remove instead.
+ remove: function() {
+ // convert arguments to a real array
+ var args=[], i=arguments.length-1;
+ while (i>=0) {
+ args[i] = arguments[i];
+ i--;
+ }
+
+ args.push("");
+ this.replace.apply(this, args);
+ },
+
+ getLastRewriteTokenIndex: function(programName) {
+ programName = programName || trs.DEFAULT_PROGRAM_NAME;
+ return this.lastRewriteTokenIndexes[programName] || -1;
+ },
+
+ setLastRewriteTokenIndex: function(programName, i) {
+ this.lastRewriteTokenIndexes[programName] = i;
+ },
+
+ getProgram: function(name) {
+ var is = this.programs[name];
+ if ( !is ) {
+ is = this.initializeProgram(name);
+ }
+ return is;
+ },
+
+ initializeProgram: function(name) {
+ var is = [];
+ this.programs[name] = is;
+ return is;
+ },
+
+ toOriginalString: function(start, end) {
+ if (!org.antlr.lang.isNumber(start)) {
+ start = trs.MIN_TOKEN_INDEX;
+ }
+ if (!org.antlr.lang.isNumber(end)) {
+ end = this.size()-1;
+ }
+
+ var buf = [], i;
+ for (i=start; i>=trs.MIN_TOKEN_INDEX && i<=end && i=trs.MIN_TOKEN_INDEX &&
+ tokenCursor<=end &&
+ tokenCursor=trs.MIN_TOKEN_INDEX && i<=end && i0 ) {
+ this.addNavigationNode(org.antlr.runtime.Token.DOWN);
+ }
+ // and now add all its children
+ var c, child;
+ for (c=0; c0 ) {
+ this.addNavigationNode(org.antlr.runtime.Token.UP);
+ }
+
+ if (reset_p) {
+ this.p = 0; // buffer of nodes intialized now
+ }
+ },
+
+ getNodeIndex: function(node) {
+ if ( this.p==-1 ) {
+ this.fillBuffer();
+ }
+ var i, t;
+ for (i=0; i= this.nodes.length ) {
+ return this.eof;
+ }
+ return this.nodes[this.p+k-1];
+ },
+
+ getCurrentSymbol: function() { return this.LT(1); },
+
+ /** Look backwards k nodes */
+ LB: function(k) {
+ if ( k===0 ) {
+ return null;
+ }
+ if ( (this.p-k)<0 ) {
+ return null;
+ }
+ return this.nodes[this.p-k];
+ },
+
+ getTreeSource: function() {
+ return this.root;
+ },
+
+ getSourceName: function() {
+ return this.getTokenStream().getSourceName();
+ },
+
+ getTokenStream: function() {
+ return this.tokens;
+ },
+
+ setTokenStream: function(tokens) {
+ this.tokens = tokens;
+ },
+
+ getTreeAdaptor: function() {
+ return this.adaptor;
+ },
+
+ setTreeAdaptor: function(adaptor) {
+ this.adaptor = adaptor;
+ },
+
+ hasUniqueNavigationNodes: function() {
+ return this.uniqueNavigationNodes;
+ },
+
+ setUniqueNavigationNodes: function(uniqueNavigationNodes) {
+ this.uniqueNavigationNodes = uniqueNavigationNodes;
+ },
+
+ consume: function() {
+ if ( this.p===-1 ) {
+ this.fillBuffer();
+ }
+ this.p++;
+ },
+
+ LA: function(i) {
+ return this.adaptor.getType(this.LT(i));
+ },
+
+ mark: function() {
+ if ( this.p===-1 ) {
+ this.fillBuffer();
+ }
+ this.lastMarker = this.index();
+ return this.lastMarker;
+ },
+
+ release: function(marker) {
+ // no resources to release
+ },
+
+ index: function() {
+ return this.p;
+ },
+
+ rewind: function(marker) {
+ if (!org.antlr.lang.isNumber(marker)) {
+ marker = this.lastMarker;
+ }
+ this.seek(marker);
+ },
+
+ seek: function(index) {
+ if ( this.p===-1 ) {
+ this.fillBuffer();
+ }
+ this.p = index;
+ },
+
+ /** Make stream jump to a new location, saving old location.
+ * Switch back with pop().
+ */
+ push: function(index) {
+ if ( !this.calls ) {
+ this.calls = [];
+ }
+ this.calls.push(this.p); // save current index
+ this.seek(index);
+ },
+
+ /** Seek back to previous index saved during last push() call.
+ * Return top of stack (return index).
+ */
+ pop: function() {
+ var ret = this.calls.pop();
+ this.seek(ret);
+ return ret;
+ },
+
+ reset: function() {
+ this.p = -1;
+ this.lastMarker = 0;
+ if (this.calls) {
+ this.calls = [];
+ }
+ },
+
+ size: function() {
+ if ( this.p===-1 ) {
+ this.fillBuffer();
+ }
+ return this.nodes.length;
+ },
+
+ iterator: function() {
+ if ( this.p===-1 ) {
+ this.fillBuffer();
+ }
+ return this.StreamIterator();
+ },
+
+ replaceChildren: function(parent, startChildIndex, stopChildIndex, t) {
+ if ( parent ) {
+ this.adaptor.replaceChildren(parent, startChildIndex, stopChildIndex, t);
+ }
+ },
+
+ /** Debugging */
+ toTokenString: function(start, stop) {
+ if ( this.p===-1 ) {
+ this.fillBuffer();
+ }
+ var buf='', i, t;
+ for (i = start; i < this.nodes.length && i <= stop; i++) {
+ t = this.nodes[i];
+ buf += " "+this.adaptor.getToken(t);
+ }
+ return buf;
+ },
+
+ /** Used for testing, just return the token type stream */
+ toString: function(start, stop) {
+ var buf = "",
+ text,
+ t,
+ i;
+ if (arguments.length===0) {
+ if ( this.p===-1 ) {
+ this.fillBuffer();
+ }
+ for (i = 0; i < this.nodes.length; i++) {
+ t = this.nodes[i];
+ buf += " ";
+ buf += this.adaptor.getType(t);
+ }
+ return buf;
+ } else {
+ if ( !org.antlr.lang.isNumber(start) || !org.antlr.lang.isNumber(stop) ) {
+ return null;
+ }
+ if ( this.p===-1 ) {
+ this.fillBuffer();
+ }
+ //System.out.println("stop: "+stop);
+ if ( start instanceof org.antlr.runtime.tree.CommonTree ) {
+ //System.out.print("toString: "+((CommonTree)start).getToken()+", ");
+ } else {
+ //System.out.println(start);
+ }
+ if ( stop instanceof org.antlr.runtime.tree.CommonTree ) {
+ //System.out.println(((CommonTree)stop).getToken());
+ } else {
+ //System.out.println(stop);
+ }
+ // if we have the token stream, use that to dump text in order
+ var beginTokenIndex,
+ endTokenIndex;
+ if ( this.tokens ) {
+ beginTokenIndex = this.adaptor.getTokenStartIndex(start);
+ endTokenIndex = this.adaptor.getTokenStopIndex(stop);
+ // if it's a tree, use start/stop index from start node
+ // else use token range from start/stop nodes
+ if ( this.adaptor.getType(stop)===org.antlr.runtime.Token.UP ) {
+ endTokenIndex = this.adaptor.getTokenStopIndex(start);
+ }
+ else if ( this.adaptor.getType(stop)==org.antlr.runtime.Token.EOF )
+ {
+ endTokenIndex = this.size()-2; // don't use EOF
+ }
+ return this.tokens.toString(beginTokenIndex, endTokenIndex);
+ }
+ // walk nodes looking for start
+ t = null;
+ i = 0;
+ for (; i < this.nodes.length; i++) {
+ t = this.nodes[i];
+ if ( t===start ) {
+ break;
+ }
+ }
+ // now walk until we see stop, filling string buffer with text
+ buf = text = "";
+ t = this.nodes[i];
+ while ( t!==stop ) {
+ text = this.adaptor.getText(t);
+ if ( !org.antlr.lang.isString(text) ) {
+ text = " "+this.adaptor.getType(t).toString();
+ }
+ buf += text;
+ i++;
+ t = nodes[i];
+ }
+ // include stop node too
+ text = this.adaptor.getText(stop);
+ if ( !org.antlr.lang.isString(text) ) {
+ text = " "+this.adaptor.getType(stop).toString();
+ }
+ buf += text;
+ return buf;
+ }
+ }
+});
+/** A generic list of elements tracked in an alternative to be used in
+ * a -> rewrite rule. We need to subclass to fill in the next() method,
+ * which returns either an AST node wrapped around a token payload or
+ * an existing subtree.
+ *
+ * Once you start next()ing, do not try to add more elements. It will
+ * break the cursor tracking I believe.
+ *
+ * @see org.antlr.runtime.tree.RewriteRuleSubtreeStream
+ * @see org.antlr.runtime.tree.RewriteRuleTokenStream
+ *
+ * TODO: add mechanism to detect/puke on modification after reading from stream
+ */
+org.antlr.runtime.tree.RewriteRuleElementStream = function(adaptor, elementDescription, el) {
+ /** Cursor 0..n-1. If singleElement!=null, cursor is 0 until you next(),
+ * which bumps it to 1 meaning no more elements.
+ */
+ this.cursor = 0;
+
+ /** Once a node / subtree has been used in a stream, it must be dup'd
+ * from then on. Streams are reset after subrules so that the streams
+ * can be reused in future subrules. So, reset must set a dirty bit.
+ * If dirty, then next() always returns a dup.
+ *
+ * I wanted to use "naughty bit" here, but couldn't think of a way
+ * to use "naughty".
+ */
+ this.dirty = false;
+
+ this.elementDescription = elementDescription;
+ this.adaptor = adaptor;
+ if (el) {
+ if (org.antlr.lang.isArray(el)) {
+ this.singleElement = null;
+ this.elements = el;
+ } else {
+ this.add(el);
+ }
+ }
+};
+
+org.antlr.runtime.tree.RewriteRuleElementStream.prototype = {
+ /** Reset the condition of this stream so that it appears we have
+ * not consumed any of its elements. Elements themselves are untouched.
+ * Once we reset the stream, any future use will need duplicates. Set
+ * the dirty bit.
+ */
+ reset: function() {
+ this.cursor = 0;
+ this.dirty = true;
+ },
+
+ add: function(el) {
+ if ( !org.antlr.lang.isValue(el) ) {
+ return;
+ }
+ if ( this.elements ) { // if in list, just add
+ this.elements.push(el);
+ return;
+ }
+ if ( !org.antlr.lang.isValue(this.singleElement) ) { // no elements yet, track w/o list
+ this.singleElement = el;
+ return;
+ }
+ // adding 2nd element, move to list
+ this.elements = [];
+ this.elements.push(this.singleElement);
+ this.singleElement = null;
+ this.elements.push(el);
+ },
+
+ /** Return the next element in the stream. If out of elements, throw
+ * an exception unless size()==1. If size is 1, then return elements[0].
+ * Return a duplicate node/subtree if stream is out of elements and
+ * size==1. If we've already used the element, dup (dirty bit set).
+ */
+ nextTree: function() {
+ var n = this.size(),
+ el;
+ if ( this.dirty || (this.cursor>=n && n==1) ) {
+ // if out of elements and size is 1, dup
+ el = this._next();
+ return this.dup(el);
+ }
+ // test size above then fetch
+ el = this._next();
+ return el;
+ },
+
+ /** do the work of getting the next element, making sure that it's
+ * a tree node or subtree. Deal with the optimization of single-
+ * element list versus list of size > 1. Throw an exception
+ * if the stream is empty or we're out of elements and size>1.
+ * protected so you can override in a subclass if necessary.
+ */
+ _next: function() {
+ var n = this.size();
+ if (n===0) {
+ throw new org.antlr.runtime.tree.RewriteEmptyStreamException(this.elementDescription);
+ }
+ if ( this.cursor>= n) { // out of elements?
+ if ( n===1 ) { // if size is 1, it's ok; return and we'll dup
+ return this.toTree(this.singleElement);
+ }
+ // out of elements and size was not 1, so we can't dup
+ throw new org.antlr.runtime.tree.RewriteCardinalityException(this.elementDescription);
+ }
+ // we have elements
+ if ( org.antlr.lang.isValue(this.singleElement) ) {
+ this.cursor++; // move cursor even for single element list
+ return this.toTree(this.singleElement);
+ }
+ // must have more than one in list, pull from elements
+ var o = this.toTree(this.elements[this.cursor]);
+ this.cursor++;
+ return o;
+ },
+
+ /** Ensure stream emits trees; tokens must be converted to AST nodes.
+ * AST nodes can be passed through unmolested.
+ */
+ toTree: function(el) {
+ if (el && el.getTree) {
+ return el.getTree();
+ }
+ return el;
+ },
+
+ hasNext: function() {
+ return (org.antlr.lang.isValue(this.singleElement) && this.cursor < 1) ||
+ (this.elements && this.cursor < this.elements.length);
+ },
+
+ size: function() {
+ var n = 0;
+ if ( org.antlr.lang.isValue(this.singleElement) ) {
+ n = 1;
+ }
+ if ( this.elements ) {
+ return this.elements.length;
+ }
+ return n;
+ },
+
+ getDescription: function() {
+ return this.elementDescription;
+ }
+};
+/** Queues up nodes matched on left side of -> in a tree parser. This is
+ * the analog of RewriteRuleTokenStream for normal parsers.
+ */
+org.antlr.runtime.tree.RewriteRuleNodeStream = function(adaptor, elementDescription, el) {
+ org.antlr.runtime.tree.RewriteRuleNodeStream.superclass.constructor.apply(this, arguments);
+};
+
+org.antlr.lang.extend(org.antlr.runtime.tree.RewriteRuleNodeStream,
+ org.antlr.runtime.tree.RewriteRuleElementStream,
+{
+ nextNode: function() {
+ return this._next();
+ },
+
+ toTree: function(el) {
+ return this.adaptor.dupNode(el);
+ },
+
+ dup: function() {
+ // we dup every node, so don't have to worry about calling dup; short-
+ // circuited next() so it doesn't call.
+ throw new Error("dup can't be called for a node stream.");
+ }
+});
+org.antlr.runtime.tree.RewriteRuleTokenStream = function(adaptor, elementDescription, el) {
+ var sup = org.antlr.runtime.tree.RewriteRuleTokenStream.superclass;
+ sup.constructor.apply(this, arguments);
+};
+
+org.antlr.lang.extend(org.antlr.runtime.tree.RewriteRuleTokenStream,
+ org.antlr.runtime.tree.RewriteRuleElementStream, {
+ /** Get next token from stream and make a node for it */
+ nextNode: function() {
+ var t = this._next();
+ return this.adaptor.create(t);
+ },
+
+ nextToken: function() {
+ return this._next();
+ },
+
+ /** Don't convert to a tree unless they explicitly call nextTree.
+ * This way we can do hetero tree nodes in rewrite.
+ */
+ toTree: function(el) {
+ return el;
+ },
+
+ dup: function(el) {
+ throw new Error("dup can't be called for a token stream.");
+ }
+});
+org.antlr.runtime.tree.RewriteRuleSubtreeStream = function() {
+ var sup = org.antlr.runtime.tree.RewriteRuleSubtreeStream.superclass;
+ sup.constructor.apply(this, arguments);
+};
+
+org.antlr.lang.extend(org.antlr.runtime.tree.RewriteRuleSubtreeStream,
+ org.antlr.runtime.tree.RewriteRuleElementStream, {
+ /** Treat next element as a single node even if it's a subtree.
+ * This is used instead of next() when the result has to be a
+ * tree root node. Also prevents us from duplicating recently-added
+ * children; e.g., ^(type ID)+ adds ID to type and then 2nd iteration
+ * must dup the type node, but ID has been added.
+ *
+ * Referencing a rule result twice is ok; dup entire tree as
+ * we can't be adding trees as root; e.g., expr expr.
+ *
+ * Hideous code duplication here with super.next(). Can't think of
+ * a proper way to refactor. This needs to always call dup node
+ * and super.next() doesn't know which to call: dup node or dup tree.
+ */
+ nextNode: function() {
+ var n = this.size(),
+ el;
+ if ( this.dirty || (this.cursor>=n && n===1) ) {
+ // if out of elements and size is 1, dup (at most a single node
+ // since this is for making root nodes).
+ el = this._next();
+ return this.adaptor.dupNode(el);
+ }
+ // test size above then fetch
+ el = this._next();
+ return el;
+ },
+
+ dup: function(el) {
+ return this.adaptor.dupTree(el);
+ }
+});/** A generic recognizer that can handle recognizers generated from
+ * lexer, parser, and tree grammars. This is all the parsing
+ * support code essentially; most of it is error recovery stuff and
+ * backtracking.
+ *
+ * This class should not be instantiated directly. Instead, use one of its
+ * subclasses.
+ *
+ * @class
+ * @param {org.antlr.runtime.RecognizerSharedState} [state] optional state object
+ * with which to initialize this recognizer.
+ */
+org.antlr.runtime.BaseRecognizer = function(state) {
+ /** State of a lexer, parser, or tree parser are collected into a state
+ * object so the state can be shared. This sharing is needed to
+ * have one grammar import others and share same error variables
+ * and other state variables. It's a kind of explicit multiple
+ * inheritance via delegation of methods and shared state.
+ */
+ this.state = state || new org.antlr.runtime.RecognizerSharedState();
+};
+
+/* static vars, methods */
+org.antlr.lang.augmentObject(org.antlr.runtime.BaseRecognizer, {
+ MEMO_RULE_FAILED: -2,
+ MEMO_RULE_UNKNOWN: -1,
+ INITIAL_FOLLOW_STACK_SIZE: 100,
+ MEMO_RULE_FAILED_I: -2,
+ DEFAULT_TOKEN_CHANNEL: org.antlr.runtime.Token.DEFAULT_CHANNEL,
+ HIDDEN: org.antlr.runtime.Token.HIDDEN_CHANNEL,
+ NEXT_TOKEN_RULE_NAME: "nextToken"
+});
+
+org.antlr.runtime.BaseRecognizer.prototype = {
+ /** Reset the parser's state. Subclasses must rewinds the input stream */
+ reset: function() {
+ var i, len;
+
+ // wack everything related to error recovery
+ if (!this.state) {
+ return; // no shared state work to do
+ }
+ this.state._fsp = -1;
+ this.state.errorRecovery = false;
+ this.state.lastErrorIndex = -1;
+ this.state.failed = false;
+ this.state.syntaxErrors = 0;
+ // wack everything related to backtracking and memoization
+ this.state.backtracking = 0;
+ // wipe cache
+ if (this.state.ruleMemo) {
+ for (i=0, len=this.state.ruleMemo.length; iTo turn off single token insertion or deletion error
+ * recovery, override {@link #mismatchRecover} and have it call
+ * plain {@link #mismatch}, which does not recover. Then any error
+ * in a rule will cause an exception and immediate exit from
+ * rule. Rule would recover by resynchronizing to the set of
+ * symbols that can follow rule ref.
+ *
+ * @param {org.antlr.runtime.IntStream} input input stream to match against.
+ * @param {Number} ttype input type to match.
+ * @param {org.antlr.runtime.BitSet} [follow] set of tokens that can follow the
+ * matched token.
+ * @returns {Object} the matched symbol
+ */
+ match: function(input, ttype, follow) {
+ var matchedSymbol = this.getCurrentInputSymbol(input);
+ if ( input.LA(1)===ttype ) {
+ input.consume();
+ this.state.errorRecovery = false;
+ this.state.failed = false;
+ return matchedSymbol;
+ }
+ if ( this.state.backtracking>0 ) {
+ this.state.failed = true;
+ return matchedSymbol;
+ }
+ matchedSymbol = this.recoverFromMismatchedToken(input, ttype, follow);
+ return matchedSymbol;
+ },
+
+ /**
+ * Match any token.
+ * @param {org.antlr.runtime.IntStream} input input stream to match against.
+ */
+ matchAny: function(input) {
+ this.state.errorRecovery = false;
+ this.state.failed = false;
+ input.consume();
+ },
+
+ /**
+ * Is the following token (LA(2)) the unwanted type (ttype)?
+ * @param {org.antlr.runtime.IntStream} input input stream to match against.
+ * @param {Number} ttype the undesired token type.
+ * @returns {Boolean} true if and only if the following token is the
+ * unwanted type.
+ */
+ mismatchIsUnwantedToken: function(input, ttype) {
+ return input.LA(2)===ttype;
+ },
+
+ /**
+ * Does the stream appear to be missing a single token?
+ * @param {org.antlr.runtime.IntStream} input input stream to match against.
+ * @param {org.antlr.runtime.BitSet} [follow] set of tokens that can follow the
+ * matched token.
+ * @returns {Boolean} true if and only if it appears that the stream is
+ * missing a single token.
+ */
+ mismatchIsMissingToken: function(input, follow) {
+ if ( !follow ) {
+ // we have no information about the follow; we can only consume
+ // a single token and hope for the best
+ return false;
+ }
+ // compute what can follow this grammar element reference
+ if ( follow.member(org.antlr.runtime.Token.EOR_TOKEN_TYPE) ) {
+ if ( this.state._fsp>=0 ) { // remove EOR if we're not the start symbol
+ follow.remove(org.antlr.runtime.Token.EOR_TOKEN_TYPE);
+ }
+ var viableTokensFollowingThisRule = this.computeContextSensitiveRuleFOLLOW();
+ follow = follow.or(this.viableTokensFollowingThisRule);
+ }
+ // if current token is consistent with what could come after set
+ // then we know we're missing a token; error recovery is free to
+ // "insert" the missing token
+
+ // BitSet cannot handle negative numbers like -1 (EOF) so I leave EOR
+ // in follow set to indicate that the fall of the start symbol is
+ // in the set (EOF can follow).
+ if ( follow.member(input.LA(1)) ||
+ follow.member(org.antlr.runtime.Token.EOR_TOKEN_TYPE) )
+ {
+ return true;
+ }
+ return false;
+ },
+
+ /** Factor out what to do upon token mismatch so tree parsers can behave
+ * differently. Override and call {@link #mismatchRecover}
+ * to get single token insertion and deletion.
+ *
+ * @param {org.antlr.runtime.IntStream} input input stream to match against.
+ * @param {Number} ttype input type to match.
+ * @param {org.antlr.runtime.BitSet} [follow] set of tokens that can follow the
+ * matched token.
+ */
+ mismatch: function(input, ttype, follow) {
+ if ( this.mismatchIsUnwantedToken(input, ttype) ) {
+ throw new org.antlr.runtime.UnwantedTokenException(ttype, input);
+ } else if ( this.mismatchIsMissingToken(input, follow) ) {
+ throw new org.antlr.runtime.MissingTokenException(ttype, input, null);
+ }
+ throw new org.antlr.runtime.MismatchedTokenException(ttype, input);
+ },
+
+ /** Report a recognition problem.
+ *
+ * This method sets errorRecovery to indicate the parser is recovering
+ * not parsing. Once in recovery mode, no errors are generated.
+ * To get out of recovery mode, the parser must successfully match
+ * a token (after a resync). So it will go:
+ *
+ * error occurs
+ * enter recovery mode, report error
+ * consume until token found in resynch set
+ * try to resume parsing
+ * next match() will reset errorRecovery mode
+ *
+ *
+ * If you override, make sure to update this.state.syntaxErrors if you
+ * care about that.
+ * @param {org.antlr.runtime.RecognitionException} e the error to be reported.
+ */
+ reportError: function(e) {
+ // if we've already reported an error and have not matched a token
+ // yet successfully, don't report any errors.
+ if ( this.state.errorRecovery ) {
+ return;
+ }
+ this.state.syntaxErrors++;
+ this.state.errorRecovery = true;
+
+ this.displayRecognitionError(this.getTokenNames(), e);
+ },
+
+ /**
+ * Assemble recognition error message.
+ * @param {Array} tokenNames array of token names (strings).
+ * @param {org.antlr.runtime.RecognitionException} e the error to be reported.
+ */
+ displayRecognitionError: function(tokenNames, e) {
+ var hdr = this.getErrorHeader(e),
+ msg = this.getErrorMessage(e, tokenNames);
+ this.emitErrorMessage(hdr+" "+msg);
+ },
+
+ /**
+ * Create error header message. Format is line
+ * lineNumber:positionInLine .
+ * @param {org.antlr.runtime.RecognitionException} e the error to be reported.
+ * @returns {String} The error header.
+ */
+ getErrorHeader: function(e) {
+ /* handle null input */
+ if (!org.antlr.lang.isNumber(e.line)) {
+ e.line = 0;
+ }
+ return "line "+e.line+":"+e.charPositionInLine;
+ },
+
+ /**
+ * Override this method to change where error messages go.
+ * Defaults to "alert"-ing the error in browsers and "print"-ing the error
+ * in other environments (e.g. Rhino, SpiderMonkey).
+ * @param {String} msg the error message to be displayed.
+ */
+ emitErrorMessage: function(msg) {
+ throw msg;
+ //console.log(msg);
+ },
+
+ /** What error message should be generated for the various
+ * exception types?
+ *
+ * Not very object-oriented code, but I like having all error message
+ * generation within one method rather than spread among all of the
+ * exception classes. This also makes it much easier for the exception
+ * handling because the exception classes do not have to have pointers back
+ * to this object to access utility routines and so on. Also, changing
+ * the message for an exception type would be difficult because you
+ * would have to be subclassing exceptions, but then somehow get ANTLR
+ * to make those kinds of exception objects instead of the default.
+ *
+ * For grammar debugging, you will want to override this to add
+ * more information such as the stack frame and no viable alts.
+ *
+ * Override this to change the message generated for one or more
+ * exception types.
+ *
+ * @param {Array} tokenNames array of token names (strings).
+ * @param {org.antlr.runtime.RecognitionException} e the error to be reported.
+ * @returns {String} the error message to be emitted.
+ */
+ getErrorMessage: function(e, tokenNames) {
+ var msg = (e && e.getMessage) ? e.getMessage() : null,
+ mte,
+ tokenName;
+ if ( e instanceof org.antlr.runtime.UnwantedTokenException ) {
+ var ute = e;
+ tokenName="";
+ if ( ute.expecting== org.antlr.runtime.Token.EOF ) {
+ tokenName = "EOF";
+ } else {
+ tokenName = tokenNames[ute.expecting];
+ }
+ msg = "extraneous input "+this.getTokenErrorDisplay(ute.getUnexpectedToken())+
+ " expecting "+tokenName;
+ }
+ else if ( e instanceof org.antlr.runtime.MissingTokenException ) {
+ mte = e;
+ tokenName="";
+ if ( mte.expecting== org.antlr.runtime.Token.EOF ) {
+ tokenName = "EOF";
+ } else {
+ tokenName = tokenNames[mte.expecting];
+ }
+ msg = "missing "+tokenName+" at "+this.getTokenErrorDisplay(e.token);
+ }
+ else if ( e instanceof org.antlr.runtime.MismatchedTokenException ) {
+ mte = e;
+ tokenName="";
+ if ( mte.expecting== org.antlr.runtime.Token.EOF ) {
+ tokenName = "EOF";
+ }
+ else {
+ tokenName = tokenNames[mte.expecting];
+ }
+ msg = "mismatched input "+this.getTokenErrorDisplay(e.token)+
+ " expecting "+tokenName;
+ }
+ else if ( e instanceof org.antlr.runtime.NoViableAltException ) {
+ msg = "no viable alternative at input "+this.getTokenErrorDisplay(e.token);
+ }
+ else if ( e instanceof org.antlr.runtime.EarlyExitException ) {
+ msg = "required (...)+ loop did not match anything at input "+
+ this.getTokenErrorDisplay(e.token);
+ }
+ else if ( e instanceof org.antlr.runtime.MismatchedSetException ) {
+ msg = "mismatched input "+this.getTokenErrorDisplay(e.token)+
+ " expecting set "+e.expecting;
+ }
+ else if ( e instanceof org.antlr.runtime.MismatchedNotSetException ) {
+ msg = "mismatched input "+this.getTokenErrorDisplay(e.token)+
+ " expecting set "+e.expecting;
+ }
+ else if ( e instanceof org.antlr.runtime.FailedPredicateException ) {
+ msg = "rule "+e.ruleName+" failed predicate: {"+
+ e.predicateText+"}?";
+ }
+ return msg;
+ },
+
+ /** Get number of recognition errors (lexer, parser, tree parser). Each
+ * recognizer tracks its own number. So parser and lexer each have
+ * separate count. Does not count the spurious errors found between
+ * an error and next valid token match
+ *
+ * See also reportError()
+ */
+ getNumberOfSyntaxErrors: function() {
+ return this.state.syntaxErrors;
+ },
+
+ /** How should a token be displayed in an error message? The default
+ * is to display just the text, but during development you might
+ * want to have a lot of information spit out. Override in that case
+ * to use t.toString() (which, for CommonToken, dumps everything about
+ * the token). This is better than forcing you to override a method in
+ * your token objects because you don't have to go modify your lexer
+ * so that it creates a new Java type.
+ */
+ getTokenErrorDisplay: function(t) {
+ var s = t.getText();
+ if ( !org.antlr.lang.isValue(s) ) {
+ if ( t.getType()==org.antlr.runtime.Token.EOF ) {
+ s = "";
+ }
+ else {
+ s = "<"+t.getType()+">";
+ }
+ }
+ s = s.replace(/\n/g,"\\n");
+ s = s.replace(/\r/g,"\\r");
+ s = s.replace(/\t/g,"\\t");
+ return "'"+s+"'";
+ },
+
+ /** Recover from an error found on the input stream. This is
+ * for NoViableAlt and mismatched symbol exceptions. If you enable
+ * single token insertion and deletion, this will usually not
+ * handle mismatched symbol exceptions but there could be a mismatched
+ * token that the match() routine could not recover from.
+ */
+ recover: function(input, re) {
+ if ( this.state.lastErrorIndex==input.index() ) {
+ // uh oh, another error at same token index; must be a case
+ // where LT(1) is in the recovery token set so nothing is
+ // consumed; consume a single token so at least to prevent
+ // an infinite loop; this is a failsafe.
+ input.consume();
+ }
+ this.state.lastErrorIndex = input.index();
+ var followSet = this.computeErrorRecoverySet();
+ this.beginResync();
+ this.consumeUntil(input, followSet);
+ this.endResync();
+ },
+
+ /** A hook to listen in on the token consumption during error recovery.
+ * The DebugParser subclasses this to fire events to the listenter.
+ */
+ beginResync: function() {
+ },
+
+ endResync: function() {
+ },
+
+ /* Compute the error recovery set for the current rule. During
+ * rule invocation, the parser pushes the set of tokens that can
+ * follow that rule reference on the stack; this amounts to
+ * computing FIRST of what follows the rule reference in the
+ * enclosing rule. This local follow set only includes tokens
+ * from within the rule; i.e., the FIRST computation done by
+ * ANTLR stops at the end of a rule.
+ *
+ * EXAMPLE
+ *
+ * When you find a "no viable alt exception", the input is not
+ * consistent with any of the alternatives for rule r. The best
+ * thing to do is to consume tokens until you see something that
+ * can legally follow a call to r *or* any rule that called r.
+ * You don't want the exact set of viable next tokens because the
+ * input might just be missing a token--you might consume the
+ * rest of the input looking for one of the missing tokens.
+ *
+ * Consider grammar:
+ *
+ * a : '[' b ']'
+ * | '(' b ')'
+ * ;
+ * b : c '^' INT ;
+ * c : ID
+ * | INT
+ * ;
+ *
+ * At each rule invocation, the set of tokens that could follow
+ * that rule is pushed on a stack. Here are the various "local"
+ * follow sets:
+ *
+ * FOLLOW(b1_in_a) = FIRST(']') = ']'
+ * FOLLOW(b2_in_a) = FIRST(')') = ')'
+ * FOLLOW(c_in_b) = FIRST('^') = '^'
+ *
+ * Upon erroneous input "[]", the call chain is
+ *
+ * a -> b -> c
+ *
+ * and, hence, the follow context stack is:
+ *
+ * depth local follow set after call to rule
+ * 0 a (from main())
+ * 1 ']' b
+ * 3 '^' c
+ *
+ * Notice that ')' is not included, because b would have to have
+ * been called from a different context in rule a for ')' to be
+ * included.
+ *
+ * For error recovery, we cannot consider FOLLOW(c)
+ * (context-sensitive or otherwise). We need the combined set of
+ * all context-sensitive FOLLOW sets--the set of all tokens that
+ * could follow any reference in the call chain. We need to
+ * resync to one of those tokens. Note that FOLLOW(c)='^' and if
+ * we resync'd to that token, we'd consume until EOF. We need to
+ * sync to context-sensitive FOLLOWs for a, b, and c: {']','^'}.
+ * In this case, for input "[]", LA(1) is in this set so we would
+ * not consume anything and after printing an error rule c would
+ * return normally. It would not find the required '^' though.
+ * At this point, it gets a mismatched token error and throws an
+ * exception (since LA(1) is not in the viable following token
+ * set). The rule exception handler tries to recover, but finds
+ * the same recovery set and doesn't consume anything. Rule b
+ * exits normally returning to rule a. Now it finds the ']' (and
+ * with the successful match exits errorRecovery mode).
+ *
+ * So, you cna see that the parser walks up call chain looking
+ * for the token that was a member of the recovery set.
+ *
+ * Errors are not generated in errorRecovery mode.
+ *
+ * ANTLR's error recovery mechanism is based upon original ideas:
+ *
+ * "Algorithms + Data Structures = Programs" by Niklaus Wirth
+ *
+ * and
+ *
+ * "A note on error recovery in recursive descent parsers":
+ * http://portal.acm.org/citation.cfm?id=947902.947905
+ *
+ * Later, Josef Grosch had some good ideas:
+ *
+ * "Efficient and Comfortable Error Recovery in Recursive Descent
+ * Parsers":
+ * ftp://www.cocolab.com/products/cocktail/doca4.ps/ell.ps.zip
+ *
+ * Like Grosch I implemented local FOLLOW sets that are combined
+ * at run-time upon error to avoid overhead during parsing.
+ */
+ computeErrorRecoverySet: function() {
+ return this.combineFollows(false);
+ },
+
+
+ /** Compute the context-sensitive FOLLOW set for current rule.
+ * This is set of token types that can follow a specific rule
+ * reference given a specific call chain. You get the set of
+ * viable tokens that can possibly come next (lookahead depth 1)
+ * given the current call chain. Contrast this with the
+ * definition of plain FOLLOW for rule r:
+ *
+ * FOLLOW(r)={x | S=>*alpha r beta in G and x in FIRST(beta)}
+ *
+ * where x in T* and alpha, beta in V*; T is set of terminals and
+ * V is the set of terminals and nonterminals. In other words,
+ * FOLLOW(r) is the set of all tokens that can possibly follow
+ * references to r in *any* sentential form (context). At
+ * runtime, however, we know precisely which context applies as
+ * we have the call chain. We may compute the exact (rather
+ * than covering superset) set of following tokens.
+ *
+ * For example, consider grammar:
+ *
+ * stat : ID '=' expr ';' // FOLLOW(stat)=={EOF}
+ * | "return" expr '.'
+ * ;
+ * expr : atom ('+' atom)* ; // FOLLOW(expr)=={';','.',')'}
+ * atom : INT // FOLLOW(atom)=={'+',')',';','.'}
+ * | '(' expr ')'
+ * ;
+ *
+ * The FOLLOW sets are all inclusive whereas context-sensitive
+ * FOLLOW sets are precisely what could follow a rule reference.
+ * For input input "i=(3);", here is the derivation:
+ *
+ * stat => ID '=' expr ';'
+ * => ID '=' atom ('+' atom)* ';'
+ * => ID '=' '(' expr ')' ('+' atom)* ';'
+ * => ID '=' '(' atom ')' ('+' atom)* ';'
+ * => ID '=' '(' INT ')' ('+' atom)* ';'
+ * => ID '=' '(' INT ')' ';'
+ *
+ * At the "3" token, you'd have a call chain of
+ *
+ * stat -> expr -> atom -> expr -> atom
+ *
+ * What can follow that specific nested ref to atom? Exactly ')'
+ * as you can see by looking at the derivation of this specific
+ * input. Contrast this with the FOLLOW(atom)={'+',')',';','.'}.
+ *
+ * You want the exact viable token set when recovering from a
+ * token mismatch. Upon token mismatch, if LA(1) is member of
+ * the viable next token set, then you know there is most likely
+ * a missing token in the input stream. "Insert" one by just not
+ * throwing an exception.
+ */
+ computeContextSensitiveRuleFOLLOW: function() {
+ return this.combineFollows(true);
+ },
+
+ combineFollows: function(exact) {
+ var top = this.state._fsp,
+ i,
+ localFollowSet,
+ followSet = new org.antlr.runtime.BitSet();
+ for (i=top; i>=0; i--) {
+ localFollowSet = this.state.following[i];
+ followSet.orInPlace(localFollowSet);
+ if ( exact ) {
+ // can we see end of rule?
+ if ( localFollowSet.member(org.antlr.runtime.Token.EOR_TOKEN_TYPE) )
+ {
+ // Only leave EOR in set if at top (start rule); this lets
+ // us know if have to include follow(start rule); i.e., EOF
+ if ( i>0 ) {
+ followSet.remove(org.antlr.runtime.Token.EOR_TOKEN_TYPE);
+ }
+ }
+ else { // can't see end of rule, quit
+ break;
+ }
+ }
+ }
+ return followSet;
+ },
+
+ /** Attempt to recover from a single missing or extra token.
+ *
+ * EXTRA TOKEN
+ *
+ * LA(1) is not what we are looking for. If LA(2) has the right token,
+ * however, then assume LA(1) is some extra spurious token. Delete it
+ * and LA(2) as if we were doing a normal match(), which advances the
+ * input.
+ *
+ * MISSING TOKEN
+ *
+ * If current token is consistent with what could come after
+ * ttype then it is ok to "insert" the missing token, else throw
+ * exception For example, Input "i=(3;" is clearly missing the
+ * ')'. When the parser returns from the nested call to expr, it
+ * will have call chain:
+ *
+ * stat -> expr -> atom
+ *
+ * and it will be trying to match the ')' at this point in the
+ * derivation:
+ *
+ * => ID '=' '(' INT ')' ('+' atom)* ';'
+ * ^
+ * match() will see that ';' doesn't match ')' and report a
+ * mismatched token error. To recover, it sees that LA(1)==';'
+ * is in the set of tokens that can follow the ')' token
+ * reference in rule atom. It can assume that you forgot the ')'.
+ */
+ recoverFromMismatchedToken: function(input,
+ ttype,
+ follow)
+ {
+ var e = null;
+ // if next token is what we are looking for then "delete" this token
+ if ( this.mismatchIsUnwantedToken(input, ttype) ) {
+ e = new org.antlr.runtime.UnwantedTokenException(ttype, input);
+ this.beginResync();
+ input.consume(); // simply delete extra token
+ this.endResync();
+ this.reportError(e); // report after consuming so AW sees the token in the exception
+ // we want to return the token we're actually matching
+ var matchedSymbol = this.getCurrentInputSymbol(input);
+ input.consume(); // move past ttype token as if all were ok
+ return matchedSymbol;
+ }
+ // can't recover with single token deletion, try insertion
+ if ( this.mismatchIsMissingToken(input, follow) ) {
+ var inserted = this.getMissingSymbol(input, e, ttype, follow);
+ e = new org.antlr.runtime.MissingTokenException(ttype, input, inserted);
+ this.reportError(e); // report after inserting so AW sees the token in the exception
+ return inserted;
+ }
+ // even that didn't work; must throw the exception
+ e = new org.antlr.runtime.MismatchedTokenException(ttype, input);
+ throw e;
+ },
+
+ recoverFromMismatchedSet: function(input,
+ e,
+ follow)
+ {
+ if ( this.mismatchIsMissingToken(input, follow) ) {
+ // System.out.println("missing token");
+ this.reportError(e);
+ // we don't know how to conjure up a token for sets yet
+ return this.getMissingSymbol(input, e, org.antlr.runtime.Token.INVALID_TOKEN_TYPE, follow);
+ }
+ throw e;
+ },
+
+ /** Match needs to return the current input symbol, which gets put
+ * into the label for the associated token ref; e.g., x=ID. Token
+ * and tree parsers need to return different objects. Rather than test
+ * for input stream type or change the IntStream interface, I use
+ * a simple method to ask the recognizer to tell me what the current
+ * input symbol is.
+ *
+ * This is ignored for lexers.
+ */
+ getCurrentInputSymbol: function(input) { return null; },
+
+ /** Conjure up a missing token during error recovery.
+ *
+ * The recognizer attempts to recover from single missing
+ * symbols. But, actions might refer to that missing symbol.
+ * For example, x=ID {f($x);}. The action clearly assumes
+ * that there has been an identifier matched previously and that
+ * $x points at that token. If that token is missing, but
+ * the next token in the stream is what we want we assume that
+ * this token is missing and we keep going. Because we
+ * have to return some token to replace the missing token,
+ * we have to conjure one up. This method gives the user control
+ * over the tokens returned for missing tokens. Mostly,
+ * you will want to create something special for identifier
+ * tokens. For literals such as '{' and ',', the default
+ * action in the parser or tree parser works. It simply creates
+ * a CommonToken of the appropriate type. The text will be the token.
+ * If you change what tokens must be created by the lexer,
+ * override this method to create the appropriate tokens.
+ */
+ getMissingSymbol: function(input,
+ e,
+ expectedTokenType,
+ follow)
+ {
+ return null;
+ },
+
+
+ /** Consume tokens until one matches the given token set */
+ consumeUntil: function(input, set) {
+ var ttype = input.LA(1);
+ while (ttype != org.antlr.runtime.Token.EOF && !set.member(ttype) ) {
+ input.consume();
+ ttype = input.LA(1);
+ }
+ },
+
+ /** Push a rule's follow set using our own hardcoded stack */
+ pushFollow: function(fset) {
+ if ( (this.state._fsp +1)>=this.state.following.length ) {
+ var f = [];
+ var i;
+ for (i=this.state.following.length-1; i>=0; i--) {
+ f[i] = this.state.following[i];
+ }
+ this.state.following = f;
+ }
+ this.state._fsp++;
+ this.state.following[this.state._fsp] = fset;
+ },
+
+ /** Return List of the rules in your parser instance
+ * leading up to a call to this method. You could override if
+ * you want more details such as the file/line info of where
+ * in the parser java code a rule is invoked.
+ *
+ * This is very useful for error messages and for context-sensitive
+ * error recovery.
+ *
+ * A more general version of getRuleInvocationStack where you can
+ * pass in, for example, a RecognitionException to get it's rule
+ * stack trace. This routine is shared with all recognizers, hence,
+ * static.
+ *
+ * TODO: move to a utility class or something; weird having lexer call this
+ *
+ * Most JS interpreters can't do real stack reflection. See this
+ * spidermonkey bug, for example:
+ * https://bugzilla.mozilla.org/show_bug.cgi?id=332104
+ *
+ * JS is supposed to get real stack traces in v4, at which time it would
+ * be easy to implement this function.
+ *
+ * Until then I'll leave this unimplemented. If there is enough clamor
+ * it would be possible to keep track of the invocation stack using an
+ * auxillary array, but that will definitely be a performance hit.
+ */
+ getRuleInvocationStack: function(e, recognizerClassName)
+ {
+ throw new Error("Not implemented.");
+ },
+
+ getBacktrackingLevel: function() {
+ return this.state.backtracking;
+ },
+
+ /** Used to print out token names like ID during debugging and
+ * error reporting. The generated parsers implement a method
+ * that overrides this to point to their String[] tokenNames.
+ */
+ getTokenNames: function() {
+ return null;
+ },
+
+ /** For debugging and other purposes, might want the grammar name.
+ * Have ANTLR generate an implementation for this method.
+ */
+ getGrammarFileName: function() {
+ return null;
+ },
+
+ /** A convenience method for use most often with template rewrites.
+ * Convert a List to List
+ */
+ toStrings: function(tokens) {
+ if ( !tokens ) {
+ return null;
+ }
+ var strings = [];
+ var i;
+ for (i=0; i= this.state.ruleMemo.length ) {
+ throw new Error("!!!!!!!!! memo size is "+this.state.ruleMemo.length+", but rule index is "+ruleIndex);
+ }
+ if ( org.antlr.lang.isValue(this.state.ruleMemo[ruleIndex]) ) {
+ this.state.ruleMemo[ruleIndex][ruleStartIndex] = stopTokenIndex;
+ }
+ },
+
+ /** return how many rule/input-index pairs there are in total.
+ * TODO: this includes synpreds.
+ */
+ getRuleMemoizationCacheSize: function() {
+ var n = 0, i;
+ for (i = 0; this.state.ruleMemo && i < this.state.ruleMemo.length; i++) {
+ var ruleMap = this.state.ruleMemo[i];
+ if ( ruleMap ) {
+ // @todo need to get size of rulemap?
+ n += ruleMap.length; // how many input indexes are recorded?
+ }
+ }
+ return n;
+ },
+
+ traceIn: function(ruleName, ruleIndex, inputSymbol) {
+ this.emitErrorMessage("enter "+ruleName+" "+inputSymbol);
+ if ( this.state.failed ) {
+ this.emitErrorMessage(" failed="+this.failed);
+ }
+ if ( this.state.backtracking>0 ) {
+ this.emitErrorMessage(" backtracking="+this.state.backtracking);
+ }
+ // System.out.println();
+ },
+
+ traceOut: function(ruleName, ruleIndex, inputSymbol) {
+ this.emitErrorMessage("exit "+ruleName+" "+inputSymbol);
+ if ( this.state.failed ) {
+ this.emitErrorMessage(" failed="+this.state.failed);
+ }
+ if ( this.state.backtracking>0 ) {
+ this.emitErrorMessage(" backtracking="+this.state.backtracking);
+ }
+ }
+};
+/** A lexer is recognizer that draws input symbols from a character stream.
+ * lexer grammars result in a subclass of this object. A Lexer object
+ * uses simplified match() and error recovery mechanisms in the interest
+ * of speed.
+ */
+org.antlr.runtime.Lexer = function(input, state) {
+ if (state) {
+ org.antlr.runtime.Lexer.superclass.constructor.call(this, state);
+ }
+ if (input) {
+ this.input = input;
+ }
+};
+
+org.antlr.lang.extend(org.antlr.runtime.Lexer, org.antlr.runtime.BaseRecognizer, {
+ reset: function() {
+ // reset all recognizer state variables
+ org.antlr.runtime.Lexer.superclass.reset.call(this);
+ if ( org.antlr.lang.isValue(this.input) ) {
+ this.input.seek(0); // rewind the input
+ }
+ if ( !org.antlr.lang.isValue(this.state) ) {
+ return; // no shared state work to do
+ }
+ this.state.token = null;
+ this.state.type = org.antlr.runtime.Token.INVALID_TOKEN_TYPE;
+ this.state.channel = org.antlr.runtime.Token.DEFAULT_CHANNEL;
+ this.state.tokenStartCharIndex = -1;
+ this.state.tokenStartCharPositionInLine = -1;
+ this.state.tokenStartLine = -1;
+ this.state.text = null;
+ },
+
+ /** Return a token from this source; i.e., match a token on the char
+ * stream.
+ */
+ nextToken: function() {
+ while (true) {
+ this.state.token = null;
+ this.state.channel = org.antlr.runtime.Token.DEFAULT_CHANNEL;
+ this.state.tokenStartCharIndex = this.input.index();
+ this.state.tokenStartCharPositionInLine = this.input.getCharPositionInLine();
+ this.state.tokenStartLine = this.input.getLine();
+ this.state.text = null;
+ if ( this.input.LA(1)===org.antlr.runtime.CharStream.EOF ) {
+ return org.antlr.runtime.Token.EOF_TOKEN;
+ }
+ try {
+ this.mTokens();
+ if ( !org.antlr.lang.isValue(this.state.token) ) {
+ this.emit();
+ }
+ else if ( this.state.token==org.antlr.runtime.Token.SKIP_TOKEN ) {
+ continue;
+ }
+ return this.state.token;
+ }
+ catch (re) {
+ if ( re instanceof org.antlr.runtime.RecognitionException ) {
+ this.reportError(re);
+ } else if (re instanceof org.antlr.runtime.NoViableAltException) {
+ this.reportError(re);
+ this.recover(re);
+ } else {
+ throw re;
+ }
+ }
+ }
+ },
+
+ /** Instruct the lexer to skip creating a token for current lexer rule
+ * and look for another token. nextToken() knows to keep looking when
+ * a lexer rule finishes with token set to SKIP_TOKEN. Recall that
+ * if token==null at end of any token rule, it creates one for you
+ * and emits it.
+ */
+ skip: function() {
+ this.state.token = org.antlr.runtime.Token.SKIP_TOKEN;
+ },
+
+ /** Set the char stream and reset the lexer */
+ setCharStream: function(input) {
+ this.input = null;
+ this.reset();
+ this.input = input;
+ },
+
+ getCharStream: function() {
+ return this.input;
+ },
+
+ getSourceName: function() {
+ return this.input.getSourceName();
+ },
+
+ /** Currently does not support multiple emits per nextToken invocation
+ * for efficiency reasons. Subclass and override this method and
+ * nextToken (to push tokens into a list and pull from that list rather
+ * than a single variable as this implementation does).
+ *
+ * The standard method called to automatically emit a token at the
+ * outermost lexical rule. The token object should point into the
+ * char buffer start..stop. If there is a text override in 'text',
+ * use that to set the token's text. Override this method to emit
+ * custom Token objects.
+ *
+ * If you are building trees, then you should also override
+ * Parser or TreeParser.getMissingSymbol().
+ */
+ emit: function() {
+ if (arguments.length===0) {
+ var t = new org.antlr.runtime.CommonToken(this.input, this.state.type, this.state.channel, this.state.tokenStartCharIndex, this.getCharIndex()-1);
+ t.setLine(this.state.tokenStartLine);
+ t.setText(this.state.text);
+ t.setCharPositionInLine(this.state.tokenStartCharPositionInLine);
+ this.state.token = t;
+ return t;
+ } else {
+ this.state.token = arguments[0];
+ }
+ },
+
+ match: function(s) {
+ var i = 0,
+ mte;
+
+ if (org.antlr.lang.isString(s)) {
+ while ( i0 ) {
+ this.state.failed = true;
+ return;
+ }
+ mte = new org.antlr.runtime.MismatchedTokenException(s.charAt(i), this.input);
+ this.recover(mte);
+ throw mte;
+ }
+ i++;
+ this.input.consume();
+ this.state.failed = false;
+ }
+ } else if (org.antlr.lang.isNumber(s)) {
+ if ( this.input.LA(1)!=s ) {
+ if ( this.state.backtracking>0 ) {
+ this.state.failed = true;
+ return;
+ }
+ mte = new org.antlr.runtime.MismatchedTokenException(s, this.input);
+ this.recover(mte);
+ throw mte;
+ }
+ this.input.consume();
+ this.state.failed = false;
+ }
+ },
+
+ matchAny: function() {
+ this.input.consume();
+ },
+
+ matchRange: function(a, b) {
+ if ( this.input.LA(1)b ) {
+ if ( this.state.backtracking>0 ) {
+ this.state.failed = true;
+ return;
+ }
+ mre = new org.antlr.runtime.MismatchedRangeException(a,b,this.input);
+ this.recover(mre);
+ throw mre;
+ }
+ this.input.consume();
+ this.state.failed = false;
+ },
+
+ getLine: function() {
+ return this.input.getLine();
+ },
+
+ getCharPositionInLine: function() {
+ return this.input.getCharPositionInLine();
+ },
+
+ /** What is the index of the current character of lookahead? */
+ getCharIndex: function() {
+ return this.input.index();
+ },
+
+ /** Return the text matched so far for the current token or any
+ * text override.
+ */
+ getText: function() {
+ if ( org.antlr.lang.isString(this.state.text) ) {
+ return this.state.text;
+ }
+ return this.input.substring(this.state.tokenStartCharIndex,this.getCharIndex()-1);
+ },
+
+ /** Set the complete text of this token; it wipes any previous
+ * changes to the text.
+ */
+ setText: function(text) {
+ this.state.text = text;
+ },
+
+ reportError: function(e) {
+ /** TODO: not thought about recovery in lexer yet.
+ *
+ // if we've already reported an error and have not matched a token
+ // yet successfully, don't report any errors.
+ if ( errorRecovery ) {
+ //System.err.print("[SPURIOUS] ");
+ return;
+ }
+ errorRecovery = true;
+ */
+
+ this.displayRecognitionError(this.getTokenNames(), e);
+ },
+
+ getErrorMessage: function(e, tokenNames) {
+ var msg = null;
+ if ( e instanceof org.antlr.runtime.MismatchedTokenException ) {
+ msg = "mismatched character "+this.getCharErrorDisplay(e.c)+" expecting "+this.getCharErrorDisplay(e.expecting);
+ }
+ else if ( e instanceof org.antlr.runtime.NoViableAltException ) {
+ msg = "no viable alternative at character "+this.getCharErrorDisplay(e.c);
+ }
+ else if ( e instanceof org.antlr.runtime.EarlyExitException ) {
+ msg = "required (...)+ loop did not match anything at character "+this.getCharErrorDisplay(e.c);
+ }
+ else if ( e instanceof org.antlr.runtime.MismatchedNotSetException ) {
+ msg = "mismatched character "+this.getCharErrorDisplay(e.c)+" expecting set "+e.expecting;
+ }
+ else if ( e instanceof org.antlr.runtime.MismatchedSetException ) {
+ msg = "mismatched character "+this.getCharErrorDisplay(e.c)+" expecting set "+e.expecting;
+ }
+ else if ( e instanceof org.antlr.runtime.MismatchedRangeException ) {
+ msg = "mismatched character "+this.getCharErrorDisplay(e.c)+" expecting set "+
+ this.getCharErrorDisplay(e.a)+".."+this.getCharErrorDisplay(e.b);
+ }
+ else {
+ msg = org.antlr.runtime.Lexer.superclass.getErrorMessage.call(this, e, tokenNames);
+ }
+ return msg;
+ },
+
+ getCharErrorDisplay: function(c) {
+ var s = c; //String.fromCharCode(c);
+ switch ( s ) {
+ case org.antlr.runtime.Token.EOF :
+ s = "";
+ break;
+ case "\n" :
+ s = "\\n";
+ break;
+ case "\t" :
+ s = "\\t";
+ break;
+ case "\r" :
+ s = "\\r";
+ break;
+ }
+ return "'"+s+"'";
+ },
+
+ /** Lexers can normally match any char in it's vocabulary after matching
+ * a token, so do the easy thing and just kill a character and hope
+ * it all works out. You can instead use the rule invocation stack
+ * to do sophisticated error recovery if you are in a fragment rule.
+ */
+ recover: function(re) {
+ this.input.consume();
+ },
+
+ traceIn: function(ruleName, ruleIndex) {
+ var inputSymbol = String.fromCharCode(this.input.LT(1))+" line="+this.getLine()+":"+this.getCharPositionInLine();
+ org.antlr.runtime.Lexer.superclass.traceIn.call(this, ruleName, ruleIndex, inputSymbol);
+ },
+
+ traceOut: function(ruleName, ruleIndex) {
+ var inputSymbol = String.fromCharCode(this.input.LT(1))+" line="+this.getLine()+":"+this.getCharPositionInLine();
+ org.antlr.runtime.Lexer.superclass.traceOut.call(this, ruleName, ruleIndex, inputSymbol);
+ }
+});
+/** Rules that return more than a single value must return an object
+ * containing all the values. Besides the properties defined in
+ * RuleLabelScope.predefinedRulePropertiesScope there may be user-defined
+ * return values. This class simply defines the minimum properties that
+ * are always defined and methods to access the others that might be
+ * available depending on output option such as template and tree.
+ *
+ * Note text is not an actual property of the return value, it is computed
+ * from start and stop using the input stream's toString() method. I
+ * could add a ctor to this so that we can pass in and store the input
+ * stream, but I'm not sure we want to do that. It would seem to be undefined
+ * to get the .text property anyway if the rule matches tokens from multiple
+ * input streams.
+ *
+ * I do not use getters for fields of objects that are used simply to
+ * group values such as this aggregate. The getters/setters are there to
+ * satisfy the superclass interface.
+ */
+org.antlr.runtime.ParserRuleReturnScope = function() {};
+
+org.antlr.runtime.ParserRuleReturnScope.prototype = {
+ getStart: function() { return this.start; },
+ getStop: function() { return this.stop; }
+};
+/** This is identical to the ParserRuleReturnScope except that
+ * the start property is a tree nodes not Token object
+ * when you are parsing trees. To be generic the tree node types
+ * have to be Object.
+ */
+org.antlr.runtime.tree.TreeRuleReturnScope = function(){};
+
+org.antlr.runtime.tree.TreeRuleReturnScope.prototype = {
+ getStart: function() { return this.start; }
+};
+/** A parser for TokenStreams. "parser grammars" result in a subclass
+ * of this.
+ */
+org.antlr.runtime.Parser = function(input, state) {
+ org.antlr.runtime.Parser.superclass.constructor.call(this, state);
+ this.setTokenStream(input);
+};
+
+org.antlr.lang.extend(org.antlr.runtime.Parser, org.antlr.runtime.BaseRecognizer, {
+ reset: function() {
+ // reset all recognizer state variables
+ org.antlr.runtime.Parser.superclass.reset.call(this);
+ if ( org.antlr.lang.isValue(this.input) ) {
+ this.input.seek(0); // rewind the input
+ }
+ },
+
+ getCurrentInputSymbol: function(input) {
+ return input.LT(1);
+ },
+
+ getMissingSymbol: function(input,
+ e,
+ expectedTokenType,
+ follow)
+ {
+ var tokenText =
+ "";
+ var t = new org.antlr.runtime.CommonToken(expectedTokenType, tokenText);
+ var current = input.LT(1);
+ var old_current;
+ if ( current.getType() === org.antlr.runtime.Token.EOF ) {
+ old_current = current;
+ current = input.LT(-1);
+ // handle edge case where there are no good tokens in the stream
+ if (!current) {
+ current = old_current;
+ }
+ }
+ t.line = current.getLine();
+ t.charPositionInLine = current.getCharPositionInLine();
+ t.channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ return t;
+ },
+
+
+ /** Set the token stream and reset the parser */
+ setTokenStream: function(input) {
+ this.input = null;
+ this.reset();
+ this.input = input;
+ },
+
+ getTokenStream: function() {
+ return this.input;
+ },
+
+ getSourceName: function() {
+ return this.input.getSourceName();
+ },
+
+ traceIn: function(ruleName, ruleIndex) {
+ org.antlr.runtime.Parser.superclass.traceIn.call(
+ this, ruleName, ruleIndex, this.input.LT(1));
+ },
+
+ traceOut: function(ruleName, ruleIndex) {
+ org.antlr.runtime.Parser.superclass.traceOut.call(
+ this, ruleName, ruleIndex, this.input.LT(1));
+ }
+});
+/** A DFA implemented as a set of transition tables.
+ *
+ * Any state that has a semantic predicate edge is special; those states
+ * are generated with if-then-else structures in a specialStateTransition()
+ * which is generated by cyclicDFA template.
+ *
+ * There are at most 32767 states (16-bit signed short).
+ * Could get away with byte sometimes but would have to generate different
+ * types and the simulation code too. For a point of reference, the Java
+ * lexer's Tokens rule DFA has 326 states roughly.
+ */
+org.antlr.runtime.DFA = function() {};
+
+org.antlr.runtime.DFA.prototype = {
+ /** From the input stream, predict what alternative will succeed
+ * using this DFA (representing the covering regular approximation
+ * to the underlying CFL). Return an alternative number 1..n. Throw
+ * an exception upon error.
+ */
+ predict: function(input) {
+ var mark = input.mark(), // remember where decision started in input
+ s = 0, // we always start at s0
+ specialState,
+ c,
+ snext;
+
+ try {
+ while ( true ) {
+ specialState = this.special[s];
+ if ( specialState>=0 ) {
+ s = this.specialStateTransition(specialState,input);
+ if (s===-1) {
+ this.noViableAlt(s, input);
+ return 0;
+ }
+ input.consume();
+ continue;
+ }
+ if ( this.accept[s] >= 1 ) {
+ return this.accept[s];
+ }
+ // look for a normal char transition
+ c = input.LA(1); // -1 == \uFFFF, all tokens fit in 65000 space
+
+ if (c===org.antlr.runtime.Token.EOF) {
+ c = -1;
+ } else if (org.antlr.lang.isString(c)) {
+ c = c.charCodeAt(0);
+ }
+
+ if (c>=this.min[s] && c<=this.max[s]) {
+ snext = this.transition[s][c-this.min[s]]; // move to next state
+ if ( snext < 0 ) {
+ // was in range but not a normal transition
+ // must check EOT, which is like the else clause.
+ // eot[s]>=0 indicates that an EOT edge goes to another
+ // state.
+ if ( this.eot[s]>=0 ) { // EOT Transition to accept state?
+ s = this.eot[s];
+ input.consume();
+ // TODO: I had this as return accept[eot[s]]
+ // which assumed here that the EOT edge always
+ // went to an accept...faster to do this, but
+ // what about predicated edges coming from EOT
+ // target?
+ continue;
+ }
+ this.noViableAlt(s,input);
+ return 0;
+ }
+ s = snext;
+ input.consume();
+ continue;
+ }
+ if ( this.eot[s]>=0 ) { // EOT Transition?
+ s = this.eot[s];
+ input.consume();
+ continue;
+ }
+ if ( c==org.antlr.runtime.Token.EOF && this.eof[s]>=0 ) { // EOF Transition to accept state?
+ return this.accept[this.eof[s]];
+ }
+ // not in range and not EOF/EOT, must be invalid symbol
+ this.noViableAlt(s,input);
+ return 0;
+ }
+ }
+ finally {
+ input.rewind(mark);
+ }
+ },
+
+ noViableAlt: function(s, input) {
+ if (this.recognizer.state.backtracking>0) {
+ this.recognizer.state.failed=true;
+ return;
+ }
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(),
+ this.decisionNumber,
+ s,
+ input);
+ this.error(nvae);
+ throw nvae;
+ },
+
+ /** A hook for debugging interface */
+ error: function(nvae) { },
+
+ specialStateTransition: function(s, input) {
+ return -1;
+ },
+
+ getDescription: function() {
+ return "n/a";
+ }
+};
+
+org.antlr.lang.augmentObject(org.antlr.runtime.DFA, {
+ /** Given a String that has a run-length-encoding of some unsigned shorts
+ * like "\1\2\3\9", convert to short[] {2,9,9,9}.
+ */
+ unpackEncodedString: function(encodedString) {
+ // walk first to find how big it is.
+ var i,
+ data = [],
+ di = 0,
+ n,
+ v,
+ j;
+ for (i=0; i";
+ return new org.antlr.runtime.tree.CommonTree(new org.antlr.runtime.CommonToken(expectedTokenType, tokenText));
+ },
+
+ /** Match '.' in tree parser has special meaning. Skip node or
+ * entire tree if node has children. If children, scan until
+ * corresponding UP node.
+ */
+ matchAny: function(ignore) { // ignore stream, copy of this.input
+ this.state.errorRecovery = false;
+ this.state.failed = false;
+ var look = this.input.LT(1);
+ if ( this.input.getTreeAdaptor().getChildCount(look)===0 ) {
+ this.input.consume(); // not subtree, consume 1 node and return
+ return;
+ }
+ // current node is a subtree, skip to corresponding UP.
+ // must count nesting level to get right UP
+ var level=0,
+ tokenType = this.input.getTreeAdaptor().getType(look);
+ while ( tokenType!==org.antlr.runtime.Token.EOF &&
+ !(tokenType===TP.UP && level===0) )
+ {
+ this.input.consume();
+ look = this.input.LT(1);
+ tokenType = this.input.getTreeAdaptor().getType(look);
+ if ( tokenType === TP.DOWN ) {
+ level++;
+ }
+ else if ( tokenType === TP.UP ) {
+ level--;
+ }
+ }
+ this.input.consume(); // consume UP
+ },
+
+ /** We have DOWN/UP nodes in the stream that have no line info; override.
+ * plus we want to alter the exception type. Don't try to recover
+ * * from tree parser errors inline...
+ */
+ mismatch: function(input, ttype, follow) {
+ throw new org.antlr.runtime.MismatchedTreeNodeException(ttype, input);
+ },
+
+ /** Prefix error message with the grammar name because message is
+ * always intended for the programmer because the parser built
+ * the input tree not the user.
+ */
+ getErrorHeader: function(e) {
+ return this.getGrammarFileName()+": node from "+
+ (e.approximateLineInfo?"after ":"")+"line "+e.line+":"+e.charPositionInLine;
+ },
+
+ /** Tree parsers parse nodes they usually have a token object as
+ * payload. Set the exception token and do the default behavior.
+ */
+ getErrorMessage: function(e, tokenNames) {
+ var adaptor;
+ if ( this instanceof TP ) {
+ adaptor = e.input.getTreeAdaptor();
+ e.token = adaptor.getToken(e.node);
+ if ( !org.antlr.lang.isValue(e.token) ) { // could be an UP/DOWN node
+ e.token = new org.antlr.runtime.CommonToken(
+ adaptor.getType(e.node),
+ adaptor.getText(e.node));
+ }
+ }
+ return TP.superclass.getErrorMessage.call(this, e, tokenNames);
+ },
+
+ traceIn: function(ruleName, ruleIndex) {
+ TP.superclass.traceIn.call(this, ruleName, ruleIndex, this.input.LT(1));
+ },
+
+ traceOut: function(ruleName, ruleIndex) {
+ TP.superclass.traceOut.call(this, ruleName, ruleIndex, this.input.LT(1));
+ }
+});
+
+})();
+
+exports.org = org;
+
+});
+// $ANTLR 3.3 Nov 30, 2010 12:50:56 XQueryLexer.g 2012-04-01 14:44:23
+
+/*******************************************************************************
+ * Copyright (c) 2008, 2009 28msec Inc. and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gabriel Petrovay (28msec) - initial API and implementation
+ * Sam Neth (Mark Logic)
+ *******************************************************************************/
+
+define('ace/mode/xquery/XQueryLexer', ['require', 'exports', 'module' , 'ace/mode/xquery/antlr3-all'], function(require, exports, module) {
+
+var org = require("./antlr3-all").org;
+
+var XQueryLexer = exports.XQueryLexer = function(input, state) {
+// alternate constructor @todo
+// public XQueryLexer(CharStream input)
+// public XQueryLexer(CharStream input, RecognizerSharedState state) {
+ if (!state) {
+ state = new org.antlr.runtime.RecognizerSharedState();
+ }
+
+ (function(){
+ }).call(this);
+
+ this.dfa19 = new XQueryLexer.DFA19(this);
+ XQueryLexer.superclass.constructor.call(this, input, state);
+
+
+};
+
+org.antlr.lang.augmentObject(XQueryLexer, {
+ EOF: -1,
+ L_QuotAttrContentChar: 4,
+ L_AposAttrContentChar: 5,
+ L_ElementContentChar: 6,
+ L_CDataSection: 7,
+ L_PredefinedEntityRef: 8,
+ L_CharRef: 9,
+ ESCAPE_LBRACKET: 10,
+ ESCAPE_RBRACKET: 11,
+ ESCAPE_APOS: 12,
+ ESCAPE_QUOT: 13,
+ CDATA_START: 14,
+ CDATA_END: 15,
+ ANCESTOR: 16,
+ ANCESTOR_OR_SELF: 17,
+ AND: 18,
+ AS: 19,
+ ASCENDING: 20,
+ AT: 21,
+ ATTRIBUTE: 22,
+ BASE_URI: 23,
+ BOUNDARY_SPACE: 24,
+ BY: 25,
+ CASE: 26,
+ CAST: 27,
+ CASTABLE: 28,
+ CHILD: 29,
+ COLLATION: 30,
+ COMMENT: 31,
+ CONSTRUCTION: 32,
+ COPY_NAMESPACES: 33,
+ DECLARE: 34,
+ DEFAULT: 35,
+ DESCENDANT: 36,
+ DESCENDANT_OR_SELF: 37,
+ DESCENDING: 38,
+ DIV: 39,
+ DOCUMENT: 40,
+ DOCUMENT_NODE: 41,
+ ELEMENT: 42,
+ ELSE: 43,
+ EMPTY: 44,
+ EMPTY_SEQUENCE: 45,
+ ENCODING: 46,
+ EQ: 47,
+ EVERY: 48,
+ EXCEPT: 49,
+ EXTERNAL: 50,
+ FOLLOWING: 51,
+ FOLLOWING_SIBLING: 52,
+ FOR: 53,
+ FUNCTION: 54,
+ GE: 55,
+ GREATEST: 56,
+ GT: 57,
+ IDIV: 58,
+ IF: 59,
+ IMPORT: 60,
+ IN: 61,
+ INHERIT: 62,
+ INSTANCE: 63,
+ INTERSECT: 64,
+ IS: 65,
+ ITEM: 66,
+ LAX: 67,
+ LE: 68,
+ LEAST: 69,
+ LET: 70,
+ LT: 71,
+ MOD: 72,
+ MODULE: 73,
+ NAMESPACE: 74,
+ NE: 75,
+ NO_INHERIT: 76,
+ NO_PRESERVE: 77,
+ NODE: 78,
+ OF: 79,
+ OPTION: 80,
+ OR: 81,
+ ORDER: 82,
+ ORDERED: 83,
+ ORDERING: 84,
+ PARENT: 85,
+ PRECEDING: 86,
+ PRECEDING_SIBLING: 87,
+ PRESERVE: 88,
+ PROCESSING_INSTRUCTION: 89,
+ RETURN: 90,
+ SATISFIES: 91,
+ SCHEMA: 92,
+ SCHEMA_ATTRIBUTE: 93,
+ SCHEMA_ELEMENT: 94,
+ SELF: 95,
+ SOME: 96,
+ STABLE: 97,
+ STRICT: 98,
+ STRIP: 99,
+ TEXT: 100,
+ THEN: 101,
+ TO: 102,
+ TREAT: 103,
+ TYPESWITCH: 104,
+ UNION: 105,
+ UNORDERED: 106,
+ VALIDATE: 107,
+ VARIABLE: 108,
+ VERSION: 109,
+ WHERE: 110,
+ XQUERY: 111,
+ CATCH: 112,
+ CONTEXT: 113,
+ COUNT: 114,
+ DECIMAL_FORMAT: 115,
+ DECIMAL_SEPARATOR: 116,
+ DIGIT: 117,
+ END: 118,
+ GROUP: 119,
+ GROUPING_SEPARATOR: 120,
+ INFINITY: 121,
+ MINUS_SIGN: 122,
+ NAMESPACE_NODE: 123,
+ NAN: 124,
+ NEXT: 125,
+ ONLY: 126,
+ OUTER: 127,
+ PATTERN_SEPARATOR: 128,
+ PERCENT: 129,
+ PER_MILLE: 130,
+ PREVIOUS: 131,
+ SLIDING: 132,
+ START: 133,
+ TRY: 134,
+ TUMBLING: 135,
+ WHEN: 136,
+ WINDOW: 137,
+ ZERO_DIGIT: 138,
+ AFTER: 139,
+ BEFORE: 140,
+ COPY: 141,
+ DELETE: 142,
+ FIRST: 143,
+ INSERT: 144,
+ INTO: 145,
+ LAST: 146,
+ MODIFY: 147,
+ NODES: 148,
+ RENAME: 149,
+ REPLACE: 150,
+ REVALIDATION: 151,
+ SKIP: 152,
+ UPDATING: 153,
+ VALUE: 154,
+ WITH: 155,
+ BLOCK: 156,
+ CONSTANT: 157,
+ EXIT: 158,
+ RETURNING: 159,
+ SEQUENTIAL: 160,
+ SET: 161,
+ SIMPLE: 162,
+ WHILE: 163,
+ EVAL: 164,
+ USING: 165,
+ APPEND_ONLY: 166,
+ AUTOMATICALLY: 167,
+ CHECK: 168,
+ COLLECTION: 169,
+ CONSTRAINT: 170,
+ CONST: 171,
+ EQUALITY: 172,
+ FOREACH: 173,
+ FOREIGN: 174,
+ FROM: 175,
+ INDEX: 176,
+ INTEGRITY: 177,
+ KEY: 178,
+ MAINTAINED: 179,
+ MANUALLY: 180,
+ MUTABLE: 181,
+ NON: 182,
+ ON: 183,
+ QUEUE: 184,
+ RANGE: 185,
+ READ_ONLY: 186,
+ UNIQUE: 187,
+ BINARY: 188,
+ PRIVATE: 189,
+ AMP_ER: 190,
+ APOS_ER: 191,
+ QUOT_ER: 192,
+ LPAREN: 193,
+ RPAREN: 194,
+ DOLLAR: 195,
+ LBRACKET: 196,
+ RBRACKET: 197,
+ LSQUARE: 198,
+ RSQUARE: 199,
+ EQUAL: 200,
+ BIND: 201,
+ NOTEQUAL: 202,
+ AMP: 203,
+ COMMA: 204,
+ QUESTION: 205,
+ STAR: 206,
+ PLUS: 207,
+ MINUS: 208,
+ SMALLER: 209,
+ GREATER: 210,
+ SMALLEREQ: 211,
+ GREATEREQ: 212,
+ SMALLER_SMALLER: 213,
+ GREATER_GREATER: 214,
+ SLASH: 215,
+ SLASH_SLASH: 216,
+ DOT: 217,
+ DOT_DOT: 218,
+ COLON: 219,
+ COLON_COLON: 220,
+ EMPTY_CLOSE_TAG: 221,
+ CLOSE_TAG: 222,
+ SEMICOLON: 223,
+ VBAR: 224,
+ PRAGMA_START: 225,
+ PRAGMA_END: 226,
+ XML_COMMENT_START: 227,
+ XML_COMMENT_END: 228,
+ PI_START: 229,
+ PI_END: 230,
+ ATTR_SIGN: 231,
+ CHARREF_DEC: 232,
+ CHARREF_HEX: 233,
+ APOS: 234,
+ QUOT: 235,
+ NCNameStartChar: 236,
+ NCNameChar: 237,
+ L_NCName: 238,
+ Letter: 239,
+ HexLetter: 240,
+ Digit: 241,
+ Digits: 242,
+ S: 243,
+ SU: 244,
+ L_Pragma: 245,
+ L_DirCommentConstructor: 246,
+ L_DirPIConstructor: 247,
+ L_IntegerLiteral: 248,
+ L_DecimalLiteral: 249,
+ L_DoubleLiteral: 250,
+ L_Comment: 251,
+ L_AnyChar: 252
+});
+
+(function(){
+var HIDDEN = org.antlr.runtime.Token.HIDDEN_CHANNEL,
+ EOF = org.antlr.runtime.Token.EOF;
+org.antlr.lang.extend(XQueryLexer, org.antlr.runtime.Lexer, {
+ EOF : -1,
+ L_QuotAttrContentChar : 4,
+ L_AposAttrContentChar : 5,
+ L_ElementContentChar : 6,
+ L_CDataSection : 7,
+ L_PredefinedEntityRef : 8,
+ L_CharRef : 9,
+ ESCAPE_LBRACKET : 10,
+ ESCAPE_RBRACKET : 11,
+ ESCAPE_APOS : 12,
+ ESCAPE_QUOT : 13,
+ CDATA_START : 14,
+ CDATA_END : 15,
+ ANCESTOR : 16,
+ ANCESTOR_OR_SELF : 17,
+ AND : 18,
+ AS : 19,
+ ASCENDING : 20,
+ AT : 21,
+ ATTRIBUTE : 22,
+ BASE_URI : 23,
+ BOUNDARY_SPACE : 24,
+ BY : 25,
+ CASE : 26,
+ CAST : 27,
+ CASTABLE : 28,
+ CHILD : 29,
+ COLLATION : 30,
+ COMMENT : 31,
+ CONSTRUCTION : 32,
+ COPY_NAMESPACES : 33,
+ DECLARE : 34,
+ DEFAULT : 35,
+ DESCENDANT : 36,
+ DESCENDANT_OR_SELF : 37,
+ DESCENDING : 38,
+ DIV : 39,
+ DOCUMENT : 40,
+ DOCUMENT_NODE : 41,
+ ELEMENT : 42,
+ ELSE : 43,
+ EMPTY : 44,
+ EMPTY_SEQUENCE : 45,
+ ENCODING : 46,
+ EQ : 47,
+ EVERY : 48,
+ EXCEPT : 49,
+ EXTERNAL : 50,
+ FOLLOWING : 51,
+ FOLLOWING_SIBLING : 52,
+ FOR : 53,
+ FUNCTION : 54,
+ GE : 55,
+ GREATEST : 56,
+ GT : 57,
+ IDIV : 58,
+ IF : 59,
+ IMPORT : 60,
+ IN : 61,
+ INHERIT : 62,
+ INSTANCE : 63,
+ INTERSECT : 64,
+ IS : 65,
+ ITEM : 66,
+ LAX : 67,
+ LE : 68,
+ LEAST : 69,
+ LET : 70,
+ LT : 71,
+ MOD : 72,
+ MODULE : 73,
+ NAMESPACE : 74,
+ NE : 75,
+ NO_INHERIT : 76,
+ NO_PRESERVE : 77,
+ NODE : 78,
+ OF : 79,
+ OPTION : 80,
+ OR : 81,
+ ORDER : 82,
+ ORDERED : 83,
+ ORDERING : 84,
+ PARENT : 85,
+ PRECEDING : 86,
+ PRECEDING_SIBLING : 87,
+ PRESERVE : 88,
+ PROCESSING_INSTRUCTION : 89,
+ RETURN : 90,
+ SATISFIES : 91,
+ SCHEMA : 92,
+ SCHEMA_ATTRIBUTE : 93,
+ SCHEMA_ELEMENT : 94,
+ SELF : 95,
+ SOME : 96,
+ STABLE : 97,
+ STRICT : 98,
+ STRIP : 99,
+ TEXT : 100,
+ THEN : 101,
+ TO : 102,
+ TREAT : 103,
+ TYPESWITCH : 104,
+ UNION : 105,
+ UNORDERED : 106,
+ VALIDATE : 107,
+ VARIABLE : 108,
+ VERSION : 109,
+ WHERE : 110,
+ XQUERY : 111,
+ CATCH : 112,
+ CONTEXT : 113,
+ COUNT : 114,
+ DECIMAL_FORMAT : 115,
+ DECIMAL_SEPARATOR : 116,
+ DIGIT : 117,
+ END : 118,
+ GROUP : 119,
+ GROUPING_SEPARATOR : 120,
+ INFINITY : 121,
+ MINUS_SIGN : 122,
+ NAMESPACE_NODE : 123,
+ NAN : 124,
+ NEXT : 125,
+ ONLY : 126,
+ OUTER : 127,
+ PATTERN_SEPARATOR : 128,
+ PERCENT : 129,
+ PER_MILLE : 130,
+ PREVIOUS : 131,
+ SLIDING : 132,
+ START : 133,
+ TRY : 134,
+ TUMBLING : 135,
+ WHEN : 136,
+ WINDOW : 137,
+ ZERO_DIGIT : 138,
+ AFTER : 139,
+ BEFORE : 140,
+ COPY : 141,
+ DELETE : 142,
+ FIRST : 143,
+ INSERT : 144,
+ INTO : 145,
+ LAST : 146,
+ MODIFY : 147,
+ NODES : 148,
+ RENAME : 149,
+ REPLACE : 150,
+ REVALIDATION : 151,
+ SKIP : 152,
+ UPDATING : 153,
+ VALUE : 154,
+ WITH : 155,
+ BLOCK : 156,
+ CONSTANT : 157,
+ EXIT : 158,
+ RETURNING : 159,
+ SEQUENTIAL : 160,
+ SET : 161,
+ SIMPLE : 162,
+ WHILE : 163,
+ EVAL : 164,
+ USING : 165,
+ APPEND_ONLY : 166,
+ AUTOMATICALLY : 167,
+ CHECK : 168,
+ COLLECTION : 169,
+ CONSTRAINT : 170,
+ CONST : 171,
+ EQUALITY : 172,
+ FOREACH : 173,
+ FOREIGN : 174,
+ FROM : 175,
+ INDEX : 176,
+ INTEGRITY : 177,
+ KEY : 178,
+ MAINTAINED : 179,
+ MANUALLY : 180,
+ MUTABLE : 181,
+ NON : 182,
+ ON : 183,
+ QUEUE : 184,
+ RANGE : 185,
+ READ_ONLY : 186,
+ UNIQUE : 187,
+ BINARY : 188,
+ PRIVATE : 189,
+ AMP_ER : 190,
+ APOS_ER : 191,
+ QUOT_ER : 192,
+ LPAREN : 193,
+ RPAREN : 194,
+ DOLLAR : 195,
+ LBRACKET : 196,
+ RBRACKET : 197,
+ LSQUARE : 198,
+ RSQUARE : 199,
+ EQUAL : 200,
+ BIND : 201,
+ NOTEQUAL : 202,
+ AMP : 203,
+ COMMA : 204,
+ QUESTION : 205,
+ STAR : 206,
+ PLUS : 207,
+ MINUS : 208,
+ SMALLER : 209,
+ GREATER : 210,
+ SMALLEREQ : 211,
+ GREATEREQ : 212,
+ SMALLER_SMALLER : 213,
+ GREATER_GREATER : 214,
+ SLASH : 215,
+ SLASH_SLASH : 216,
+ DOT : 217,
+ DOT_DOT : 218,
+ COLON : 219,
+ COLON_COLON : 220,
+ EMPTY_CLOSE_TAG : 221,
+ CLOSE_TAG : 222,
+ SEMICOLON : 223,
+ VBAR : 224,
+ PRAGMA_START : 225,
+ PRAGMA_END : 226,
+ XML_COMMENT_START : 227,
+ XML_COMMENT_END : 228,
+ PI_START : 229,
+ PI_END : 230,
+ ATTR_SIGN : 231,
+ CHARREF_DEC : 232,
+ CHARREF_HEX : 233,
+ APOS : 234,
+ QUOT : 235,
+ NCNameStartChar : 236,
+ NCNameChar : 237,
+ L_NCName : 238,
+ Letter : 239,
+ HexLetter : 240,
+ Digit : 241,
+ Digits : 242,
+ S : 243,
+ SU : 244,
+ L_Pragma : 245,
+ L_DirCommentConstructor : 246,
+ L_DirPIConstructor : 247,
+ L_IntegerLiteral : 248,
+ L_DecimalLiteral : 249,
+ L_DoubleLiteral : 250,
+ L_Comment : 251,
+ L_AnyChar : 252,
+ getGrammarFileName: function() { return "XQueryLexer.g"; }
+});
+org.antlr.lang.augmentObject(XQueryLexer.prototype, {
+ // $ANTLR start ANCESTOR
+ mANCESTOR: function() {
+ try {
+ var _type = this.ANCESTOR;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:43:29: ( 'ancestor' )
+ // XQueryLexer.g:43:31: 'ancestor'
+ this.match("ancestor");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ANCESTOR",
+
+ // $ANTLR start ANCESTOR_OR_SELF
+ mANCESTOR_OR_SELF: function() {
+ try {
+ var _type = this.ANCESTOR_OR_SELF;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:44:29: ( 'ancestor-or-self' )
+ // XQueryLexer.g:44:31: 'ancestor-or-self'
+ this.match("ancestor-or-self");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ANCESTOR_OR_SELF",
+
+ // $ANTLR start AND
+ mAND: function() {
+ try {
+ var _type = this.AND;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:45:29: ( 'and' )
+ // XQueryLexer.g:45:31: 'and'
+ this.match("and");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "AND",
+
+ // $ANTLR start AS
+ mAS: function() {
+ try {
+ var _type = this.AS;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:46:29: ( 'as' )
+ // XQueryLexer.g:46:31: 'as'
+ this.match("as");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "AS",
+
+ // $ANTLR start ASCENDING
+ mASCENDING: function() {
+ try {
+ var _type = this.ASCENDING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:47:29: ( 'ascending' )
+ // XQueryLexer.g:47:31: 'ascending'
+ this.match("ascending");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ASCENDING",
+
+ // $ANTLR start AT
+ mAT: function() {
+ try {
+ var _type = this.AT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:48:29: ( 'at' )
+ // XQueryLexer.g:48:31: 'at'
+ this.match("at");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "AT",
+
+ // $ANTLR start ATTRIBUTE
+ mATTRIBUTE: function() {
+ try {
+ var _type = this.ATTRIBUTE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:49:29: ( 'attribute' )
+ // XQueryLexer.g:49:31: 'attribute'
+ this.match("attribute");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ATTRIBUTE",
+
+ // $ANTLR start BASE_URI
+ mBASE_URI: function() {
+ try {
+ var _type = this.BASE_URI;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:50:29: ( 'base-uri' )
+ // XQueryLexer.g:50:31: 'base-uri'
+ this.match("base-uri");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "BASE_URI",
+
+ // $ANTLR start BOUNDARY_SPACE
+ mBOUNDARY_SPACE: function() {
+ try {
+ var _type = this.BOUNDARY_SPACE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:51:29: ( 'boundary-space' )
+ // XQueryLexer.g:51:31: 'boundary-space'
+ this.match("boundary-space");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "BOUNDARY_SPACE",
+
+ // $ANTLR start BY
+ mBY: function() {
+ try {
+ var _type = this.BY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:52:29: ( 'by' )
+ // XQueryLexer.g:52:31: 'by'
+ this.match("by");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "BY",
+
+ // $ANTLR start CASE
+ mCASE: function() {
+ try {
+ var _type = this.CASE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:53:29: ( 'case' )
+ // XQueryLexer.g:53:31: 'case'
+ this.match("case");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CASE",
+
+ // $ANTLR start CAST
+ mCAST: function() {
+ try {
+ var _type = this.CAST;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:54:29: ( 'cast' )
+ // XQueryLexer.g:54:31: 'cast'
+ this.match("cast");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CAST",
+
+ // $ANTLR start CASTABLE
+ mCASTABLE: function() {
+ try {
+ var _type = this.CASTABLE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:55:29: ( 'castable' )
+ // XQueryLexer.g:55:31: 'castable'
+ this.match("castable");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CASTABLE",
+
+ // $ANTLR start CHILD
+ mCHILD: function() {
+ try {
+ var _type = this.CHILD;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:56:29: ( 'child' )
+ // XQueryLexer.g:56:31: 'child'
+ this.match("child");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CHILD",
+
+ // $ANTLR start COLLATION
+ mCOLLATION: function() {
+ try {
+ var _type = this.COLLATION;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:57:29: ( 'collation' )
+ // XQueryLexer.g:57:31: 'collation'
+ this.match("collation");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "COLLATION",
+
+ // $ANTLR start COMMENT
+ mCOMMENT: function() {
+ try {
+ var _type = this.COMMENT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:58:29: ( 'comment' )
+ // XQueryLexer.g:58:31: 'comment'
+ this.match("comment");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "COMMENT",
+
+ // $ANTLR start CONSTRUCTION
+ mCONSTRUCTION: function() {
+ try {
+ var _type = this.CONSTRUCTION;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:59:29: ( 'construction' )
+ // XQueryLexer.g:59:31: 'construction'
+ this.match("construction");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CONSTRUCTION",
+
+ // $ANTLR start COPY_NAMESPACES
+ mCOPY_NAMESPACES: function() {
+ try {
+ var _type = this.COPY_NAMESPACES;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:60:29: ( 'copy-namespaces' )
+ // XQueryLexer.g:60:31: 'copy-namespaces'
+ this.match("copy-namespaces");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "COPY_NAMESPACES",
+
+ // $ANTLR start DECLARE
+ mDECLARE: function() {
+ try {
+ var _type = this.DECLARE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:61:29: ( 'declare' )
+ // XQueryLexer.g:61:31: 'declare'
+ this.match("declare");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DECLARE",
+
+ // $ANTLR start DEFAULT
+ mDEFAULT: function() {
+ try {
+ var _type = this.DEFAULT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:62:29: ( 'default' )
+ // XQueryLexer.g:62:31: 'default'
+ this.match("default");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DEFAULT",
+
+ // $ANTLR start DESCENDANT
+ mDESCENDANT: function() {
+ try {
+ var _type = this.DESCENDANT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:63:29: ( 'descendant' )
+ // XQueryLexer.g:63:31: 'descendant'
+ this.match("descendant");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DESCENDANT",
+
+ // $ANTLR start DESCENDANT_OR_SELF
+ mDESCENDANT_OR_SELF: function() {
+ try {
+ var _type = this.DESCENDANT_OR_SELF;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:64:29: ( 'descendant-or-self' )
+ // XQueryLexer.g:64:31: 'descendant-or-self'
+ this.match("descendant-or-self");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DESCENDANT_OR_SELF",
+
+ // $ANTLR start DESCENDING
+ mDESCENDING: function() {
+ try {
+ var _type = this.DESCENDING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:65:29: ( 'descending' )
+ // XQueryLexer.g:65:31: 'descending'
+ this.match("descending");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DESCENDING",
+
+ // $ANTLR start DIV
+ mDIV: function() {
+ try {
+ var _type = this.DIV;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:66:29: ( 'div' )
+ // XQueryLexer.g:66:31: 'div'
+ this.match("div");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DIV",
+
+ // $ANTLR start DOCUMENT
+ mDOCUMENT: function() {
+ try {
+ var _type = this.DOCUMENT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:67:29: ( 'document' )
+ // XQueryLexer.g:67:31: 'document'
+ this.match("document");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DOCUMENT",
+
+ // $ANTLR start DOCUMENT_NODE
+ mDOCUMENT_NODE: function() {
+ try {
+ var _type = this.DOCUMENT_NODE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:68:29: ( 'document-node' )
+ // XQueryLexer.g:68:31: 'document-node'
+ this.match("document-node");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DOCUMENT_NODE",
+
+ // $ANTLR start ELEMENT
+ mELEMENT: function() {
+ try {
+ var _type = this.ELEMENT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:69:29: ( 'element' )
+ // XQueryLexer.g:69:31: 'element'
+ this.match("element");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ELEMENT",
+
+ // $ANTLR start ELSE
+ mELSE: function() {
+ try {
+ var _type = this.ELSE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:70:29: ( 'else' )
+ // XQueryLexer.g:70:31: 'else'
+ this.match("else");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ELSE",
+
+ // $ANTLR start EMPTY
+ mEMPTY: function() {
+ try {
+ var _type = this.EMPTY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:71:29: ( 'empty' )
+ // XQueryLexer.g:71:31: 'empty'
+ this.match("empty");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "EMPTY",
+
+ // $ANTLR start EMPTY_SEQUENCE
+ mEMPTY_SEQUENCE: function() {
+ try {
+ var _type = this.EMPTY_SEQUENCE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:72:29: ( 'empty-sequence' )
+ // XQueryLexer.g:72:31: 'empty-sequence'
+ this.match("empty-sequence");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "EMPTY_SEQUENCE",
+
+ // $ANTLR start ENCODING
+ mENCODING: function() {
+ try {
+ var _type = this.ENCODING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:73:29: ( 'encoding' )
+ // XQueryLexer.g:73:31: 'encoding'
+ this.match("encoding");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ENCODING",
+
+ // $ANTLR start EQ
+ mEQ: function() {
+ try {
+ var _type = this.EQ;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:74:29: ( 'eq' )
+ // XQueryLexer.g:74:31: 'eq'
+ this.match("eq");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "EQ",
+
+ // $ANTLR start EVERY
+ mEVERY: function() {
+ try {
+ var _type = this.EVERY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:75:29: ( 'every' )
+ // XQueryLexer.g:75:31: 'every'
+ this.match("every");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "EVERY",
+
+ // $ANTLR start EXCEPT
+ mEXCEPT: function() {
+ try {
+ var _type = this.EXCEPT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:76:29: ( 'except' )
+ // XQueryLexer.g:76:31: 'except'
+ this.match("except");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "EXCEPT",
+
+ // $ANTLR start EXTERNAL
+ mEXTERNAL: function() {
+ try {
+ var _type = this.EXTERNAL;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:77:29: ( 'external' )
+ // XQueryLexer.g:77:31: 'external'
+ this.match("external");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "EXTERNAL",
+
+ // $ANTLR start FOLLOWING
+ mFOLLOWING: function() {
+ try {
+ var _type = this.FOLLOWING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:78:29: ( 'following' )
+ // XQueryLexer.g:78:31: 'following'
+ this.match("following");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "FOLLOWING",
+
+ // $ANTLR start FOLLOWING_SIBLING
+ mFOLLOWING_SIBLING: function() {
+ try {
+ var _type = this.FOLLOWING_SIBLING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:79:29: ( 'following-sibling' )
+ // XQueryLexer.g:79:31: 'following-sibling'
+ this.match("following-sibling");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "FOLLOWING_SIBLING",
+
+ // $ANTLR start FOR
+ mFOR: function() {
+ try {
+ var _type = this.FOR;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:80:29: ( 'for' )
+ // XQueryLexer.g:80:31: 'for'
+ this.match("for");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "FOR",
+
+ // $ANTLR start FUNCTION
+ mFUNCTION: function() {
+ try {
+ var _type = this.FUNCTION;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:81:29: ( 'function' )
+ // XQueryLexer.g:81:31: 'function'
+ this.match("function");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "FUNCTION",
+
+ // $ANTLR start GE
+ mGE: function() {
+ try {
+ var _type = this.GE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:82:29: ( 'ge' )
+ // XQueryLexer.g:82:31: 'ge'
+ this.match("ge");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "GE",
+
+ // $ANTLR start GREATEST
+ mGREATEST: function() {
+ try {
+ var _type = this.GREATEST;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:83:29: ( 'greatest' )
+ // XQueryLexer.g:83:31: 'greatest'
+ this.match("greatest");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "GREATEST",
+
+ // $ANTLR start GT
+ mGT: function() {
+ try {
+ var _type = this.GT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:84:29: ( 'gt' )
+ // XQueryLexer.g:84:31: 'gt'
+ this.match("gt");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "GT",
+
+ // $ANTLR start IDIV
+ mIDIV: function() {
+ try {
+ var _type = this.IDIV;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:85:29: ( 'idiv' )
+ // XQueryLexer.g:85:31: 'idiv'
+ this.match("idiv");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "IDIV",
+
+ // $ANTLR start IF
+ mIF: function() {
+ try {
+ var _type = this.IF;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:86:29: ( 'if' )
+ // XQueryLexer.g:86:31: 'if'
+ this.match("if");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "IF",
+
+ // $ANTLR start IMPORT
+ mIMPORT: function() {
+ try {
+ var _type = this.IMPORT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:87:29: ( 'import' )
+ // XQueryLexer.g:87:31: 'import'
+ this.match("import");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "IMPORT",
+
+ // $ANTLR start IN
+ mIN: function() {
+ try {
+ var _type = this.IN;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:88:29: ( 'in' )
+ // XQueryLexer.g:88:31: 'in'
+ this.match("in");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "IN",
+
+ // $ANTLR start INHERIT
+ mINHERIT: function() {
+ try {
+ var _type = this.INHERIT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:89:29: ( 'inherit' )
+ // XQueryLexer.g:89:31: 'inherit'
+ this.match("inherit");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "INHERIT",
+
+ // $ANTLR start INSTANCE
+ mINSTANCE: function() {
+ try {
+ var _type = this.INSTANCE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:90:29: ( 'instance' )
+ // XQueryLexer.g:90:31: 'instance'
+ this.match("instance");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "INSTANCE",
+
+ // $ANTLR start INTERSECT
+ mINTERSECT: function() {
+ try {
+ var _type = this.INTERSECT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:91:29: ( 'intersect' )
+ // XQueryLexer.g:91:31: 'intersect'
+ this.match("intersect");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "INTERSECT",
+
+ // $ANTLR start IS
+ mIS: function() {
+ try {
+ var _type = this.IS;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:92:29: ( 'is' )
+ // XQueryLexer.g:92:31: 'is'
+ this.match("is");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "IS",
+
+ // $ANTLR start ITEM
+ mITEM: function() {
+ try {
+ var _type = this.ITEM;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:93:29: ( 'item' )
+ // XQueryLexer.g:93:31: 'item'
+ this.match("item");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ITEM",
+
+ // $ANTLR start LAX
+ mLAX: function() {
+ try {
+ var _type = this.LAX;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:94:29: ( 'lax' )
+ // XQueryLexer.g:94:31: 'lax'
+ this.match("lax");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "LAX",
+
+ // $ANTLR start LE
+ mLE: function() {
+ try {
+ var _type = this.LE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:95:29: ( 'le' )
+ // XQueryLexer.g:95:31: 'le'
+ this.match("le");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "LE",
+
+ // $ANTLR start LEAST
+ mLEAST: function() {
+ try {
+ var _type = this.LEAST;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:96:29: ( 'least' )
+ // XQueryLexer.g:96:31: 'least'
+ this.match("least");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "LEAST",
+
+ // $ANTLR start LET
+ mLET: function() {
+ try {
+ var _type = this.LET;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:97:29: ( 'let' )
+ // XQueryLexer.g:97:31: 'let'
+ this.match("let");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "LET",
+
+ // $ANTLR start LT
+ mLT: function() {
+ try {
+ var _type = this.LT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:98:29: ( 'lt' )
+ // XQueryLexer.g:98:31: 'lt'
+ this.match("lt");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "LT",
+
+ // $ANTLR start MOD
+ mMOD: function() {
+ try {
+ var _type = this.MOD;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:99:29: ( 'mod' )
+ // XQueryLexer.g:99:31: 'mod'
+ this.match("mod");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "MOD",
+
+ // $ANTLR start MODULE
+ mMODULE: function() {
+ try {
+ var _type = this.MODULE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:100:29: ( 'module' )
+ // XQueryLexer.g:100:31: 'module'
+ this.match("module");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "MODULE",
+
+ // $ANTLR start NAMESPACE
+ mNAMESPACE: function() {
+ try {
+ var _type = this.NAMESPACE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:101:29: ( 'namespace' )
+ // XQueryLexer.g:101:31: 'namespace'
+ this.match("namespace");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NAMESPACE",
+
+ // $ANTLR start NE
+ mNE: function() {
+ try {
+ var _type = this.NE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:102:29: ( 'ne' )
+ // XQueryLexer.g:102:31: 'ne'
+ this.match("ne");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NE",
+
+ // $ANTLR start NO_INHERIT
+ mNO_INHERIT: function() {
+ try {
+ var _type = this.NO_INHERIT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:103:29: ( 'no-inherit' )
+ // XQueryLexer.g:103:31: 'no-inherit'
+ this.match("no-inherit");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NO_INHERIT",
+
+ // $ANTLR start NO_PRESERVE
+ mNO_PRESERVE: function() {
+ try {
+ var _type = this.NO_PRESERVE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:104:29: ( 'no-preserve' )
+ // XQueryLexer.g:104:31: 'no-preserve'
+ this.match("no-preserve");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NO_PRESERVE",
+
+ // $ANTLR start NODE
+ mNODE: function() {
+ try {
+ var _type = this.NODE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:105:29: ( 'node' )
+ // XQueryLexer.g:105:31: 'node'
+ this.match("node");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NODE",
+
+ // $ANTLR start OF
+ mOF: function() {
+ try {
+ var _type = this.OF;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:106:29: ( 'of' )
+ // XQueryLexer.g:106:31: 'of'
+ this.match("of");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "OF",
+
+ // $ANTLR start OPTION
+ mOPTION: function() {
+ try {
+ var _type = this.OPTION;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:107:29: ( 'option' )
+ // XQueryLexer.g:107:31: 'option'
+ this.match("option");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "OPTION",
+
+ // $ANTLR start OR
+ mOR: function() {
+ try {
+ var _type = this.OR;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:108:29: ( 'or' )
+ // XQueryLexer.g:108:31: 'or'
+ this.match("or");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "OR",
+
+ // $ANTLR start ORDER
+ mORDER: function() {
+ try {
+ var _type = this.ORDER;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:109:29: ( 'order' )
+ // XQueryLexer.g:109:31: 'order'
+ this.match("order");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ORDER",
+
+ // $ANTLR start ORDERED
+ mORDERED: function() {
+ try {
+ var _type = this.ORDERED;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:110:29: ( 'ordered' )
+ // XQueryLexer.g:110:31: 'ordered'
+ this.match("ordered");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ORDERED",
+
+ // $ANTLR start ORDERING
+ mORDERING: function() {
+ try {
+ var _type = this.ORDERING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:111:29: ( 'ordering' )
+ // XQueryLexer.g:111:31: 'ordering'
+ this.match("ordering");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ORDERING",
+
+ // $ANTLR start PARENT
+ mPARENT: function() {
+ try {
+ var _type = this.PARENT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:112:29: ( 'parent' )
+ // XQueryLexer.g:112:31: 'parent'
+ this.match("parent");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PARENT",
+
+ // $ANTLR start PRECEDING
+ mPRECEDING: function() {
+ try {
+ var _type = this.PRECEDING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:113:29: ( 'preceding' )
+ // XQueryLexer.g:113:31: 'preceding'
+ this.match("preceding");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PRECEDING",
+
+ // $ANTLR start PRECEDING_SIBLING
+ mPRECEDING_SIBLING: function() {
+ try {
+ var _type = this.PRECEDING_SIBLING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:114:29: ( 'preceding-sibling' )
+ // XQueryLexer.g:114:31: 'preceding-sibling'
+ this.match("preceding-sibling");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PRECEDING_SIBLING",
+
+ // $ANTLR start PRESERVE
+ mPRESERVE: function() {
+ try {
+ var _type = this.PRESERVE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:115:29: ( 'preserve' )
+ // XQueryLexer.g:115:31: 'preserve'
+ this.match("preserve");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PRESERVE",
+
+ // $ANTLR start PROCESSING_INSTRUCTION
+ mPROCESSING_INSTRUCTION: function() {
+ try {
+ var _type = this.PROCESSING_INSTRUCTION;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:116:29: ( 'processing-instruction' )
+ // XQueryLexer.g:116:31: 'processing-instruction'
+ this.match("processing-instruction");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PROCESSING_INSTRUCTION",
+
+ // $ANTLR start RETURN
+ mRETURN: function() {
+ try {
+ var _type = this.RETURN;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:117:29: ( 'return' )
+ // XQueryLexer.g:117:31: 'return'
+ this.match("return");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "RETURN",
+
+ // $ANTLR start SATISFIES
+ mSATISFIES: function() {
+ try {
+ var _type = this.SATISFIES;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:118:29: ( 'satisfies' )
+ // XQueryLexer.g:118:31: 'satisfies'
+ this.match("satisfies");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SATISFIES",
+
+ // $ANTLR start SCHEMA
+ mSCHEMA: function() {
+ try {
+ var _type = this.SCHEMA;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:119:29: ( 'schema' )
+ // XQueryLexer.g:119:31: 'schema'
+ this.match("schema");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SCHEMA",
+
+ // $ANTLR start SCHEMA_ATTRIBUTE
+ mSCHEMA_ATTRIBUTE: function() {
+ try {
+ var _type = this.SCHEMA_ATTRIBUTE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:120:29: ( 'schema-attribute' )
+ // XQueryLexer.g:120:31: 'schema-attribute'
+ this.match("schema-attribute");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SCHEMA_ATTRIBUTE",
+
+ // $ANTLR start SCHEMA_ELEMENT
+ mSCHEMA_ELEMENT: function() {
+ try {
+ var _type = this.SCHEMA_ELEMENT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:121:29: ( 'schema-element' )
+ // XQueryLexer.g:121:31: 'schema-element'
+ this.match("schema-element");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SCHEMA_ELEMENT",
+
+ // $ANTLR start SELF
+ mSELF: function() {
+ try {
+ var _type = this.SELF;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:122:29: ( 'self' )
+ // XQueryLexer.g:122:31: 'self'
+ this.match("self");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SELF",
+
+ // $ANTLR start SOME
+ mSOME: function() {
+ try {
+ var _type = this.SOME;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:123:29: ( 'some' )
+ // XQueryLexer.g:123:31: 'some'
+ this.match("some");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SOME",
+
+ // $ANTLR start STABLE
+ mSTABLE: function() {
+ try {
+ var _type = this.STABLE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:124:29: ( 'stable' )
+ // XQueryLexer.g:124:31: 'stable'
+ this.match("stable");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "STABLE",
+
+ // $ANTLR start STRICT
+ mSTRICT: function() {
+ try {
+ var _type = this.STRICT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:125:29: ( 'strict' )
+ // XQueryLexer.g:125:31: 'strict'
+ this.match("strict");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "STRICT",
+
+ // $ANTLR start STRIP
+ mSTRIP: function() {
+ try {
+ var _type = this.STRIP;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:126:29: ( 'strip' )
+ // XQueryLexer.g:126:31: 'strip'
+ this.match("strip");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "STRIP",
+
+ // $ANTLR start TEXT
+ mTEXT: function() {
+ try {
+ var _type = this.TEXT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:127:29: ( 'text' )
+ // XQueryLexer.g:127:31: 'text'
+ this.match("text");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "TEXT",
+
+ // $ANTLR start THEN
+ mTHEN: function() {
+ try {
+ var _type = this.THEN;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:128:29: ( 'then' )
+ // XQueryLexer.g:128:31: 'then'
+ this.match("then");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "THEN",
+
+ // $ANTLR start TO
+ mTO: function() {
+ try {
+ var _type = this.TO;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:129:29: ( 'to' )
+ // XQueryLexer.g:129:31: 'to'
+ this.match("to");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "TO",
+
+ // $ANTLR start TREAT
+ mTREAT: function() {
+ try {
+ var _type = this.TREAT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:130:29: ( 'treat' )
+ // XQueryLexer.g:130:31: 'treat'
+ this.match("treat");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "TREAT",
+
+ // $ANTLR start TYPESWITCH
+ mTYPESWITCH: function() {
+ try {
+ var _type = this.TYPESWITCH;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:131:29: ( 'typeswitch' )
+ // XQueryLexer.g:131:31: 'typeswitch'
+ this.match("typeswitch");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "TYPESWITCH",
+
+ // $ANTLR start UNION
+ mUNION: function() {
+ try {
+ var _type = this.UNION;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:132:29: ( 'union' )
+ // XQueryLexer.g:132:31: 'union'
+ this.match("union");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "UNION",
+
+ // $ANTLR start UNORDERED
+ mUNORDERED: function() {
+ try {
+ var _type = this.UNORDERED;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:133:29: ( 'unordered' )
+ // XQueryLexer.g:133:31: 'unordered'
+ this.match("unordered");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "UNORDERED",
+
+ // $ANTLR start VALIDATE
+ mVALIDATE: function() {
+ try {
+ var _type = this.VALIDATE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:134:29: ( 'validate' )
+ // XQueryLexer.g:134:31: 'validate'
+ this.match("validate");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "VALIDATE",
+
+ // $ANTLR start VARIABLE
+ mVARIABLE: function() {
+ try {
+ var _type = this.VARIABLE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:135:29: ( 'variable' )
+ // XQueryLexer.g:135:31: 'variable'
+ this.match("variable");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "VARIABLE",
+
+ // $ANTLR start VERSION
+ mVERSION: function() {
+ try {
+ var _type = this.VERSION;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:136:29: ( 'version' )
+ // XQueryLexer.g:136:31: 'version'
+ this.match("version");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "VERSION",
+
+ // $ANTLR start WHERE
+ mWHERE: function() {
+ try {
+ var _type = this.WHERE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:137:29: ( 'where' )
+ // XQueryLexer.g:137:31: 'where'
+ this.match("where");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "WHERE",
+
+ // $ANTLR start XQUERY
+ mXQUERY: function() {
+ try {
+ var _type = this.XQUERY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:138:29: ( 'xquery' )
+ // XQueryLexer.g:138:31: 'xquery'
+ this.match("xquery");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "XQUERY",
+
+ // $ANTLR start CATCH
+ mCATCH: function() {
+ try {
+ var _type = this.CATCH;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:140:29: ( 'catch' )
+ // XQueryLexer.g:140:31: 'catch'
+ this.match("catch");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CATCH",
+
+ // $ANTLR start CONTEXT
+ mCONTEXT: function() {
+ try {
+ var _type = this.CONTEXT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:141:29: ( 'context' )
+ // XQueryLexer.g:141:31: 'context'
+ this.match("context");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CONTEXT",
+
+ // $ANTLR start COUNT
+ mCOUNT: function() {
+ try {
+ var _type = this.COUNT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:142:29: ( 'count' )
+ // XQueryLexer.g:142:31: 'count'
+ this.match("count");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "COUNT",
+
+ // $ANTLR start DECIMAL_FORMAT
+ mDECIMAL_FORMAT: function() {
+ try {
+ var _type = this.DECIMAL_FORMAT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:143:29: ( 'decimal-format' )
+ // XQueryLexer.g:143:31: 'decimal-format'
+ this.match("decimal-format");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DECIMAL_FORMAT",
+
+ // $ANTLR start DECIMAL_SEPARATOR
+ mDECIMAL_SEPARATOR: function() {
+ try {
+ var _type = this.DECIMAL_SEPARATOR;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:144:29: ( 'decimal-separator' )
+ // XQueryLexer.g:144:31: 'decimal-separator'
+ this.match("decimal-separator");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DECIMAL_SEPARATOR",
+
+ // $ANTLR start DIGIT
+ mDIGIT: function() {
+ try {
+ var _type = this.DIGIT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:145:29: ( 'digit' )
+ // XQueryLexer.g:145:31: 'digit'
+ this.match("digit");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DIGIT",
+
+ // $ANTLR start END
+ mEND: function() {
+ try {
+ var _type = this.END;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:146:29: ( 'end' )
+ // XQueryLexer.g:146:31: 'end'
+ this.match("end");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "END",
+
+ // $ANTLR start GROUP
+ mGROUP: function() {
+ try {
+ var _type = this.GROUP;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:147:29: ( 'group' )
+ // XQueryLexer.g:147:31: 'group'
+ this.match("group");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "GROUP",
+
+ // $ANTLR start GROUPING_SEPARATOR
+ mGROUPING_SEPARATOR: function() {
+ try {
+ var _type = this.GROUPING_SEPARATOR;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:148:29: ( 'grouping-separator' )
+ // XQueryLexer.g:148:31: 'grouping-separator'
+ this.match("grouping-separator");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "GROUPING_SEPARATOR",
+
+ // $ANTLR start INFINITY
+ mINFINITY: function() {
+ try {
+ var _type = this.INFINITY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:149:29: ( 'infinity' )
+ // XQueryLexer.g:149:31: 'infinity'
+ this.match("infinity");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "INFINITY",
+
+ // $ANTLR start MINUS_SIGN
+ mMINUS_SIGN: function() {
+ try {
+ var _type = this.MINUS_SIGN;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:150:29: ( 'minus-sign' )
+ // XQueryLexer.g:150:31: 'minus-sign'
+ this.match("minus-sign");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "MINUS_SIGN",
+
+ // $ANTLR start NAMESPACE_NODE
+ mNAMESPACE_NODE: function() {
+ try {
+ var _type = this.NAMESPACE_NODE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:151:29: ( 'namespace-node' )
+ // XQueryLexer.g:151:31: 'namespace-node'
+ this.match("namespace-node");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NAMESPACE_NODE",
+
+ // $ANTLR start NAN
+ mNAN: function() {
+ try {
+ var _type = this.NAN;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:152:29: ( 'NaN' )
+ // XQueryLexer.g:152:31: 'NaN'
+ this.match("NaN");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NAN",
+
+ // $ANTLR start NEXT
+ mNEXT: function() {
+ try {
+ var _type = this.NEXT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:153:29: ( 'next' )
+ // XQueryLexer.g:153:31: 'next'
+ this.match("next");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NEXT",
+
+ // $ANTLR start ONLY
+ mONLY: function() {
+ try {
+ var _type = this.ONLY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:154:29: ( 'only' )
+ // XQueryLexer.g:154:31: 'only'
+ this.match("only");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ONLY",
+
+ // $ANTLR start OUTER
+ mOUTER: function() {
+ try {
+ var _type = this.OUTER;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:155:29: ( 'outer' )
+ // XQueryLexer.g:155:31: 'outer'
+ this.match("outer");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "OUTER",
+
+ // $ANTLR start PATTERN_SEPARATOR
+ mPATTERN_SEPARATOR: function() {
+ try {
+ var _type = this.PATTERN_SEPARATOR;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:156:29: ( 'pattern-separator' )
+ // XQueryLexer.g:156:31: 'pattern-separator'
+ this.match("pattern-separator");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PATTERN_SEPARATOR",
+
+ // $ANTLR start PERCENT
+ mPERCENT: function() {
+ try {
+ var _type = this.PERCENT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:157:29: ( 'percent' )
+ // XQueryLexer.g:157:31: 'percent'
+ this.match("percent");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PERCENT",
+
+ // $ANTLR start PER_MILLE
+ mPER_MILLE: function() {
+ try {
+ var _type = this.PER_MILLE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:158:29: ( 'per-mille' )
+ // XQueryLexer.g:158:31: 'per-mille'
+ this.match("per-mille");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PER_MILLE",
+
+ // $ANTLR start PREVIOUS
+ mPREVIOUS: function() {
+ try {
+ var _type = this.PREVIOUS;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:159:29: ( 'previous' )
+ // XQueryLexer.g:159:31: 'previous'
+ this.match("previous");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PREVIOUS",
+
+ // $ANTLR start SLIDING
+ mSLIDING: function() {
+ try {
+ var _type = this.SLIDING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:160:29: ( 'sliding' )
+ // XQueryLexer.g:160:31: 'sliding'
+ this.match("sliding");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SLIDING",
+
+ // $ANTLR start START
+ mSTART: function() {
+ try {
+ var _type = this.START;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:161:29: ( 'start' )
+ // XQueryLexer.g:161:31: 'start'
+ this.match("start");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "START",
+
+ // $ANTLR start TRY
+ mTRY: function() {
+ try {
+ var _type = this.TRY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:162:29: ( 'try' )
+ // XQueryLexer.g:162:31: 'try'
+ this.match("try");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "TRY",
+
+ // $ANTLR start TUMBLING
+ mTUMBLING: function() {
+ try {
+ var _type = this.TUMBLING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:163:29: ( 'tumbling' )
+ // XQueryLexer.g:163:31: 'tumbling'
+ this.match("tumbling");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "TUMBLING",
+
+ // $ANTLR start WHEN
+ mWHEN: function() {
+ try {
+ var _type = this.WHEN;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:164:29: ( 'when' )
+ // XQueryLexer.g:164:31: 'when'
+ this.match("when");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "WHEN",
+
+ // $ANTLR start WINDOW
+ mWINDOW: function() {
+ try {
+ var _type = this.WINDOW;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:165:29: ( 'window' )
+ // XQueryLexer.g:165:31: 'window'
+ this.match("window");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "WINDOW",
+
+ // $ANTLR start ZERO_DIGIT
+ mZERO_DIGIT: function() {
+ try {
+ var _type = this.ZERO_DIGIT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:166:29: ( 'zero-digit' )
+ // XQueryLexer.g:166:31: 'zero-digit'
+ this.match("zero-digit");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ZERO_DIGIT",
+
+ // $ANTLR start AFTER
+ mAFTER: function() {
+ try {
+ var _type = this.AFTER;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:168:29: ( 'after' )
+ // XQueryLexer.g:168:31: 'after'
+ this.match("after");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "AFTER",
+
+ // $ANTLR start BEFORE
+ mBEFORE: function() {
+ try {
+ var _type = this.BEFORE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:169:29: ( 'before' )
+ // XQueryLexer.g:169:31: 'before'
+ this.match("before");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "BEFORE",
+
+ // $ANTLR start COPY
+ mCOPY: function() {
+ try {
+ var _type = this.COPY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:170:29: ( 'copy' )
+ // XQueryLexer.g:170:31: 'copy'
+ this.match("copy");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "COPY",
+
+ // $ANTLR start DELETE
+ mDELETE: function() {
+ try {
+ var _type = this.DELETE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:171:29: ( 'delete' )
+ // XQueryLexer.g:171:31: 'delete'
+ this.match("delete");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DELETE",
+
+ // $ANTLR start FIRST
+ mFIRST: function() {
+ try {
+ var _type = this.FIRST;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:172:29: ( 'first' )
+ // XQueryLexer.g:172:31: 'first'
+ this.match("first");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "FIRST",
+
+ // $ANTLR start INSERT
+ mINSERT: function() {
+ try {
+ var _type = this.INSERT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:173:29: ( 'insert' )
+ // XQueryLexer.g:173:31: 'insert'
+ this.match("insert");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "INSERT",
+
+ // $ANTLR start INTO
+ mINTO: function() {
+ try {
+ var _type = this.INTO;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:174:29: ( 'into' )
+ // XQueryLexer.g:174:31: 'into'
+ this.match("into");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "INTO",
+
+ // $ANTLR start LAST
+ mLAST: function() {
+ try {
+ var _type = this.LAST;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:175:29: ( 'last' )
+ // XQueryLexer.g:175:31: 'last'
+ this.match("last");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "LAST",
+
+ // $ANTLR start MODIFY
+ mMODIFY: function() {
+ try {
+ var _type = this.MODIFY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:176:29: ( 'modify' )
+ // XQueryLexer.g:176:31: 'modify'
+ this.match("modify");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "MODIFY",
+
+ // $ANTLR start NODES
+ mNODES: function() {
+ try {
+ var _type = this.NODES;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:177:29: ( 'nodes' )
+ // XQueryLexer.g:177:31: 'nodes'
+ this.match("nodes");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NODES",
+
+ // $ANTLR start RENAME
+ mRENAME: function() {
+ try {
+ var _type = this.RENAME;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:178:29: ( 'rename' )
+ // XQueryLexer.g:178:31: 'rename'
+ this.match("rename");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "RENAME",
+
+ // $ANTLR start REPLACE
+ mREPLACE: function() {
+ try {
+ var _type = this.REPLACE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:179:29: ( 'replace' )
+ // XQueryLexer.g:179:31: 'replace'
+ this.match("replace");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "REPLACE",
+
+ // $ANTLR start REVALIDATION
+ mREVALIDATION: function() {
+ try {
+ var _type = this.REVALIDATION;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:180:29: ( 'revalidation' )
+ // XQueryLexer.g:180:31: 'revalidation'
+ this.match("revalidation");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "REVALIDATION",
+
+ // $ANTLR start SKIP
+ mSKIP: function() {
+ try {
+ var _type = this.SKIP;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:181:29: ( 'skip' )
+ // XQueryLexer.g:181:31: 'skip'
+ this.match("skip");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SKIP",
+
+ // $ANTLR start UPDATING
+ mUPDATING: function() {
+ try {
+ var _type = this.UPDATING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:182:29: ( 'updating' )
+ // XQueryLexer.g:182:31: 'updating'
+ this.match("updating");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "UPDATING",
+
+ // $ANTLR start VALUE
+ mVALUE: function() {
+ try {
+ var _type = this.VALUE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:183:29: ( 'value' )
+ // XQueryLexer.g:183:31: 'value'
+ this.match("value");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "VALUE",
+
+ // $ANTLR start WITH
+ mWITH: function() {
+ try {
+ var _type = this.WITH;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:184:29: ( 'with' )
+ // XQueryLexer.g:184:31: 'with'
+ this.match("with");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "WITH",
+
+ // $ANTLR start BLOCK
+ mBLOCK: function() {
+ try {
+ var _type = this.BLOCK;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:186:29: ( 'block' )
+ // XQueryLexer.g:186:31: 'block'
+ this.match("block");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "BLOCK",
+
+ // $ANTLR start CONSTANT
+ mCONSTANT: function() {
+ try {
+ var _type = this.CONSTANT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:187:29: ( 'constant' )
+ // XQueryLexer.g:187:31: 'constant'
+ this.match("constant");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CONSTANT",
+
+ // $ANTLR start EXIT
+ mEXIT: function() {
+ try {
+ var _type = this.EXIT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:188:29: ( 'exit' )
+ // XQueryLexer.g:188:31: 'exit'
+ this.match("exit");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "EXIT",
+
+ // $ANTLR start RETURNING
+ mRETURNING: function() {
+ try {
+ var _type = this.RETURNING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:189:29: ( 'returning' )
+ // XQueryLexer.g:189:31: 'returning'
+ this.match("returning");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "RETURNING",
+
+ // $ANTLR start SEQUENTIAL
+ mSEQUENTIAL: function() {
+ try {
+ var _type = this.SEQUENTIAL;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:190:29: ( 'sequential' )
+ // XQueryLexer.g:190:31: 'sequential'
+ this.match("sequential");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SEQUENTIAL",
+
+ // $ANTLR start SET
+ mSET: function() {
+ try {
+ var _type = this.SET;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:191:29: ( 'set' )
+ // XQueryLexer.g:191:31: 'set'
+ this.match("set");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SET",
+
+ // $ANTLR start SIMPLE
+ mSIMPLE: function() {
+ try {
+ var _type = this.SIMPLE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:192:29: ( 'simple' )
+ // XQueryLexer.g:192:31: 'simple'
+ this.match("simple");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SIMPLE",
+
+ // $ANTLR start WHILE
+ mWHILE: function() {
+ try {
+ var _type = this.WHILE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:193:29: ( 'while' )
+ // XQueryLexer.g:193:31: 'while'
+ this.match("while");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "WHILE",
+
+ // $ANTLR start EVAL
+ mEVAL: function() {
+ try {
+ var _type = this.EVAL;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:195:29: ( 'eval' )
+ // XQueryLexer.g:195:31: 'eval'
+ this.match("eval");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "EVAL",
+
+ // $ANTLR start USING
+ mUSING: function() {
+ try {
+ var _type = this.USING;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:196:29: ( 'using' )
+ // XQueryLexer.g:196:31: 'using'
+ this.match("using");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "USING",
+
+ // $ANTLR start APPEND_ONLY
+ mAPPEND_ONLY: function() {
+ try {
+ var _type = this.APPEND_ONLY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:198:29: ( 'append-only' )
+ // XQueryLexer.g:198:31: 'append-only'
+ this.match("append-only");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "APPEND_ONLY",
+
+ // $ANTLR start AUTOMATICALLY
+ mAUTOMATICALLY: function() {
+ try {
+ var _type = this.AUTOMATICALLY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:199:29: ( 'automatically' )
+ // XQueryLexer.g:199:31: 'automatically'
+ this.match("automatically");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "AUTOMATICALLY",
+
+ // $ANTLR start CHECK
+ mCHECK: function() {
+ try {
+ var _type = this.CHECK;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:200:29: ( 'check' )
+ // XQueryLexer.g:200:31: 'check'
+ this.match("check");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CHECK",
+
+ // $ANTLR start COLLECTION
+ mCOLLECTION: function() {
+ try {
+ var _type = this.COLLECTION;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:201:29: ( 'collection' )
+ // XQueryLexer.g:201:31: 'collection'
+ this.match("collection");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "COLLECTION",
+
+ // $ANTLR start CONSTRAINT
+ mCONSTRAINT: function() {
+ try {
+ var _type = this.CONSTRAINT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:202:29: ( 'constraint' )
+ // XQueryLexer.g:202:31: 'constraint'
+ this.match("constraint");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CONSTRAINT",
+
+ // $ANTLR start CONST
+ mCONST: function() {
+ try {
+ var _type = this.CONST;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:203:29: ( 'const' )
+ // XQueryLexer.g:203:31: 'const'
+ this.match("const");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CONST",
+
+ // $ANTLR start EQUALITY
+ mEQUALITY: function() {
+ try {
+ var _type = this.EQUALITY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:204:29: ( 'equality' )
+ // XQueryLexer.g:204:31: 'equality'
+ this.match("equality");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "EQUALITY",
+
+ // $ANTLR start FOREACH
+ mFOREACH: function() {
+ try {
+ var _type = this.FOREACH;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:205:29: ( 'foreach' )
+ // XQueryLexer.g:205:31: 'foreach'
+ this.match("foreach");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "FOREACH",
+
+ // $ANTLR start FOREIGN
+ mFOREIGN: function() {
+ try {
+ var _type = this.FOREIGN;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:206:29: ( 'foreign' )
+ // XQueryLexer.g:206:31: 'foreign'
+ this.match("foreign");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "FOREIGN",
+
+ // $ANTLR start FROM
+ mFROM: function() {
+ try {
+ var _type = this.FROM;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:207:29: ( 'from' )
+ // XQueryLexer.g:207:31: 'from'
+ this.match("from");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "FROM",
+
+ // $ANTLR start INDEX
+ mINDEX: function() {
+ try {
+ var _type = this.INDEX;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:208:29: ( 'index' )
+ // XQueryLexer.g:208:31: 'index'
+ this.match("index");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "INDEX",
+
+ // $ANTLR start INTEGRITY
+ mINTEGRITY: function() {
+ try {
+ var _type = this.INTEGRITY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:209:29: ( 'integrity' )
+ // XQueryLexer.g:209:31: 'integrity'
+ this.match("integrity");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "INTEGRITY",
+
+ // $ANTLR start KEY
+ mKEY: function() {
+ try {
+ var _type = this.KEY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:210:29: ( 'key' )
+ // XQueryLexer.g:210:31: 'key'
+ this.match("key");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "KEY",
+
+ // $ANTLR start MAINTAINED
+ mMAINTAINED: function() {
+ try {
+ var _type = this.MAINTAINED;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:211:29: ( 'maintained' )
+ // XQueryLexer.g:211:31: 'maintained'
+ this.match("maintained");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "MAINTAINED",
+
+ // $ANTLR start MANUALLY
+ mMANUALLY: function() {
+ try {
+ var _type = this.MANUALLY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:212:29: ( 'manually' )
+ // XQueryLexer.g:212:31: 'manually'
+ this.match("manually");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "MANUALLY",
+
+ // $ANTLR start MUTABLE
+ mMUTABLE: function() {
+ try {
+ var _type = this.MUTABLE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:213:29: ( 'mutable' )
+ // XQueryLexer.g:213:31: 'mutable'
+ this.match("mutable");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "MUTABLE",
+
+ // $ANTLR start NON
+ mNON: function() {
+ try {
+ var _type = this.NON;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:214:29: ( 'non' )
+ // XQueryLexer.g:214:31: 'non'
+ this.match("non");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NON",
+
+ // $ANTLR start ON
+ mON: function() {
+ try {
+ var _type = this.ON;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:215:29: ( 'on' )
+ // XQueryLexer.g:215:31: 'on'
+ this.match("on");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ON",
+
+ // $ANTLR start QUEUE
+ mQUEUE: function() {
+ try {
+ var _type = this.QUEUE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:216:29: ( 'queue' )
+ // XQueryLexer.g:216:31: 'queue'
+ this.match("queue");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "QUEUE",
+
+ // $ANTLR start RANGE
+ mRANGE: function() {
+ try {
+ var _type = this.RANGE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:217:29: ( 'range' )
+ // XQueryLexer.g:217:31: 'range'
+ this.match("range");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "RANGE",
+
+ // $ANTLR start READ_ONLY
+ mREAD_ONLY: function() {
+ try {
+ var _type = this.READ_ONLY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:218:29: ( 'read-only' )
+ // XQueryLexer.g:218:31: 'read-only'
+ this.match("read-only");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "READ_ONLY",
+
+ // $ANTLR start UNIQUE
+ mUNIQUE: function() {
+ try {
+ var _type = this.UNIQUE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:219:29: ( 'unique' )
+ // XQueryLexer.g:219:31: 'unique'
+ this.match("unique");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "UNIQUE",
+
+ // $ANTLR start BINARY
+ mBINARY: function() {
+ try {
+ var _type = this.BINARY;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:221:29: ( 'binary' )
+ // XQueryLexer.g:221:31: 'binary'
+ this.match("binary");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "BINARY",
+
+ // $ANTLR start PRIVATE
+ mPRIVATE: function() {
+ try {
+ var _type = this.PRIVATE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:222:29: ( 'private' )
+ // XQueryLexer.g:222:31: 'private'
+ this.match("private");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PRIVATE",
+
+ // $ANTLR start AMP_ER
+ mAMP_ER: function() {
+ try {
+ var _type = this.AMP_ER;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:225:9: ( 'amp' )
+ // XQueryLexer.g:225:11: 'amp'
+ this.match("amp");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "AMP_ER",
+
+ // $ANTLR start APOS_ER
+ mAPOS_ER: function() {
+ try {
+ var _type = this.APOS_ER;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:226:9: ( 'apos' )
+ // XQueryLexer.g:226:11: 'apos'
+ this.match("apos");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "APOS_ER",
+
+ // $ANTLR start QUOT_ER
+ mQUOT_ER: function() {
+ try {
+ var _type = this.QUOT_ER;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:227:9: ( 'quot' )
+ // XQueryLexer.g:227:11: 'quot'
+ this.match("quot");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "QUOT_ER",
+
+ // $ANTLR start LPAREN
+ mLPAREN: function() {
+ try {
+ var _type = this.LPAREN;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:234:25: ( '(' )
+ // XQueryLexer.g:234:27: '('
+ this.match('(');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "LPAREN",
+
+ // $ANTLR start RPAREN
+ mRPAREN: function() {
+ try {
+ var _type = this.RPAREN;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:235:25: ( ')' )
+ // XQueryLexer.g:235:27: ')'
+ this.match(')');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "RPAREN",
+
+ // $ANTLR start DOLLAR
+ mDOLLAR: function() {
+ try {
+ var _type = this.DOLLAR;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:236:25: ( '$' )
+ // XQueryLexer.g:236:27: '$'
+ this.match('$');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DOLLAR",
+
+ // $ANTLR start LBRACKET
+ mLBRACKET: function() {
+ try {
+ var _type = this.LBRACKET;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:237:25: ( '{' )
+ // XQueryLexer.g:237:27: '{'
+ this.match('{');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "LBRACKET",
+
+ // $ANTLR start RBRACKET
+ mRBRACKET: function() {
+ try {
+ var _type = this.RBRACKET;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:238:25: ( '}' )
+ // XQueryLexer.g:238:27: '}'
+ this.match('}');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "RBRACKET",
+
+ // $ANTLR start LSQUARE
+ mLSQUARE: function() {
+ try {
+ var _type = this.LSQUARE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:239:25: ( '[' )
+ // XQueryLexer.g:239:27: '['
+ this.match('[');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "LSQUARE",
+
+ // $ANTLR start RSQUARE
+ mRSQUARE: function() {
+ try {
+ var _type = this.RSQUARE;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:240:25: ( ']' )
+ // XQueryLexer.g:240:27: ']'
+ this.match(']');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "RSQUARE",
+
+ // $ANTLR start EQUAL
+ mEQUAL: function() {
+ try {
+ var _type = this.EQUAL;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:241:25: ( '=' )
+ // XQueryLexer.g:241:27: '='
+ this.match('=');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "EQUAL",
+
+ // $ANTLR start BIND
+ mBIND: function() {
+ try {
+ var _type = this.BIND;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:242:25: ( ':=' )
+ // XQueryLexer.g:242:27: ':='
+ this.match(":=");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "BIND",
+
+ // $ANTLR start NOTEQUAL
+ mNOTEQUAL: function() {
+ try {
+ var _type = this.NOTEQUAL;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:243:25: ( '!=' )
+ // XQueryLexer.g:243:27: '!='
+ this.match("!=");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NOTEQUAL",
+
+ // $ANTLR start AMP
+ mAMP: function() {
+ try {
+ var _type = this.AMP;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:244:25: ( '&' )
+ // XQueryLexer.g:244:27: '&'
+ this.match('&');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "AMP",
+
+ // $ANTLR start COMMA
+ mCOMMA: function() {
+ try {
+ var _type = this.COMMA;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:245:25: ( ',' )
+ // XQueryLexer.g:245:27: ','
+ this.match(',');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "COMMA",
+
+ // $ANTLR start QUESTION
+ mQUESTION: function() {
+ try {
+ var _type = this.QUESTION;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:246:25: ( '?' )
+ // XQueryLexer.g:246:27: '?'
+ this.match('?');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "QUESTION",
+
+ // $ANTLR start STAR
+ mSTAR: function() {
+ try {
+ var _type = this.STAR;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:247:25: ( '*' )
+ // XQueryLexer.g:247:27: '*'
+ this.match('*');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "STAR",
+
+ // $ANTLR start PLUS
+ mPLUS: function() {
+ try {
+ var _type = this.PLUS;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:248:25: ( '+' )
+ // XQueryLexer.g:248:27: '+'
+ this.match('+');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PLUS",
+
+ // $ANTLR start MINUS
+ mMINUS: function() {
+ try {
+ var _type = this.MINUS;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:249:25: ( '-' )
+ // XQueryLexer.g:249:27: '-'
+ this.match('-');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "MINUS",
+
+ // $ANTLR start SMALLER
+ mSMALLER: function() {
+ try {
+ var _type = this.SMALLER;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:250:25: ( '<' )
+ // XQueryLexer.g:250:27: '<'
+ this.match('<');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SMALLER",
+
+ // $ANTLR start GREATER
+ mGREATER: function() {
+ try {
+ var _type = this.GREATER;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:251:25: ( '>' )
+ // XQueryLexer.g:251:27: '>'
+ this.match('>');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "GREATER",
+
+ // $ANTLR start SMALLEREQ
+ mSMALLEREQ: function() {
+ try {
+ var _type = this.SMALLEREQ;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:252:25: ( '<=' )
+ // XQueryLexer.g:252:27: '<='
+ this.match("<=");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SMALLEREQ",
+
+ // $ANTLR start GREATEREQ
+ mGREATEREQ: function() {
+ try {
+ var _type = this.GREATEREQ;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:253:25: ( '>=' )
+ // XQueryLexer.g:253:27: '>='
+ this.match(">=");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "GREATEREQ",
+
+ // $ANTLR start SMALLER_SMALLER
+ mSMALLER_SMALLER: function() {
+ try {
+ var _type = this.SMALLER_SMALLER;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:254:25: ( '<<' )
+ // XQueryLexer.g:254:27: '<<'
+ this.match("<<");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SMALLER_SMALLER",
+
+ // $ANTLR start GREATER_GREATER
+ mGREATER_GREATER: function() {
+ try {
+ var _type = this.GREATER_GREATER;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:255:25: ( '>>' )
+ // XQueryLexer.g:255:27: '>>'
+ this.match(">>");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "GREATER_GREATER",
+
+ // $ANTLR start SLASH
+ mSLASH: function() {
+ try {
+ var _type = this.SLASH;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:256:25: ( '/' )
+ // XQueryLexer.g:256:27: '/'
+ this.match('/');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SLASH",
+
+ // $ANTLR start SLASH_SLASH
+ mSLASH_SLASH: function() {
+ try {
+ var _type = this.SLASH_SLASH;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:257:25: ( '//' )
+ // XQueryLexer.g:257:27: '//'
+ this.match("//");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SLASH_SLASH",
+
+ // $ANTLR start DOT
+ mDOT: function() {
+ try {
+ var _type = this.DOT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:258:25: ( '.' )
+ // XQueryLexer.g:258:27: '.'
+ this.match('.');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DOT",
+
+ // $ANTLR start DOT_DOT
+ mDOT_DOT: function() {
+ try {
+ var _type = this.DOT_DOT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:259:25: ( '..' )
+ // XQueryLexer.g:259:27: '..'
+ this.match("..");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "DOT_DOT",
+
+ // $ANTLR start COLON
+ mCOLON: function() {
+ try {
+ var _type = this.COLON;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:260:25: ( ':' )
+ // XQueryLexer.g:260:27: ':'
+ this.match(':');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "COLON",
+
+ // $ANTLR start COLON_COLON
+ mCOLON_COLON: function() {
+ try {
+ var _type = this.COLON_COLON;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:261:25: ( '::' )
+ // XQueryLexer.g:261:27: '::'
+ this.match("::");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "COLON_COLON",
+
+ // $ANTLR start EMPTY_CLOSE_TAG
+ mEMPTY_CLOSE_TAG: function() {
+ try {
+ var _type = this.EMPTY_CLOSE_TAG;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:262:25: ( '/>' )
+ // XQueryLexer.g:262:27: '/>'
+ this.match("/>");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "EMPTY_CLOSE_TAG",
+
+ // $ANTLR start CLOSE_TAG
+ mCLOSE_TAG: function() {
+ try {
+ var _type = this.CLOSE_TAG;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:263:25: ( '' )
+ // XQueryLexer.g:263:27: ''
+ this.match("");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CLOSE_TAG",
+
+ // $ANTLR start SEMICOLON
+ mSEMICOLON: function() {
+ try {
+ var _type = this.SEMICOLON;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:264:25: ( ';' )
+ // XQueryLexer.g:264:27: ';'
+ this.match(';');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SEMICOLON",
+
+ // $ANTLR start VBAR
+ mVBAR: function() {
+ try {
+ var _type = this.VBAR;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:265:25: ( '|' )
+ // XQueryLexer.g:265:27: '|'
+ this.match('|');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "VBAR",
+
+ // $ANTLR start PRAGMA_START
+ mPRAGMA_START: function() {
+ try {
+ var _type = this.PRAGMA_START;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:266:25: ( '(#' )
+ // XQueryLexer.g:266:27: '(#'
+ this.match("(#");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PRAGMA_START",
+
+ // $ANTLR start PRAGMA_END
+ mPRAGMA_END: function() {
+ try {
+ var _type = this.PRAGMA_END;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:267:25: ( '#)' )
+ // XQueryLexer.g:267:27: '#)'
+ this.match("#)");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PRAGMA_END",
+
+ // $ANTLR start XML_COMMENT_START
+ mXML_COMMENT_START: function() {
+ try {
+ var _type = this.XML_COMMENT_START;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:268:25: ( '' )
+ // XQueryLexer.g:269:27: '-->'
+ this.match("-->");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "XML_COMMENT_END",
+
+ // $ANTLR start PI_START
+ mPI_START: function() {
+ try {
+ var _type = this.PI_START;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:270:25: ( '' )
+ // XQueryLexer.g:270:27: ''
+ this.match("");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PI_START",
+
+ // $ANTLR start PI_END
+ mPI_END: function() {
+ try {
+ var _type = this.PI_END;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:271:25: ( '?>' )
+ // XQueryLexer.g:271:27: '?>'
+ this.match("?>");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PI_END",
+
+ // $ANTLR start ATTR_SIGN
+ mATTR_SIGN: function() {
+ try {
+ var _type = this.ATTR_SIGN;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:272:25: ( '@' )
+ // XQueryLexer.g:272:27: '@'
+ this.match('@');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ATTR_SIGN",
+
+ // $ANTLR start CHARREF_DEC
+ mCHARREF_DEC: function() {
+ try {
+ var _type = this.CHARREF_DEC;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:273:25: ( '' )
+ // XQueryLexer.g:273:27: ''
+ this.match("");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CHARREF_DEC",
+
+ // $ANTLR start CHARREF_HEX
+ mCHARREF_HEX: function() {
+ try {
+ var _type = this.CHARREF_HEX;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:274:25: ( '' )
+ // XQueryLexer.g:274:27: ''
+ this.match("");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CHARREF_HEX",
+
+ // $ANTLR start APOS
+ mAPOS: function() {
+ try {
+ var _type = this.APOS;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:275:25: ( '\\'' )
+ // XQueryLexer.g:275:27: '\\''
+ this.match('\'');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "APOS",
+
+ // $ANTLR start QUOT
+ mQUOT: function() {
+ try {
+ var _type = this.QUOT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:276:25: ( '\"' )
+ // XQueryLexer.g:276:27: '\"'
+ this.match('\"');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "QUOT",
+
+ // $ANTLR start L_NCName
+ mL_NCName: function() {
+ try {
+ var _type = this.L_NCName;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:280:9: ( NCNameStartChar ( NCNameChar )* )
+ // XQueryLexer.g:280:13: NCNameStartChar ( NCNameChar )*
+ this.mNCNameStartChar();
+ // XQueryLexer.g:280:29: ( NCNameChar )*
+ loop1:
+ do {
+ var alt1=2;
+ var LA1_0 = this.input.LA(1);
+
+ if ( ((LA1_0>='-' && LA1_0<='.')||(LA1_0>='0' && LA1_0<='9')||(LA1_0>='A' && LA1_0<='Z')||LA1_0=='_'||(LA1_0>='a' && LA1_0<='z')) ) {
+ alt1=1;
+ }
+
+
+ switch (alt1) {
+ case 1 :
+ // XQueryLexer.g:280:29: NCNameChar
+ this.mNCNameChar();
+
+
+ break;
+
+ default :
+ break loop1;
+ }
+ } while (true);
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_NCName",
+
+ // $ANTLR start Letter
+ mLetter: function() {
+ try {
+ // XQueryLexer.g:283:29: ( 'a' .. 'z' | 'A' .. 'Z' )
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='A' && this.input.LA(1)<='Z')||(this.input.LA(1)>='a' && this.input.LA(1)<='z') ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "Letter",
+
+ // $ANTLR start HexLetter
+ mHexLetter: function() {
+ try {
+ // XQueryLexer.g:284:29: ( 'a' .. 'f' | 'A' .. 'F' )
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='A' && this.input.LA(1)<='F')||(this.input.LA(1)>='a' && this.input.LA(1)<='f') ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "HexLetter",
+
+ // $ANTLR start Digit
+ mDigit: function() {
+ try {
+ // XQueryLexer.g:285:29: ( '0' .. '9' )
+ // XQueryLexer.g:285:31: '0' .. '9'
+ this.matchRange('0','9');
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "Digit",
+
+ // $ANTLR start Digits
+ mDigits: function() {
+ try {
+ // XQueryLexer.g:286:29: ( ( Digit )+ )
+ // XQueryLexer.g:286:31: ( Digit )+
+ // XQueryLexer.g:286:31: ( Digit )+
+ var cnt2=0;
+ loop2:
+ do {
+ var alt2=2;
+ var LA2_0 = this.input.LA(1);
+
+ if ( ((LA2_0>='0' && LA2_0<='9')) ) {
+ alt2=1;
+ }
+
+
+ switch (alt2) {
+ case 1 :
+ // XQueryLexer.g:286:31: Digit
+ this.mDigit();
+
+
+ break;
+
+ default :
+ if ( cnt2 >= 1 ) {
+ break loop2;
+ }
+ var eee = new org.antlr.runtime.EarlyExitException(2, this.input);
+ throw eee;
+ }
+ cnt2++;
+ } while (true);
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "Digits",
+
+ // $ANTLR start NCNameStartChar
+ mNCNameStartChar: function() {
+ try {
+ // XQueryLexer.g:288:29: ( Letter | '_' )
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='A' && this.input.LA(1)<='Z')||this.input.LA(1)=='_'||(this.input.LA(1)>='a' && this.input.LA(1)<='z') ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NCNameStartChar",
+
+ // $ANTLR start NCNameChar
+ mNCNameChar: function() {
+ try {
+ // XQueryLexer.g:289:29: ( Letter | Digit | '.' | '-' | '_' )
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='-' && this.input.LA(1)<='.')||(this.input.LA(1)>='0' && this.input.LA(1)<='9')||(this.input.LA(1)>='A' && this.input.LA(1)<='Z')||this.input.LA(1)=='_'||(this.input.LA(1)>='a' && this.input.LA(1)<='z') ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NCNameChar",
+
+ // $ANTLR start S
+ mS: function() {
+ try {
+ var _type = this.S;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:292:9: ( ( '\\t' | ' ' | '\\n' | '\\r' )+ )
+ // XQueryLexer.g:292:11: ( '\\t' | ' ' | '\\n' | '\\r' )+
+ // XQueryLexer.g:292:11: ( '\\t' | ' ' | '\\n' | '\\r' )+
+ var cnt3=0;
+ loop3:
+ do {
+ var alt3=2;
+ var LA3_0 = this.input.LA(1);
+
+ if ( ((LA3_0>='\t' && LA3_0<='\n')||LA3_0=='\r'||LA3_0==' ') ) {
+ alt3=1;
+ }
+
+
+ switch (alt3) {
+ case 1 :
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='\t' && this.input.LA(1)<='\n')||this.input.LA(1)=='\r'||this.input.LA(1)==' ' ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+ break;
+
+ default :
+ if ( cnt3 >= 1 ) {
+ break loop3;
+ }
+ var eee = new org.antlr.runtime.EarlyExitException(3, this.input);
+ throw eee;
+ }
+ cnt3++;
+ } while (true);
+
+ _channel = HIDDEN;
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "S",
+
+ // $ANTLR start SU
+ mSU: function() {
+ try {
+ // XQueryLexer.g:295:9: ( ( '\\t' | ' ' | '\\n' | '\\r' )+ )
+ // XQueryLexer.g:295:11: ( '\\t' | ' ' | '\\n' | '\\r' )+
+ // XQueryLexer.g:295:11: ( '\\t' | ' ' | '\\n' | '\\r' )+
+ var cnt4=0;
+ loop4:
+ do {
+ var alt4=2;
+ var LA4_0 = this.input.LA(1);
+
+ if ( ((LA4_0>='\t' && LA4_0<='\n')||LA4_0=='\r'||LA4_0==' ') ) {
+ alt4=1;
+ }
+
+
+ switch (alt4) {
+ case 1 :
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='\t' && this.input.LA(1)<='\n')||this.input.LA(1)=='\r'||this.input.LA(1)==' ' ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+ break;
+
+ default :
+ if ( cnt4 >= 1 ) {
+ break loop4;
+ }
+ var eee = new org.antlr.runtime.EarlyExitException(4, this.input);
+ throw eee;
+ }
+ cnt4++;
+ } while (true);
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SU",
+
+ // $ANTLR start L_Pragma
+ mL_Pragma: function() {
+ try {
+ var _type = this.L_Pragma;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:306:9: ( PRAGMA_START ( SU )? L_NCName COLON L_NCName ( SU ( options {greedy=false; } : . )* )? PRAGMA_END )
+ // XQueryLexer.g:306:11: PRAGMA_START ( SU )? L_NCName COLON L_NCName ( SU ( options {greedy=false; } : . )* )? PRAGMA_END
+ this.mPRAGMA_START();
+ // XQueryLexer.g:306:24: ( SU )?
+ var alt5=2;
+ var LA5_0 = this.input.LA(1);
+
+ if ( ((LA5_0>='\t' && LA5_0<='\n')||LA5_0=='\r'||LA5_0==' ') ) {
+ alt5=1;
+ }
+ switch (alt5) {
+ case 1 :
+ // XQueryLexer.g:306:24: SU
+ this.mSU();
+
+
+ break;
+
+ }
+
+ this.mL_NCName();
+ this.mCOLON();
+ this.mL_NCName();
+ // XQueryLexer.g:306:52: ( SU ( options {greedy=false; } : . )* )?
+ var alt7=2;
+ var LA7_0 = this.input.LA(1);
+
+ if ( ((LA7_0>='\t' && LA7_0<='\n')||LA7_0=='\r'||LA7_0==' ') ) {
+ alt7=1;
+ }
+ switch (alt7) {
+ case 1 :
+ // XQueryLexer.g:306:53: SU ( options {greedy=false; } : . )*
+ this.mSU();
+ // XQueryLexer.g:306:56: ( options {greedy=false; } : . )*
+ loop6:
+ do {
+ var alt6=2;
+ var LA6_0 = this.input.LA(1);
+
+ if ( (LA6_0=='#') ) {
+ var LA6_1 = this.input.LA(2);
+
+ if ( (LA6_1==')') ) {
+ alt6=2;
+ }
+ else if ( ((LA6_1>='\u0000' && LA6_1<='(')||(LA6_1>='*' && LA6_1<='\uFFFF')) ) {
+ alt6=1;
+ }
+
+
+ }
+ else if ( ((LA6_0>='\u0000' && LA6_0<='\"')||(LA6_0>='$' && LA6_0<='\uFFFF')) ) {
+ alt6=1;
+ }
+
+
+ switch (alt6) {
+ case 1 :
+ // XQueryLexer.g:306:83: .
+ this.matchAny();
+
+
+ break;
+
+ default :
+ break loop6;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+ this.mPRAGMA_END();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_Pragma",
+
+ // $ANTLR start L_DirCommentConstructor
+ mL_DirCommentConstructor: function() {
+ try {
+ var _type = this.L_DirCommentConstructor;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:316:9: ( XML_COMMENT_START ( options {greedy=false; } : ( . )* ) XML_COMMENT_END )
+ // XQueryLexer.g:316:11: XML_COMMENT_START ( options {greedy=false; } : ( . )* ) XML_COMMENT_END
+ this.mXML_COMMENT_START();
+ // XQueryLexer.g:316:29: ( options {greedy=false; } : ( . )* )
+ // XQueryLexer.g:316:56: ( . )*
+ // XQueryLexer.g:316:56: ( . )*
+ loop8:
+ do {
+ var alt8=2;
+ var LA8_0 = this.input.LA(1);
+
+ if ( (LA8_0=='-') ) {
+ var LA8_1 = this.input.LA(2);
+
+ if ( (LA8_1=='-') ) {
+ var LA8_3 = this.input.LA(3);
+
+ if ( (LA8_3=='>') ) {
+ alt8=2;
+ }
+ else if ( ((LA8_3>='\u0000' && LA8_3<='=')||(LA8_3>='?' && LA8_3<='\uFFFF')) ) {
+ alt8=1;
+ }
+
+
+ }
+ else if ( ((LA8_1>='\u0000' && LA8_1<=',')||(LA8_1>='.' && LA8_1<='\uFFFF')) ) {
+ alt8=1;
+ }
+
+
+ }
+ else if ( ((LA8_0>='\u0000' && LA8_0<=',')||(LA8_0>='.' && LA8_0<='\uFFFF')) ) {
+ alt8=1;
+ }
+
+
+ switch (alt8) {
+ case 1 :
+ // XQueryLexer.g:316:56: .
+ this.matchAny();
+
+
+ break;
+
+ default :
+ break loop8;
+ }
+ } while (true);
+
+
+
+
+ this.mXML_COMMENT_END();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_DirCommentConstructor",
+
+ // $ANTLR start L_DirPIConstructor
+ mL_DirPIConstructor: function() {
+ try {
+ var _type = this.L_DirPIConstructor;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:325:9: ( PI_START ( SU )? L_NCName ( SU ( options {greedy=false; } : ( . )* ) )? PI_END )
+ // XQueryLexer.g:325:11: PI_START ( SU )? L_NCName ( SU ( options {greedy=false; } : ( . )* ) )? PI_END
+ this.mPI_START();
+ // XQueryLexer.g:325:20: ( SU )?
+ var alt9=2;
+ var LA9_0 = this.input.LA(1);
+
+ if ( ((LA9_0>='\t' && LA9_0<='\n')||LA9_0=='\r'||LA9_0==' ') ) {
+ alt9=1;
+ }
+ switch (alt9) {
+ case 1 :
+ // XQueryLexer.g:325:20: SU
+ this.mSU();
+
+
+ break;
+
+ }
+
+ this.mL_NCName();
+ // XQueryLexer.g:325:33: ( SU ( options {greedy=false; } : ( . )* ) )?
+ var alt11=2;
+ var LA11_0 = this.input.LA(1);
+
+ if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) {
+ alt11=1;
+ }
+ switch (alt11) {
+ case 1 :
+ // XQueryLexer.g:325:34: SU ( options {greedy=false; } : ( . )* )
+ this.mSU();
+ // XQueryLexer.g:325:36: ( options {greedy=false; } : ( . )* )
+ // XQueryLexer.g:325:63: ( . )*
+ // XQueryLexer.g:325:63: ( . )*
+ loop10:
+ do {
+ var alt10=2;
+ var LA10_0 = this.input.LA(1);
+
+ if ( (LA10_0=='?') ) {
+ var LA10_1 = this.input.LA(2);
+
+ if ( (LA10_1=='>') ) {
+ alt10=2;
+ }
+ else if ( ((LA10_1>='\u0000' && LA10_1<='=')||(LA10_1>='?' && LA10_1<='\uFFFF')) ) {
+ alt10=1;
+ }
+
+
+ }
+ else if ( ((LA10_0>='\u0000' && LA10_0<='>')||(LA10_0>='@' && LA10_0<='\uFFFF')) ) {
+ alt10=1;
+ }
+
+
+ switch (alt10) {
+ case 1 :
+ // XQueryLexer.g:325:63: .
+ this.matchAny();
+
+
+ break;
+
+ default :
+ break loop10;
+ }
+ } while (true);
+
+
+
+
+
+
+ break;
+
+ }
+
+ this.mPI_END();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_DirPIConstructor",
+
+ // $ANTLR start L_IntegerLiteral
+ mL_IntegerLiteral: function() {
+ try {
+ var _type = this.L_IntegerLiteral;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:333:9: ( Digits )
+ // XQueryLexer.g:333:13: Digits
+ this.mDigits();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_IntegerLiteral",
+
+ // $ANTLR start L_DecimalLiteral
+ mL_DecimalLiteral: function() {
+ try {
+ var _type = this.L_DecimalLiteral;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:338:9: ( ( '.' Digits ) | ( Digits '.' ( Digit )* ) )
+ var alt13=2;
+ var LA13_0 = this.input.LA(1);
+
+ if ( (LA13_0=='.') ) {
+ alt13=1;
+ }
+ else if ( ((LA13_0>='0' && LA13_0<='9')) ) {
+ alt13=2;
+ }
+ else {
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 13, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt13) {
+ case 1 :
+ // XQueryLexer.g:338:11: ( '.' Digits )
+ // XQueryLexer.g:338:11: ( '.' Digits )
+ // XQueryLexer.g:338:12: '.' Digits
+ this.match('.');
+ this.mDigits();
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryLexer.g:338:26: ( Digits '.' ( Digit )* )
+ // XQueryLexer.g:338:26: ( Digits '.' ( Digit )* )
+ // XQueryLexer.g:338:27: Digits '.' ( Digit )*
+ this.mDigits();
+ this.match('.');
+ // XQueryLexer.g:338:38: ( Digit )*
+ loop12:
+ do {
+ var alt12=2;
+ var LA12_0 = this.input.LA(1);
+
+ if ( ((LA12_0>='0' && LA12_0<='9')) ) {
+ alt12=1;
+ }
+
+
+ switch (alt12) {
+ case 1 :
+ // XQueryLexer.g:338:38: Digit
+ this.mDigit();
+
+
+ break;
+
+ default :
+ break loop12;
+ }
+ } while (true);
+
+
+
+
+
+
+ break;
+
+ }
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_DecimalLiteral",
+
+ // $ANTLR start L_DoubleLiteral
+ mL_DoubleLiteral: function() {
+ try {
+ var _type = this.L_DoubleLiteral;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:343:9: ( ( ( '.' Digits ) | ( Digits ( '.' ( Digit )* )? ) ) ( 'e' | 'E' ) ( '+' | '-' )? Digits )
+ // XQueryLexer.g:343:11: ( ( '.' Digits ) | ( Digits ( '.' ( Digit )* )? ) ) ( 'e' | 'E' ) ( '+' | '-' )? Digits
+ // XQueryLexer.g:343:11: ( ( '.' Digits ) | ( Digits ( '.' ( Digit )* )? ) )
+ var alt16=2;
+ var LA16_0 = this.input.LA(1);
+
+ if ( (LA16_0=='.') ) {
+ alt16=1;
+ }
+ else if ( ((LA16_0>='0' && LA16_0<='9')) ) {
+ alt16=2;
+ }
+ else {
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 16, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt16) {
+ case 1 :
+ // XQueryLexer.g:343:12: ( '.' Digits )
+ // XQueryLexer.g:343:12: ( '.' Digits )
+ // XQueryLexer.g:343:13: '.' Digits
+ this.match('.');
+ this.mDigits();
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryLexer.g:343:27: ( Digits ( '.' ( Digit )* )? )
+ // XQueryLexer.g:343:27: ( Digits ( '.' ( Digit )* )? )
+ // XQueryLexer.g:343:28: Digits ( '.' ( Digit )* )?
+ this.mDigits();
+ // XQueryLexer.g:343:35: ( '.' ( Digit )* )?
+ var alt15=2;
+ var LA15_0 = this.input.LA(1);
+
+ if ( (LA15_0=='.') ) {
+ alt15=1;
+ }
+ switch (alt15) {
+ case 1 :
+ // XQueryLexer.g:343:36: '.' ( Digit )*
+ this.match('.');
+ // XQueryLexer.g:343:40: ( Digit )*
+ loop14:
+ do {
+ var alt14=2;
+ var LA14_0 = this.input.LA(1);
+
+ if ( ((LA14_0>='0' && LA14_0<='9')) ) {
+ alt14=1;
+ }
+
+
+ switch (alt14) {
+ case 1 :
+ // XQueryLexer.g:343:40: Digit
+ this.mDigit();
+
+
+ break;
+
+ default :
+ break loop14;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+
+
+
+
+
+ break;
+
+ }
+
+ if ( this.input.LA(1)=='E'||this.input.LA(1)=='e' ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+ // XQueryLexer.g:343:63: ( '+' | '-' )?
+ var alt17=2;
+ var LA17_0 = this.input.LA(1);
+
+ if ( (LA17_0=='+'||LA17_0=='-') ) {
+ alt17=1;
+ }
+ switch (alt17) {
+ case 1 :
+ // XQueryLexer.g:
+ if ( this.input.LA(1)=='+'||this.input.LA(1)=='-' ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+ break;
+
+ }
+
+ this.mDigits();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_DoubleLiteral",
+
+ // $ANTLR start L_Comment
+ mL_Comment: function() {
+ try {
+ var _type = this.L_Comment;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:348:9: ( '(:' ( options {greedy=false; } : L_Comment | . )* ':)' )
+ // XQueryLexer.g:348:11: '(:' ( options {greedy=false; } : L_Comment | . )* ':)'
+ this.match("(:");
+
+ // XQueryLexer.g:348:16: ( options {greedy=false; } : L_Comment | . )*
+ loop18:
+ do {
+ var alt18=3;
+ var LA18_0 = this.input.LA(1);
+
+ if ( (LA18_0==':') ) {
+ var LA18_1 = this.input.LA(2);
+
+ if ( (LA18_1==')') ) {
+ alt18=3;
+ }
+ else if ( ((LA18_1>='\u0000' && LA18_1<='(')||(LA18_1>='*' && LA18_1<='\uFFFF')) ) {
+ alt18=2;
+ }
+
+
+ }
+ else if ( (LA18_0=='(') ) {
+ var LA18_2 = this.input.LA(2);
+
+ if ( (LA18_2==':') ) {
+ alt18=1;
+ }
+ else if ( ((LA18_2>='\u0000' && LA18_2<='9')||(LA18_2>=';' && LA18_2<='\uFFFF')) ) {
+ alt18=2;
+ }
+
+
+ }
+ else if ( ((LA18_0>='\u0000' && LA18_0<='\'')||(LA18_0>=')' && LA18_0<='9')||(LA18_0>=';' && LA18_0<='\uFFFF')) ) {
+ alt18=2;
+ }
+
+
+ switch (alt18) {
+ case 1 :
+ // XQueryLexer.g:348:42: L_Comment
+ this.mL_Comment();
+
+
+ break;
+ case 2 :
+ // XQueryLexer.g:348:54: .
+ this.matchAny();
+
+
+ break;
+
+ default :
+ break loop18;
+ }
+ } while (true);
+
+ this.match(":)");
+
+ _channel = HIDDEN;
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_Comment",
+
+ // $ANTLR start L_AnyChar
+ mL_AnyChar: function() {
+ try {
+ var _type = this.L_AnyChar;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:351:11: ( . )
+ // XQueryLexer.g:351:13: .
+ this.matchAny();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_AnyChar",
+
+ mTokens: function() {
+ // XQueryLexer.g:1:8: ( ANCESTOR | ANCESTOR_OR_SELF | AND | AS | ASCENDING | AT | ATTRIBUTE | BASE_URI | BOUNDARY_SPACE | BY | CASE | CAST | CASTABLE | CHILD | COLLATION | COMMENT | CONSTRUCTION | COPY_NAMESPACES | DECLARE | DEFAULT | DESCENDANT | DESCENDANT_OR_SELF | DESCENDING | DIV | DOCUMENT | DOCUMENT_NODE | ELEMENT | ELSE | EMPTY | EMPTY_SEQUENCE | ENCODING | EQ | EVERY | EXCEPT | EXTERNAL | FOLLOWING | FOLLOWING_SIBLING | FOR | FUNCTION | GE | GREATEST | GT | IDIV | IF | IMPORT | IN | INHERIT | INSTANCE | INTERSECT | IS | ITEM | LAX | LE | LEAST | LET | LT | MOD | MODULE | NAMESPACE | NE | NO_INHERIT | NO_PRESERVE | NODE | OF | OPTION | OR | ORDER | ORDERED | ORDERING | PARENT | PRECEDING | PRECEDING_SIBLING | PRESERVE | PROCESSING_INSTRUCTION | RETURN | SATISFIES | SCHEMA | SCHEMA_ATTRIBUTE | SCHEMA_ELEMENT | SELF | SOME | STABLE | STRICT | STRIP | TEXT | THEN | TO | TREAT | TYPESWITCH | UNION | UNORDERED | VALIDATE | VARIABLE | VERSION | WHERE | XQUERY | CATCH | CONTEXT | COUNT | DECIMAL_FORMAT | DECIMAL_SEPARATOR | DIGIT | END | GROUP | GROUPING_SEPARATOR | INFINITY | MINUS_SIGN | NAMESPACE_NODE | NAN | NEXT | ONLY | OUTER | PATTERN_SEPARATOR | PERCENT | PER_MILLE | PREVIOUS | SLIDING | START | TRY | TUMBLING | WHEN | WINDOW | ZERO_DIGIT | AFTER | BEFORE | COPY | DELETE | FIRST | INSERT | INTO | LAST | MODIFY | NODES | RENAME | REPLACE | REVALIDATION | SKIP | UPDATING | VALUE | WITH | BLOCK | CONSTANT | EXIT | RETURNING | SEQUENTIAL | SET | SIMPLE | WHILE | EVAL | USING | APPEND_ONLY | AUTOMATICALLY | CHECK | COLLECTION | CONSTRAINT | CONST | EQUALITY | FOREACH | FOREIGN | FROM | INDEX | INTEGRITY | KEY | MAINTAINED | MANUALLY | MUTABLE | NON | ON | QUEUE | RANGE | READ_ONLY | UNIQUE | BINARY | PRIVATE | AMP_ER | APOS_ER | QUOT_ER | LPAREN | RPAREN | DOLLAR | LBRACKET | RBRACKET | LSQUARE | RSQUARE | EQUAL | BIND | NOTEQUAL | AMP | COMMA | QUESTION | STAR | PLUS | MINUS | SMALLER | GREATER | SMALLEREQ | GREATEREQ | SMALLER_SMALLER | GREATER_GREATER | SLASH | SLASH_SLASH | DOT | DOT_DOT | COLON | COLON_COLON | EMPTY_CLOSE_TAG | CLOSE_TAG | SEMICOLON | VBAR | PRAGMA_START | PRAGMA_END | XML_COMMENT_START | XML_COMMENT_END | PI_START | PI_END | ATTR_SIGN | CHARREF_DEC | CHARREF_HEX | APOS | QUOT | L_NCName | S | L_Pragma | L_DirCommentConstructor | L_DirPIConstructor | L_IntegerLiteral | L_DecimalLiteral | L_DoubleLiteral | L_Comment | L_AnyChar )
+ var alt19=230;
+ alt19 = this.dfa19.predict(this.input);
+ switch (alt19) {
+ case 1 :
+ // XQueryLexer.g:1:10: ANCESTOR
+ this.mANCESTOR();
+
+
+ break;
+ case 2 :
+ // XQueryLexer.g:1:19: ANCESTOR_OR_SELF
+ this.mANCESTOR_OR_SELF();
+
+
+ break;
+ case 3 :
+ // XQueryLexer.g:1:36: AND
+ this.mAND();
+
+
+ break;
+ case 4 :
+ // XQueryLexer.g:1:40: AS
+ this.mAS();
+
+
+ break;
+ case 5 :
+ // XQueryLexer.g:1:43: ASCENDING
+ this.mASCENDING();
+
+
+ break;
+ case 6 :
+ // XQueryLexer.g:1:53: AT
+ this.mAT();
+
+
+ break;
+ case 7 :
+ // XQueryLexer.g:1:56: ATTRIBUTE
+ this.mATTRIBUTE();
+
+
+ break;
+ case 8 :
+ // XQueryLexer.g:1:66: BASE_URI
+ this.mBASE_URI();
+
+
+ break;
+ case 9 :
+ // XQueryLexer.g:1:75: BOUNDARY_SPACE
+ this.mBOUNDARY_SPACE();
+
+
+ break;
+ case 10 :
+ // XQueryLexer.g:1:90: BY
+ this.mBY();
+
+
+ break;
+ case 11 :
+ // XQueryLexer.g:1:93: CASE
+ this.mCASE();
+
+
+ break;
+ case 12 :
+ // XQueryLexer.g:1:98: CAST
+ this.mCAST();
+
+
+ break;
+ case 13 :
+ // XQueryLexer.g:1:103: CASTABLE
+ this.mCASTABLE();
+
+
+ break;
+ case 14 :
+ // XQueryLexer.g:1:112: CHILD
+ this.mCHILD();
+
+
+ break;
+ case 15 :
+ // XQueryLexer.g:1:118: COLLATION
+ this.mCOLLATION();
+
+
+ break;
+ case 16 :
+ // XQueryLexer.g:1:128: COMMENT
+ this.mCOMMENT();
+
+
+ break;
+ case 17 :
+ // XQueryLexer.g:1:136: CONSTRUCTION
+ this.mCONSTRUCTION();
+
+
+ break;
+ case 18 :
+ // XQueryLexer.g:1:149: COPY_NAMESPACES
+ this.mCOPY_NAMESPACES();
+
+
+ break;
+ case 19 :
+ // XQueryLexer.g:1:165: DECLARE
+ this.mDECLARE();
+
+
+ break;
+ case 20 :
+ // XQueryLexer.g:1:173: DEFAULT
+ this.mDEFAULT();
+
+
+ break;
+ case 21 :
+ // XQueryLexer.g:1:181: DESCENDANT
+ this.mDESCENDANT();
+
+
+ break;
+ case 22 :
+ // XQueryLexer.g:1:192: DESCENDANT_OR_SELF
+ this.mDESCENDANT_OR_SELF();
+
+
+ break;
+ case 23 :
+ // XQueryLexer.g:1:211: DESCENDING
+ this.mDESCENDING();
+
+
+ break;
+ case 24 :
+ // XQueryLexer.g:1:222: DIV
+ this.mDIV();
+
+
+ break;
+ case 25 :
+ // XQueryLexer.g:1:226: DOCUMENT
+ this.mDOCUMENT();
+
+
+ break;
+ case 26 :
+ // XQueryLexer.g:1:235: DOCUMENT_NODE
+ this.mDOCUMENT_NODE();
+
+
+ break;
+ case 27 :
+ // XQueryLexer.g:1:249: ELEMENT
+ this.mELEMENT();
+
+
+ break;
+ case 28 :
+ // XQueryLexer.g:1:257: ELSE
+ this.mELSE();
+
+
+ break;
+ case 29 :
+ // XQueryLexer.g:1:262: EMPTY
+ this.mEMPTY();
+
+
+ break;
+ case 30 :
+ // XQueryLexer.g:1:268: EMPTY_SEQUENCE
+ this.mEMPTY_SEQUENCE();
+
+
+ break;
+ case 31 :
+ // XQueryLexer.g:1:283: ENCODING
+ this.mENCODING();
+
+
+ break;
+ case 32 :
+ // XQueryLexer.g:1:292: EQ
+ this.mEQ();
+
+
+ break;
+ case 33 :
+ // XQueryLexer.g:1:295: EVERY
+ this.mEVERY();
+
+
+ break;
+ case 34 :
+ // XQueryLexer.g:1:301: EXCEPT
+ this.mEXCEPT();
+
+
+ break;
+ case 35 :
+ // XQueryLexer.g:1:308: EXTERNAL
+ this.mEXTERNAL();
+
+
+ break;
+ case 36 :
+ // XQueryLexer.g:1:317: FOLLOWING
+ this.mFOLLOWING();
+
+
+ break;
+ case 37 :
+ // XQueryLexer.g:1:327: FOLLOWING_SIBLING
+ this.mFOLLOWING_SIBLING();
+
+
+ break;
+ case 38 :
+ // XQueryLexer.g:1:345: FOR
+ this.mFOR();
+
+
+ break;
+ case 39 :
+ // XQueryLexer.g:1:349: FUNCTION
+ this.mFUNCTION();
+
+
+ break;
+ case 40 :
+ // XQueryLexer.g:1:358: GE
+ this.mGE();
+
+
+ break;
+ case 41 :
+ // XQueryLexer.g:1:361: GREATEST
+ this.mGREATEST();
+
+
+ break;
+ case 42 :
+ // XQueryLexer.g:1:370: GT
+ this.mGT();
+
+
+ break;
+ case 43 :
+ // XQueryLexer.g:1:373: IDIV
+ this.mIDIV();
+
+
+ break;
+ case 44 :
+ // XQueryLexer.g:1:378: IF
+ this.mIF();
+
+
+ break;
+ case 45 :
+ // XQueryLexer.g:1:381: IMPORT
+ this.mIMPORT();
+
+
+ break;
+ case 46 :
+ // XQueryLexer.g:1:388: IN
+ this.mIN();
+
+
+ break;
+ case 47 :
+ // XQueryLexer.g:1:391: INHERIT
+ this.mINHERIT();
+
+
+ break;
+ case 48 :
+ // XQueryLexer.g:1:399: INSTANCE
+ this.mINSTANCE();
+
+
+ break;
+ case 49 :
+ // XQueryLexer.g:1:408: INTERSECT
+ this.mINTERSECT();
+
+
+ break;
+ case 50 :
+ // XQueryLexer.g:1:418: IS
+ this.mIS();
+
+
+ break;
+ case 51 :
+ // XQueryLexer.g:1:421: ITEM
+ this.mITEM();
+
+
+ break;
+ case 52 :
+ // XQueryLexer.g:1:426: LAX
+ this.mLAX();
+
+
+ break;
+ case 53 :
+ // XQueryLexer.g:1:430: LE
+ this.mLE();
+
+
+ break;
+ case 54 :
+ // XQueryLexer.g:1:433: LEAST
+ this.mLEAST();
+
+
+ break;
+ case 55 :
+ // XQueryLexer.g:1:439: LET
+ this.mLET();
+
+
+ break;
+ case 56 :
+ // XQueryLexer.g:1:443: LT
+ this.mLT();
+
+
+ break;
+ case 57 :
+ // XQueryLexer.g:1:446: MOD
+ this.mMOD();
+
+
+ break;
+ case 58 :
+ // XQueryLexer.g:1:450: MODULE
+ this.mMODULE();
+
+
+ break;
+ case 59 :
+ // XQueryLexer.g:1:457: NAMESPACE
+ this.mNAMESPACE();
+
+
+ break;
+ case 60 :
+ // XQueryLexer.g:1:467: NE
+ this.mNE();
+
+
+ break;
+ case 61 :
+ // XQueryLexer.g:1:470: NO_INHERIT
+ this.mNO_INHERIT();
+
+
+ break;
+ case 62 :
+ // XQueryLexer.g:1:481: NO_PRESERVE
+ this.mNO_PRESERVE();
+
+
+ break;
+ case 63 :
+ // XQueryLexer.g:1:493: NODE
+ this.mNODE();
+
+
+ break;
+ case 64 :
+ // XQueryLexer.g:1:498: OF
+ this.mOF();
+
+
+ break;
+ case 65 :
+ // XQueryLexer.g:1:501: OPTION
+ this.mOPTION();
+
+
+ break;
+ case 66 :
+ // XQueryLexer.g:1:508: OR
+ this.mOR();
+
+
+ break;
+ case 67 :
+ // XQueryLexer.g:1:511: ORDER
+ this.mORDER();
+
+
+ break;
+ case 68 :
+ // XQueryLexer.g:1:517: ORDERED
+ this.mORDERED();
+
+
+ break;
+ case 69 :
+ // XQueryLexer.g:1:525: ORDERING
+ this.mORDERING();
+
+
+ break;
+ case 70 :
+ // XQueryLexer.g:1:534: PARENT
+ this.mPARENT();
+
+
+ break;
+ case 71 :
+ // XQueryLexer.g:1:541: PRECEDING
+ this.mPRECEDING();
+
+
+ break;
+ case 72 :
+ // XQueryLexer.g:1:551: PRECEDING_SIBLING
+ this.mPRECEDING_SIBLING();
+
+
+ break;
+ case 73 :
+ // XQueryLexer.g:1:569: PRESERVE
+ this.mPRESERVE();
+
+
+ break;
+ case 74 :
+ // XQueryLexer.g:1:578: PROCESSING_INSTRUCTION
+ this.mPROCESSING_INSTRUCTION();
+
+
+ break;
+ case 75 :
+ // XQueryLexer.g:1:601: RETURN
+ this.mRETURN();
+
+
+ break;
+ case 76 :
+ // XQueryLexer.g:1:608: SATISFIES
+ this.mSATISFIES();
+
+
+ break;
+ case 77 :
+ // XQueryLexer.g:1:618: SCHEMA
+ this.mSCHEMA();
+
+
+ break;
+ case 78 :
+ // XQueryLexer.g:1:625: SCHEMA_ATTRIBUTE
+ this.mSCHEMA_ATTRIBUTE();
+
+
+ break;
+ case 79 :
+ // XQueryLexer.g:1:642: SCHEMA_ELEMENT
+ this.mSCHEMA_ELEMENT();
+
+
+ break;
+ case 80 :
+ // XQueryLexer.g:1:657: SELF
+ this.mSELF();
+
+
+ break;
+ case 81 :
+ // XQueryLexer.g:1:662: SOME
+ this.mSOME();
+
+
+ break;
+ case 82 :
+ // XQueryLexer.g:1:667: STABLE
+ this.mSTABLE();
+
+
+ break;
+ case 83 :
+ // XQueryLexer.g:1:674: STRICT
+ this.mSTRICT();
+
+
+ break;
+ case 84 :
+ // XQueryLexer.g:1:681: STRIP
+ this.mSTRIP();
+
+
+ break;
+ case 85 :
+ // XQueryLexer.g:1:687: TEXT
+ this.mTEXT();
+
+
+ break;
+ case 86 :
+ // XQueryLexer.g:1:692: THEN
+ this.mTHEN();
+
+
+ break;
+ case 87 :
+ // XQueryLexer.g:1:697: TO
+ this.mTO();
+
+
+ break;
+ case 88 :
+ // XQueryLexer.g:1:700: TREAT
+ this.mTREAT();
+
+
+ break;
+ case 89 :
+ // XQueryLexer.g:1:706: TYPESWITCH
+ this.mTYPESWITCH();
+
+
+ break;
+ case 90 :
+ // XQueryLexer.g:1:717: UNION
+ this.mUNION();
+
+
+ break;
+ case 91 :
+ // XQueryLexer.g:1:723: UNORDERED
+ this.mUNORDERED();
+
+
+ break;
+ case 92 :
+ // XQueryLexer.g:1:733: VALIDATE
+ this.mVALIDATE();
+
+
+ break;
+ case 93 :
+ // XQueryLexer.g:1:742: VARIABLE
+ this.mVARIABLE();
+
+
+ break;
+ case 94 :
+ // XQueryLexer.g:1:751: VERSION
+ this.mVERSION();
+
+
+ break;
+ case 95 :
+ // XQueryLexer.g:1:759: WHERE
+ this.mWHERE();
+
+
+ break;
+ case 96 :
+ // XQueryLexer.g:1:765: XQUERY
+ this.mXQUERY();
+
+
+ break;
+ case 97 :
+ // XQueryLexer.g:1:772: CATCH
+ this.mCATCH();
+
+
+ break;
+ case 98 :
+ // XQueryLexer.g:1:778: CONTEXT
+ this.mCONTEXT();
+
+
+ break;
+ case 99 :
+ // XQueryLexer.g:1:786: COUNT
+ this.mCOUNT();
+
+
+ break;
+ case 100 :
+ // XQueryLexer.g:1:792: DECIMAL_FORMAT
+ this.mDECIMAL_FORMAT();
+
+
+ break;
+ case 101 :
+ // XQueryLexer.g:1:807: DECIMAL_SEPARATOR
+ this.mDECIMAL_SEPARATOR();
+
+
+ break;
+ case 102 :
+ // XQueryLexer.g:1:825: DIGIT
+ this.mDIGIT();
+
+
+ break;
+ case 103 :
+ // XQueryLexer.g:1:831: END
+ this.mEND();
+
+
+ break;
+ case 104 :
+ // XQueryLexer.g:1:835: GROUP
+ this.mGROUP();
+
+
+ break;
+ case 105 :
+ // XQueryLexer.g:1:841: GROUPING_SEPARATOR
+ this.mGROUPING_SEPARATOR();
+
+
+ break;
+ case 106 :
+ // XQueryLexer.g:1:860: INFINITY
+ this.mINFINITY();
+
+
+ break;
+ case 107 :
+ // XQueryLexer.g:1:869: MINUS_SIGN
+ this.mMINUS_SIGN();
+
+
+ break;
+ case 108 :
+ // XQueryLexer.g:1:880: NAMESPACE_NODE
+ this.mNAMESPACE_NODE();
+
+
+ break;
+ case 109 :
+ // XQueryLexer.g:1:895: NAN
+ this.mNAN();
+
+
+ break;
+ case 110 :
+ // XQueryLexer.g:1:899: NEXT
+ this.mNEXT();
+
+
+ break;
+ case 111 :
+ // XQueryLexer.g:1:904: ONLY
+ this.mONLY();
+
+
+ break;
+ case 112 :
+ // XQueryLexer.g:1:909: OUTER
+ this.mOUTER();
+
+
+ break;
+ case 113 :
+ // XQueryLexer.g:1:915: PATTERN_SEPARATOR
+ this.mPATTERN_SEPARATOR();
+
+
+ break;
+ case 114 :
+ // XQueryLexer.g:1:933: PERCENT
+ this.mPERCENT();
+
+
+ break;
+ case 115 :
+ // XQueryLexer.g:1:941: PER_MILLE
+ this.mPER_MILLE();
+
+
+ break;
+ case 116 :
+ // XQueryLexer.g:1:951: PREVIOUS
+ this.mPREVIOUS();
+
+
+ break;
+ case 117 :
+ // XQueryLexer.g:1:960: SLIDING
+ this.mSLIDING();
+
+
+ break;
+ case 118 :
+ // XQueryLexer.g:1:968: START
+ this.mSTART();
+
+
+ break;
+ case 119 :
+ // XQueryLexer.g:1:974: TRY
+ this.mTRY();
+
+
+ break;
+ case 120 :
+ // XQueryLexer.g:1:978: TUMBLING
+ this.mTUMBLING();
+
+
+ break;
+ case 121 :
+ // XQueryLexer.g:1:987: WHEN
+ this.mWHEN();
+
+
+ break;
+ case 122 :
+ // XQueryLexer.g:1:992: WINDOW
+ this.mWINDOW();
+
+
+ break;
+ case 123 :
+ // XQueryLexer.g:1:999: ZERO_DIGIT
+ this.mZERO_DIGIT();
+
+
+ break;
+ case 124 :
+ // XQueryLexer.g:1:1010: AFTER
+ this.mAFTER();
+
+
+ break;
+ case 125 :
+ // XQueryLexer.g:1:1016: BEFORE
+ this.mBEFORE();
+
+
+ break;
+ case 126 :
+ // XQueryLexer.g:1:1023: COPY
+ this.mCOPY();
+
+
+ break;
+ case 127 :
+ // XQueryLexer.g:1:1028: DELETE
+ this.mDELETE();
+
+
+ break;
+ case 128 :
+ // XQueryLexer.g:1:1035: FIRST
+ this.mFIRST();
+
+
+ break;
+ case 129 :
+ // XQueryLexer.g:1:1041: INSERT
+ this.mINSERT();
+
+
+ break;
+ case 130 :
+ // XQueryLexer.g:1:1048: INTO
+ this.mINTO();
+
+
+ break;
+ case 131 :
+ // XQueryLexer.g:1:1053: LAST
+ this.mLAST();
+
+
+ break;
+ case 132 :
+ // XQueryLexer.g:1:1058: MODIFY
+ this.mMODIFY();
+
+
+ break;
+ case 133 :
+ // XQueryLexer.g:1:1065: NODES
+ this.mNODES();
+
+
+ break;
+ case 134 :
+ // XQueryLexer.g:1:1071: RENAME
+ this.mRENAME();
+
+
+ break;
+ case 135 :
+ // XQueryLexer.g:1:1078: REPLACE
+ this.mREPLACE();
+
+
+ break;
+ case 136 :
+ // XQueryLexer.g:1:1086: REVALIDATION
+ this.mREVALIDATION();
+
+
+ break;
+ case 137 :
+ // XQueryLexer.g:1:1099: SKIP
+ this.mSKIP();
+
+
+ break;
+ case 138 :
+ // XQueryLexer.g:1:1104: UPDATING
+ this.mUPDATING();
+
+
+ break;
+ case 139 :
+ // XQueryLexer.g:1:1113: VALUE
+ this.mVALUE();
+
+
+ break;
+ case 140 :
+ // XQueryLexer.g:1:1119: WITH
+ this.mWITH();
+
+
+ break;
+ case 141 :
+ // XQueryLexer.g:1:1124: BLOCK
+ this.mBLOCK();
+
+
+ break;
+ case 142 :
+ // XQueryLexer.g:1:1130: CONSTANT
+ this.mCONSTANT();
+
+
+ break;
+ case 143 :
+ // XQueryLexer.g:1:1139: EXIT
+ this.mEXIT();
+
+
+ break;
+ case 144 :
+ // XQueryLexer.g:1:1144: RETURNING
+ this.mRETURNING();
+
+
+ break;
+ case 145 :
+ // XQueryLexer.g:1:1154: SEQUENTIAL
+ this.mSEQUENTIAL();
+
+
+ break;
+ case 146 :
+ // XQueryLexer.g:1:1165: SET
+ this.mSET();
+
+
+ break;
+ case 147 :
+ // XQueryLexer.g:1:1169: SIMPLE
+ this.mSIMPLE();
+
+
+ break;
+ case 148 :
+ // XQueryLexer.g:1:1176: WHILE
+ this.mWHILE();
+
+
+ break;
+ case 149 :
+ // XQueryLexer.g:1:1182: EVAL
+ this.mEVAL();
+
+
+ break;
+ case 150 :
+ // XQueryLexer.g:1:1187: USING
+ this.mUSING();
+
+
+ break;
+ case 151 :
+ // XQueryLexer.g:1:1193: APPEND_ONLY
+ this.mAPPEND_ONLY();
+
+
+ break;
+ case 152 :
+ // XQueryLexer.g:1:1205: AUTOMATICALLY
+ this.mAUTOMATICALLY();
+
+
+ break;
+ case 153 :
+ // XQueryLexer.g:1:1219: CHECK
+ this.mCHECK();
+
+
+ break;
+ case 154 :
+ // XQueryLexer.g:1:1225: COLLECTION
+ this.mCOLLECTION();
+
+
+ break;
+ case 155 :
+ // XQueryLexer.g:1:1236: CONSTRAINT
+ this.mCONSTRAINT();
+
+
+ break;
+ case 156 :
+ // XQueryLexer.g:1:1247: CONST
+ this.mCONST();
+
+
+ break;
+ case 157 :
+ // XQueryLexer.g:1:1253: EQUALITY
+ this.mEQUALITY();
+
+
+ break;
+ case 158 :
+ // XQueryLexer.g:1:1262: FOREACH
+ this.mFOREACH();
+
+
+ break;
+ case 159 :
+ // XQueryLexer.g:1:1270: FOREIGN
+ this.mFOREIGN();
+
+
+ break;
+ case 160 :
+ // XQueryLexer.g:1:1278: FROM
+ this.mFROM();
+
+
+ break;
+ case 161 :
+ // XQueryLexer.g:1:1283: INDEX
+ this.mINDEX();
+
+
+ break;
+ case 162 :
+ // XQueryLexer.g:1:1289: INTEGRITY
+ this.mINTEGRITY();
+
+
+ break;
+ case 163 :
+ // XQueryLexer.g:1:1299: KEY
+ this.mKEY();
+
+
+ break;
+ case 164 :
+ // XQueryLexer.g:1:1303: MAINTAINED
+ this.mMAINTAINED();
+
+
+ break;
+ case 165 :
+ // XQueryLexer.g:1:1314: MANUALLY
+ this.mMANUALLY();
+
+
+ break;
+ case 166 :
+ // XQueryLexer.g:1:1323: MUTABLE
+ this.mMUTABLE();
+
+
+ break;
+ case 167 :
+ // XQueryLexer.g:1:1331: NON
+ this.mNON();
+
+
+ break;
+ case 168 :
+ // XQueryLexer.g:1:1335: ON
+ this.mON();
+
+
+ break;
+ case 169 :
+ // XQueryLexer.g:1:1338: QUEUE
+ this.mQUEUE();
+
+
+ break;
+ case 170 :
+ // XQueryLexer.g:1:1344: RANGE
+ this.mRANGE();
+
+
+ break;
+ case 171 :
+ // XQueryLexer.g:1:1350: READ_ONLY
+ this.mREAD_ONLY();
+
+
+ break;
+ case 172 :
+ // XQueryLexer.g:1:1360: UNIQUE
+ this.mUNIQUE();
+
+
+ break;
+ case 173 :
+ // XQueryLexer.g:1:1367: BINARY
+ this.mBINARY();
+
+
+ break;
+ case 174 :
+ // XQueryLexer.g:1:1374: PRIVATE
+ this.mPRIVATE();
+
+
+ break;
+ case 175 :
+ // XQueryLexer.g:1:1382: AMP_ER
+ this.mAMP_ER();
+
+
+ break;
+ case 176 :
+ // XQueryLexer.g:1:1389: APOS_ER
+ this.mAPOS_ER();
+
+
+ break;
+ case 177 :
+ // XQueryLexer.g:1:1397: QUOT_ER
+ this.mQUOT_ER();
+
+
+ break;
+ case 178 :
+ // XQueryLexer.g:1:1405: LPAREN
+ this.mLPAREN();
+
+
+ break;
+ case 179 :
+ // XQueryLexer.g:1:1412: RPAREN
+ this.mRPAREN();
+
+
+ break;
+ case 180 :
+ // XQueryLexer.g:1:1419: DOLLAR
+ this.mDOLLAR();
+
+
+ break;
+ case 181 :
+ // XQueryLexer.g:1:1426: LBRACKET
+ this.mLBRACKET();
+
+
+ break;
+ case 182 :
+ // XQueryLexer.g:1:1435: RBRACKET
+ this.mRBRACKET();
+
+
+ break;
+ case 183 :
+ // XQueryLexer.g:1:1444: LSQUARE
+ this.mLSQUARE();
+
+
+ break;
+ case 184 :
+ // XQueryLexer.g:1:1452: RSQUARE
+ this.mRSQUARE();
+
+
+ break;
+ case 185 :
+ // XQueryLexer.g:1:1460: EQUAL
+ this.mEQUAL();
+
+
+ break;
+ case 186 :
+ // XQueryLexer.g:1:1466: BIND
+ this.mBIND();
+
+
+ break;
+ case 187 :
+ // XQueryLexer.g:1:1471: NOTEQUAL
+ this.mNOTEQUAL();
+
+
+ break;
+ case 188 :
+ // XQueryLexer.g:1:1480: AMP
+ this.mAMP();
+
+
+ break;
+ case 189 :
+ // XQueryLexer.g:1:1484: COMMA
+ this.mCOMMA();
+
+
+ break;
+ case 190 :
+ // XQueryLexer.g:1:1490: QUESTION
+ this.mQUESTION();
+
+
+ break;
+ case 191 :
+ // XQueryLexer.g:1:1499: STAR
+ this.mSTAR();
+
+
+ break;
+ case 192 :
+ // XQueryLexer.g:1:1504: PLUS
+ this.mPLUS();
+
+
+ break;
+ case 193 :
+ // XQueryLexer.g:1:1509: MINUS
+ this.mMINUS();
+
+
+ break;
+ case 194 :
+ // XQueryLexer.g:1:1515: SMALLER
+ this.mSMALLER();
+
+
+ break;
+ case 195 :
+ // XQueryLexer.g:1:1523: GREATER
+ this.mGREATER();
+
+
+ break;
+ case 196 :
+ // XQueryLexer.g:1:1531: SMALLEREQ
+ this.mSMALLEREQ();
+
+
+ break;
+ case 197 :
+ // XQueryLexer.g:1:1541: GREATEREQ
+ this.mGREATEREQ();
+
+
+ break;
+ case 198 :
+ // XQueryLexer.g:1:1551: SMALLER_SMALLER
+ this.mSMALLER_SMALLER();
+
+
+ break;
+ case 199 :
+ // XQueryLexer.g:1:1567: GREATER_GREATER
+ this.mGREATER_GREATER();
+
+
+ break;
+ case 200 :
+ // XQueryLexer.g:1:1583: SLASH
+ this.mSLASH();
+
+
+ break;
+ case 201 :
+ // XQueryLexer.g:1:1589: SLASH_SLASH
+ this.mSLASH_SLASH();
+
+
+ break;
+ case 202 :
+ // XQueryLexer.g:1:1601: DOT
+ this.mDOT();
+
+
+ break;
+ case 203 :
+ // XQueryLexer.g:1:1605: DOT_DOT
+ this.mDOT_DOT();
+
+
+ break;
+ case 204 :
+ // XQueryLexer.g:1:1613: COLON
+ this.mCOLON();
+
+
+ break;
+ case 205 :
+ // XQueryLexer.g:1:1619: COLON_COLON
+ this.mCOLON_COLON();
+
+
+ break;
+ case 206 :
+ // XQueryLexer.g:1:1631: EMPTY_CLOSE_TAG
+ this.mEMPTY_CLOSE_TAG();
+
+
+ break;
+ case 207 :
+ // XQueryLexer.g:1:1647: CLOSE_TAG
+ this.mCLOSE_TAG();
+
+
+ break;
+ case 208 :
+ // XQueryLexer.g:1:1657: SEMICOLON
+ this.mSEMICOLON();
+
+
+ break;
+ case 209 :
+ // XQueryLexer.g:1:1667: VBAR
+ this.mVBAR();
+
+
+ break;
+ case 210 :
+ // XQueryLexer.g:1:1672: PRAGMA_START
+ this.mPRAGMA_START();
+
+
+ break;
+ case 211 :
+ // XQueryLexer.g:1:1685: PRAGMA_END
+ this.mPRAGMA_END();
+
+
+ break;
+ case 212 :
+ // XQueryLexer.g:1:1696: XML_COMMENT_START
+ this.mXML_COMMENT_START();
+
+
+ break;
+ case 213 :
+ // XQueryLexer.g:1:1714: XML_COMMENT_END
+ this.mXML_COMMENT_END();
+
+
+ break;
+ case 214 :
+ // XQueryLexer.g:1:1730: PI_START
+ this.mPI_START();
+
+
+ break;
+ case 215 :
+ // XQueryLexer.g:1:1739: PI_END
+ this.mPI_END();
+
+
+ break;
+ case 216 :
+ // XQueryLexer.g:1:1746: ATTR_SIGN
+ this.mATTR_SIGN();
+
+
+ break;
+ case 217 :
+ // XQueryLexer.g:1:1756: CHARREF_DEC
+ this.mCHARREF_DEC();
+
+
+ break;
+ case 218 :
+ // XQueryLexer.g:1:1768: CHARREF_HEX
+ this.mCHARREF_HEX();
+
+
+ break;
+ case 219 :
+ // XQueryLexer.g:1:1780: APOS
+ this.mAPOS();
+
+
+ break;
+ case 220 :
+ // XQueryLexer.g:1:1785: QUOT
+ this.mQUOT();
+
+
+ break;
+ case 221 :
+ // XQueryLexer.g:1:1790: L_NCName
+ this.mL_NCName();
+
+
+ break;
+ case 222 :
+ // XQueryLexer.g:1:1799: S
+ this.mS();
+
+
+ break;
+ case 223 :
+ // XQueryLexer.g:1:1801: L_Pragma
+ this.mL_Pragma();
+
+
+ break;
+ case 224 :
+ // XQueryLexer.g:1:1810: L_DirCommentConstructor
+ this.mL_DirCommentConstructor();
+
+
+ break;
+ case 225 :
+ // XQueryLexer.g:1:1834: L_DirPIConstructor
+ this.mL_DirPIConstructor();
+
+
+ break;
+ case 226 :
+ // XQueryLexer.g:1:1853: L_IntegerLiteral
+ this.mL_IntegerLiteral();
+
+
+ break;
+ case 227 :
+ // XQueryLexer.g:1:1870: L_DecimalLiteral
+ this.mL_DecimalLiteral();
+
+
+ break;
+ case 228 :
+ // XQueryLexer.g:1:1887: L_DoubleLiteral
+ this.mL_DoubleLiteral();
+
+
+ break;
+ case 229 :
+ // XQueryLexer.g:1:1903: L_Comment
+ this.mL_Comment();
+
+
+ break;
+ case 230 :
+ // XQueryLexer.g:1:1913: L_AnyChar
+ this.mL_AnyChar();
+
+
+ break;
+
+ }
+
+ }
+
+}, true); // important to pass true to overwrite default implementations
+
+org.antlr.lang.augmentObject(XQueryLexer, {
+ DFA19_eotS:
+ "\u0001\uffff\u0018\u003e\u0001\u008e\u0007\uffff\u0001\u0098\u0001"+
+ "\u0036\u0001\u009b\u0001\uffff\u0001\u009e\u0002\uffff\u0001\u00a2\u0001"+
+ "\u00a8\u0001\u00ab\u0001\u00ae\u0001\u00b0\u0002\uffff\u0001\u0036\u0005"+
+ "\uffff\u0001\u00b9\u0001\uffff\u0001\u003e\u0001\u00c0\u0001\u00c2\u0004"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u00ca\u000c\u003e\u0001\u00e4\u0006"+
+ "\u003e\u0001\u00ef\u0001\u003e\u0001\u00f2\u0001\u003e\u0001\u00f4\u0001"+
+ "\u003e\u0001\u00fb\u0001\u00fc\u0002\u003e\u0001\u0102\u0001\u0103\u0005"+
+ "\u003e\u0001\u010b\u0001\u003e\u0001\u010f\u0001\u003e\u0001\u0112\u0001"+
+ "\u0114\u0010\u003e\u0001\u012f\u000f\u003e\u0001\u0145\u000d\uffff\u0001"+
+ "\u0148\u000c\uffff\u0001\u014a\u0009\uffff\u0001\u014c\u0008\uffff\u0001"+
+ "\u00b9\u0001\u014c\u0001\uffff\u0001\u003e\u0001\u014f\u0001\u003e\u0001"+
+ "\uffff\u0001\u003e\u0001\uffff\u0004\u003e\u0001\u0156\u0002\u003e\u0001"+
+ "\uffff\u0010\u003e\u0001\u016c\u0006\u003e\u0001\u0173\u0001\u003e\u0001"+
+ "\uffff\u0006\u003e\u0001\u017c\u0003\u003e\u0001\uffff\u0002\u003e\u0001"+
+ "\uffff\u0001\u003e\u0001\uffff\u0006\u003e\u0002\uffff\u0001\u003e\u0001"+
+ "\u018c\u0002\u003e\u0001\u018f\u0002\uffff\u0001\u0192\u0006\u003e\u0001"+
+ "\uffff\u0002\u003e\u0001\u019c\u0001\uffff\u0002\u003e\u0001\uffff\u0001"+
+ "\u003e\u0001\uffff\u0011\u003e\u0001\u01b4\u0008\u003e\u0001\uffff\u0001"+
+ "\u003e\u0001\u01bf\u000e\u003e\u0001\u01d1\u0001\u003e\u0001\u01d3\u0002"+
+ "\u003e\u0008\uffff\u0001\u014c\u0001\u003e\u0001\uffff\u0004\u003e\u0001"+
+ "\u01dc\u0001\u003e\u0001\uffff\u0005\u003e\u0001\u01e3\u0001\u01e5\u0007"+
+ "\u003e\u0001\u01ef\u0006\u003e\u0001\uffff\u0003\u003e\u0001\u01f9\u0002"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u01fe\u0002\u003e\u0001\u0201\u0002"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u0207\u0002\u003e\u0001\u020a\u0005"+
+ "\u003e\u0001\u0211\u0002\u003e\u0001\u0214\u0001\uffff\u0001\u0215\u0001"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\uffff\u0005\u003e\u0001\u021e\u0002"+
+ "\u003e\u0001\u0222\u0001\uffff\u0002\u003e\u0001\u0225\u0012\u003e\u0001"+
+ "\u0238\u0001\u003e\u0001\uffff\u0001\u023a\u0004\u003e\u0001\u0240\u0001"+
+ "\u003e\u0001\u0242\u0001\u0243\u0001\u003e\u0001\uffff\u000c\u003e\u0001"+
+ "\u0251\u0002\u003e\u0001\u0254\u0001\u003e\u0001\uffff\u0001\u003e\u0001"+
+ "\uffff\u0001\u003e\u0001\u0258\u0001\u0259\u0003\u003e\u0001\u025e\u0001"+
+ "\u003e\u0001\uffff\u0004\u003e\u0001\u0264\u0001\u003e\u0001\uffff\u0001"+
+ "\u003e\u0001\uffff\u0001\u0267\u0001\u0268\u0001\u0269\u0003\u003e\u0001"+
+ "\u026f\u0002\u003e\u0001\uffff\u0001\u0272\u0005\u003e\u0001\u0278\u0002"+
+ "\u003e\u0001\uffff\u0001\u027c\u0002\u003e\u0001\u027f\u0001\uffff\u0002"+
+ "\u003e\u0001\uffff\u0004\u003e\u0001\u0286\u0001\uffff\u0001\u003e\u0001"+
+ "\u0289\u0001\uffff\u0006\u003e\u0001\uffff\u0001\u003e\u0001\u0291\u0002"+
+ "\uffff\u0001\u0292\u0007\u003e\u0001\uffff\u0002\u003e\u0001\u029c\u0001"+
+ "\uffff\u0001\u003e\u0001\u02a0\u0001\uffff\u0001\u02a1\u000e\u003e\u0001"+
+ "\u02b0\u0002\u003e\u0001\uffff\u0001\u003e\u0001\uffff\u0001\u003e\u0001"+
+ "\u02b5\u0001\u003e\u0001\u02b7\u0001\u003e\u0001\uffff\u0001\u003e\u0002"+
+ "\uffff\u0001\u02ba\u0002\u003e\u0001\u02bd\u0003\u003e\u0001\u02c1\u0001"+
+ "\u003e\u0001\u02c3\u0002\u003e\u0001\u02c6\u0001\uffff\u0001\u02c7\u0001"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u02cb\u0003\uffff\u0003\u003e\u0001"+
+ "\uffff\u0004\u003e\u0001\u02d3\u0001\uffff\u0001\u02d4\u0001\u003e\u0003"+
+ "\uffff\u0005\u003e\u0001\uffff\u0002\u003e\u0001\uffff\u0004\u003e\u0001"+
+ "\u02e2\u0001\uffff\u0003\u003e\u0001\uffff\u0002\u003e\u0001\uffff\u0001"+
+ "\u02e8\u0005\u003e\u0001\uffff\u0002\u003e\u0001\uffff\u0001\u02f0\u0002"+
+ "\u003e\u0001\u02f3\u0003\u003e\u0002\uffff\u0001\u02f7\u0001\u02f8\u0007"+
+ "\u003e\u0001\uffff\u0001\u0300\u0002\u003e\u0002\uffff\u0001\u0303\u0008"+
+ "\u003e\u0001\u030d\u0001\u030e\u0003\u003e\u0001\uffff\u0001\u003e\u0001"+
+ "\u0314\u0001\u003e\u0001\u0316\u0001\uffff\u0001\u0317\u0001\uffff\u0001"+
+ "\u003e\u0001\u0319\u0001\uffff\u0002\u003e\u0001\uffff\u0001\u031c\u0002"+
+ "\u003e\u0001\uffff\u0001\u003e\u0001\uffff\u0002\u003e\u0002\uffff\u0001"+
+ "\u0322\u0001\u0323\u0001\u003e\u0001\uffff\u0007\u003e\u0002\uffff\u0003"+
+ "\u003e\u0001\u032f\u0003\u003e\u0001\u0333\u0001\u003e\u0001\u0335\u0001"+
+ "\u003e\u0001\u0337\u0001\u003e\u0001\uffff\u0001\u003e\u0001\u033b\u0003"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u0341\u0001\u0342\u0003\u003e\u0001"+
+ "\uffff\u0001\u0346\u0001\u003e\u0001\uffff\u0003\u003e\u0002\uffff\u0003"+
+ "\u003e\u0001\u034e\u0003\u003e\u0001\uffff\u0001\u0352\u0001\u003e\u0001"+
+ "\uffff\u0005\u003e\u0001\u0359\u0001\u035a\u0002\u003e\u0002\uffff\u0001"+
+ "\u035d\u0004\u003e\u0001\uffff\u0001\u003e\u0002\uffff\u0001\u0364\u0001"+
+ "\uffff\u0002\u003e\u0001\uffff\u0004\u003e\u0001\u036b\u0002\uffff\u0001"+
+ "\u003e\u0001\u036e\u0004\u003e\u0001\u0373\u0001\u003e\u0001\u0375\u0002"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u037a\u0001\uffff\u0001\u003e\u0001"+
+ "\uffff\u0001\u003e\u0001\uffff\u0002\u003e\u0001\u0381\u0001\uffff\u0001"+
+ "\u003e\u0001\u0383\u0001\u0384\u0001\u0385\u0001\u003e\u0002\uffff\u0001"+
+ "\u0387\u0001\u0388\u0001\u003e\u0001\uffff\u0001\u038a\u0002\u003e\u0001"+
+ "\u038d\u0002\u003e\u0001\u0390\u0001\uffff\u0003\u003e\u0001\uffff\u0001"+
+ "\u0394\u0002\u003e\u0001\u0397\u0001\u0398\u0001\u003e\u0002\uffff\u0002"+
+ "\u003e\u0001\uffff\u0006\u003e\u0001\uffff\u0001\u003e\u0001\u03a3\u0001"+
+ "\u003e\u0001\u03a5\u0001\u03a6\u0001\u03a7\u0001\uffff\u0002\u003e\u0001"+
+ "\uffff\u0001\u03aa\u0001\u03ab\u0002\u003e\u0001\uffff\u0001\u003e\u0001"+
+ "\uffff\u0001\u03af\u0003\u003e\u0001\uffff\u0006\u003e\u0001\uffff\u0001"+
+ "\u003e\u0003\uffff\u0001\u03bb\u0002\uffff\u0001\u003e\u0001\uffff\u0001"+
+ "\u03bd\u0001\u03be\u0001\uffff\u0002\u003e\u0001\uffff\u0001\u03c2\u0002"+
+ "\u003e\u0001\uffff\u0001\u003e\u0001\u03c7\u0002\uffff\u0001\u003e\u0001"+
+ "\u03c9\u0001\u03ca\u0001\u003e\u0001\u03cc\u0001\u03cd\u0004\u003e\u0001"+
+ "\uffff\u0001\u03d2\u0003\uffff\u0002\u003e\u0002\uffff\u0003\u003e\u0001"+
+ "\uffff\u0001\u03d8\u0001\u003e\u0001\u03da\u0003\u003e\u0001\u03df\u0001"+
+ "\u03e0\u0003\u003e\u0001\uffff\u0001\u003e\u0002\uffff\u0001\u03e5\u0001"+
+ "\u03e6\u0001\u003e\u0001\uffff\u0001\u03e8\u0003\u003e\u0001\uffff\u0001"+
+ "\u003e\u0002\uffff\u0001\u003e\u0002\uffff\u0002\u003e\u0001\u03f0\u0001"+
+ "\u03f1\u0001\uffff\u0001\u03f2\u0001\u003e\u0001\u03f4\u0002\u003e\u0001"+
+ "\uffff\u0001\u003e\u0001\uffff\u0004\u003e\u0002\uffff\u0004\u003e\u0002"+
+ "\uffff\u0001\u003e\u0001\uffff\u0001\u0401\u0006\u003e\u0003\uffff\u0001"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u040b\u0009\u003e\u0001\uffff\u0003"+
+ "\u003e\u0001\u0418\u0003\u003e\u0001\u041c\u0001\u003e\u0001\uffff\u0004"+
+ "\u003e\u0001\u0422\u0007\u003e\u0001\uffff\u0003\u003e\u0001\uffff\u0001"+
+ "\u042d\u0001\u003e\u0001\u042f\u0002\u003e\u0001\uffff\u0001\u0432\u0002"+
+ "\u003e\u0001\u0435\u0004\u003e\u0001\u043a\u0001\u003e\u0001\uffff\u0001"+
+ "\u043c\u0001\uffff\u0002\u003e\u0001\uffff\u0002\u003e\u0001\uffff\u0004"+
+ "\u003e\u0001\uffff\u0001\u0445\u0001\uffff\u0007\u003e\u0001\u044d\u0001"+
+ "\uffff\u0001\u044e\u0001\u003e\u0001\u0450\u0001\u003e\u0001\u0452\u0001"+
+ "\u0453\u0001\u003e\u0002\uffff\u0001\u0455\u0001\uffff\u0001\u0456\u0002"+
+ "\uffff\u0001\u003e\u0002\uffff\u0003\u003e\u0001\u045b\u0001\uffff",
+ DFA19_eofS:
+ "\u045c\uffff",
+ DFA19_minS:
+ "\u0001\u0000\u0001\u0066\u0002\u0061\u0001\u0065\u0001\u006c\u0001"+
+ "\u0069\u0001\u0065\u0001\u0064\u0003\u0061\u0001\u0066\u0003\u0061\u0001"+
+ "\u0065\u0001\u006e\u0001\u0061\u0001\u0068\u0001\u0071\u0001\u0061\u0002"+
+ "\u0065\u0001\u0075\u0001\u0023\u0007\uffff\u0001\u003a\u0001\u003d\u0001"+
+ "\u0023\u0001\uffff\u0001\u003e\u0002\uffff\u0001\u002d\u0001\u0021\u0001"+
+ "\u003d\u0001\u002f\u0001\u002e\u0002\uffff\u0001\u0029\u0005\uffff\u0001"+
+ "\u002e\u0001\uffff\u0001\u0063\u0002\u002d\u0001\u0074\u0001\u006f\u0001"+
+ "\u0074\u0001\u0070\u0001\uffff\u0001\u0073\u0001\u0075\u0001\u002d\u0001"+
+ "\u0066\u0001\u006f\u0001\u006e\u0001\u0073\u0001\u0065\u0001\u006c\u0001"+
+ "\u0063\u0001\u0067\u0001\u0063\u0001\u0065\u0001\u0070\u0001\u0063\u0001"+
+ "\u002d\u0001\u0061\u0001\u0063\u0001\u006c\u0001\u006e\u0001\u0072\u0001"+
+ "\u006f\u0001\u002d\u0001\u0065\u0001\u002d\u0001\u0069\u0001\u002d\u0001"+
+ "\u0070\u0002\u002d\u0001\u0065\u0001\u0073\u0002\u002d\u0001\u0064\u0001"+
+ "\u006e\u0001\u0069\u0001\u0074\u0001\u006d\u0003\u002d\u0001\u0074\u0002"+
+ "\u002d\u0001\u0074\u0001\u0072\u0001\u0065\u0001\u0072\u0001\u0061\u0001"+
+ "\u006e\u0001\u0074\u0001\u0068\u0001\u006c\u0001\u006d\u0001\u0061\u0002"+
+ "\u0069\u0001\u006d\u0001\u0078\u0001\u0065\u0001\u002d\u0001\u0065\u0001"+
+ "\u0070\u0001\u006d\u0001\u0069\u0001\u0064\u0001\u0069\u0001\u006c\u0001"+
+ "\u0072\u0001\u0065\u0001\u006e\u0001\u0075\u0001\u004e\u0001\u0072\u0001"+
+ "\u0079\u0001\u0065\u0001\u0009\u000d\uffff\u0001\u0078\u000b\uffff\u0001"+
+ "\u002d\u0001\u0009\u0009\uffff\u0001\u0030\u0008\uffff\u0001\u002e\u0001"+
+ "\u0030\u0001\uffff\u0001\u0065\u0001\u002d\u0001\u0065\u0001\uffff\u0001"+
+ "\u0072\u0001\uffff\u0002\u0065\u0001\u0073\u0001\u006f\u0001\u002d\u0001"+
+ "\u0065\u0001\u006e\u0001\uffff\u0001\u006f\u0001\u0063\u0001\u0061\u0001"+
+ "\u0065\u0001\u0063\u0001\u006c\u0001\u0063\u0001\u006c\u0001\u006d\u0001"+
+ "\u0073\u0001\u0079\u0001\u006e\u0001\u0069\u0001\u0061\u0001\u0063\u0001"+
+ "\u0065\u0001\u002d\u0001\u0069\u0001\u0075\u0001\u006d\u0001\u0065\u0001"+
+ "\u0074\u0001\u006f\u0001\u002d\u0001\u0061\u0001\uffff\u0001\u0072\u0001"+
+ "\u006c\u0002\u0065\u0001\u0074\u0001\u006c\u0001\u002d\u0001\u0063\u0001"+
+ "\u0073\u0001\u006d\u0001\uffff\u0001\u0061\u0001\u0075\u0001\uffff\u0001"+
+ "\u0076\u0001\uffff\u0001\u006f\u0003\u0065\u0001\u0069\u0001\u0065\u0002"+
+ "\uffff\u0001\u006d\u0001\u002d\u0001\u0074\u0001\u0073\u0001\u002d\u0002"+
+ "\uffff\u0001\u002d\u0001\u0075\u0001\u006e\u0001\u0075\u0001\u0061\u0001"+
+ "\u0065\u0001\u0074\u0001\uffff\u0001\u0069\u0001\u0065\u0001\u002d\u0001"+
+ "\uffff\u0001\u0069\u0001\u0065\u0001\uffff\u0001\u0079\u0001\uffff\u0002"+
+ "\u0065\u0001\u0074\u0002\u0063\u0001\u0076\u0001\u002d\u0001\u0075\u0001"+
+ "\u0061\u0001\u006c\u0001\u0061\u0001\u0064\u0001\u0067\u0001\u0069\u0001"+
+ "\u0065\u0001\u0066\u0001\u0075\u0001\u002d\u0001\u0065\u0001\u0062\u0001"+
+ "\u0069\u0001\u0064\u0002\u0070\u0001\u0074\u0001\u006e\u0001\uffff\u0001"+
+ "\u0061\u0001\u002d\u0001\u0065\u0001\u0062\u0001\u006f\u0001\u0072\u0001"+
+ "\u0061\u0001\u006e\u0002\u0069\u0001\u0073\u0001\u006e\u0001\u006c\u0001"+
+ "\u0064\u0001\u0068\u0001\u0065\u0001\u002d\u0001\u006f\u0001\u002d\u0001"+
+ "\u0075\u0001\u0074\u0004\uffff\u0001\u002d\u0003\uffff\u0001\u0030\u0001"+
+ "\u0073\u0001\uffff\u0001\u006e\u0001\u0069\u0001\u0072\u0001\u006e\u0001"+
+ "\u002d\u0001\u006d\u0001\uffff\u0001\u002d\u0001\u0064\u0001\u0072\u0001"+
+ "\u006b\u0001\u0072\u0002\u002d\u0001\u0068\u0001\u0064\u0001\u006b\u0001"+
+ "\u0061\u0001\u0065\u0001\u0074\u0001\u0065\u0001\u002d\u0001\u0074\u0001"+
+ "\u0061\u0001\u006d\u0001\u0075\u0001\u0065\u0001\u0074\u0001\uffff\u0001"+
+ "\u0074\u0001\u006d\u0001\u0065\u0001\u002d\u0001\u0079\u0001\u0064\u0001"+
+ "\uffff\u0001\u006c\u0001\u0079\u0001\u002d\u0001\u0070\u0001\u0072\u0001"+
+ "\u002d\u0001\u006f\u0001\u0061\u0001\uffff\u0002\u0074\u0001\u002d\u0001"+
+ "\u0074\u0001\u0070\u0001\u002d\u0002\u0072\u0001\u0061\u0001\u0072\u0001"+
+ "\u0067\u0001\u002d\u0001\u006e\u0001\u0078\u0001\u002d\u0001\uffff\u0001"+
+ "\u002d\u0001\u0074\u0001\uffff\u0001\u006c\u0001\u0066\u0001\uffff\u0001"+
+ "\u0073\u0001\u0074\u0001\u0061\u0001\u0062\u0001\u0073\u0001\u002d\u0001"+
+ "\u006e\u0001\u0072\u0001\u002d\u0001\uffff\u0001\u006f\u0001\u0072\u0001"+
+ "\u002d\u0001\u0072\u0001\u006e\u0003\u0065\u0001\u0069\u0001\u0065\u0001"+
+ "\u0061\u0001\u0065\u0001\u006d\u0001\u0072\u0001\u006d\u0001\u0061\u0001"+
+ "\u006c\u0001\u002d\u0001\u0065\u0001\u0073\u0001\u006d\u0001\u002d\u0001"+
+ "\u0065\u0001\uffff\u0001\u002d\u0001\u006c\u0001\u0074\u0001\u0063\u0001"+
+ "\u0069\u0001\u002d\u0001\u006c\u0002\u002d\u0001\u0074\u0001\uffff\u0001"+
+ "\u0073\u0001\u006c\u0001\u006e\u0001\u0075\u0001\u0064\u0001\u0074\u0001"+
+ "\u0067\u0001\u0064\u0001\u0065\u0001\u0061\u0001\u0069\u0001\u0065\u0001"+
+ "\u002d\u0001\u0065\u0001\u006f\u0001\u002d\u0001\u0072\u0001\uffff\u0001"+
+ "\u002d\u0001\uffff\u0001\u0065\u0001\u002d\u0001\u0000\u0001\u0074\u0001"+
+ "\u0064\u0001\u0062\u0001\u002d\u0001\u0064\u0001\uffff\u0001\u0061\u0001"+
+ "\u0075\u0001\u0061\u0001\u0065\u0001\u002d\u0001\u0079\u0001\uffff\u0001"+
+ "\u0062\u0001\uffff\u0003\u002d\u0001\u0074\u0001\u0063\u0001\u006e\u0001"+
+ "\u002d\u0001\u0078\u0001\u006e\u0001\uffff\u0001\u002d\u0001\u0072\u0001"+
+ "\u0061\u0001\u006c\u0001\u006e\u0001\u0065\u0001\u002d\u0001\u0065\u0001"+
+ "\u006e\u0001\uffff\u0001\u002d\u0002\u0069\u0001\u002d\u0001\uffff\u0001"+
+ "\u0074\u0001\u006e\u0001\uffff\u0001\u0077\u0001\u0063\u0001\u0067\u0001"+
+ "\u0069\u0001\u002d\u0001\uffff\u0001\u0065\u0001\u002d\u0001\uffff\u0001"+
+ "\u0074\u0001\u0069\u0001\u006e\u0001\u0074\u0001\u0073\u0001\u0072\u0001"+
+ "\uffff\u0001\u0069\u0001\u002d\u0002\uffff\u0001\u002d\u0001\u0065\u0001"+
+ "\u0079\u0001\u002d\u0001\u0061\u0002\u006c\u0001\u0070\u0001\uffff\u0001"+
+ "\u0068\u0001\u0065\u0001\u002d\u0001\uffff\u0001\u006e\u0001\u002d\u0001"+
+ "\uffff\u0001\u002d\u0001\u0074\u0001\u0072\u0001\u0064\u0001\u0072\u0001"+
+ "\u006f\u0001\u0073\u0001\u0074\u0001\u006e\u0001\u0069\u0001\u006e\u0001"+
+ "\u0065\u0001\u0063\u0001\u0069\u0001\u006f\u0001\u002d\u0001\u0066\u0001"+
+ "\u0061\u0001\uffff\u0001\u006e\u0001\uffff\u0001\u0065\u0001\u002d\u0001"+
+ "\u0074\u0001\u002d\u0001\u006e\u0001\uffff\u0001\u0065\u0002\uffff\u0001"+
+ "\u002d\u0001\u0077\u0001\u0069\u0001\u002d\u0002\u0065\u0001\u0069\u0001"+
+ "\u002d\u0001\u0061\u0001\u002d\u0001\u0062\u0001\u006f\u0001\u002d\u0001"+
+ "\uffff\u0001\u002d\u0001\u0077\u0001\uffff\u0001\u0079\u0001\u0064\u0001"+
+ "\u002d\u0003\uffff\u0001\u006f\u0001\u0069\u0001\u0075\u0001\uffff\u0001"+
+ "\u002d\u0001\u0074\u0002\u0072\u0001\u002d\u0001\uffff\u0001\u002d\u0001"+
+ "\u006c\u0003\uffff\u0001\u0069\u0002\u0074\u0001\u0061\u0001\u006e\u0001"+
+ "\uffff\u0001\u0074\u0001\u0061\u0001\uffff\u0001\u0065\u0001\u006c\u0001"+
+ "\u0074\u0001\u0064\u0001\u002d\u0001\uffff\u0001\u006e\u0001\u0074\u0001"+
+ "\u0073\u0001\uffff\u0001\u006e\u0001\u0074\u0001\uffff\u0001\u002d\u0001"+
+ "\u0061\u0001\u0069\u0001\u0068\u0001\u006e\u0001\u006f\u0001\uffff\u0001"+
+ "\u0073\u0001\u006e\u0001\uffff\u0001\u002d\u0001\u0074\u0001\u0063\u0001"+
+ "\u002d\u0001\u0065\u0001\u0069\u0001\u0074\u0002\uffff\u0002\u002d\u0001"+
+ "\u0073\u0001\u0069\u0001\u006c\u0001\u0065\u0001\u0061\u0001\u0065\u0001"+
+ "\u0073\u0001\uffff\u0001\u002d\u0001\u0064\u0001\u006e\u0002\uffff\u0001"+
+ "\u002d\u0001\u006e\u0001\u0069\u0001\u0076\u0001\u0075\u0001\u0073\u0001"+
+ "\u0065\u0001\u0074\u0001\u006c\u0002\u002d\u0001\u0065\u0001\u0064\u0001"+
+ "\u006e\u0001\uffff\u0001\u0069\u0001\u002d\u0001\u0074\u0001\u002d\u0001"+
+ "\uffff\u0001\u002d\u0001\uffff\u0001\u0067\u0001\u002d\u0001\uffff\u0001"+
+ "\u0069\u0001\u006e\u0001\uffff\u0001\u002d\u0001\u0072\u0001\u006e\u0001"+
+ "\uffff\u0001\u0074\u0001\uffff\u0001\u006c\u0001\u006e\u0002\uffff\u0002"+
+ "\u002d\u0001\u0069\u0001\uffff\u0001\u0072\u0001\u006e\u0001\u0074\u0001"+
+ "\u006f\u0002\u0069\u0001\u0079\u0002\uffff\u0001\u0065\u0001\u006f\u0001"+
+ "\u0069\u0001\u002d\u0001\u0063\u0001\u0069\u0001\u0074\u0001\u002d\u0001"+
+ "\u006d\u0003\u002d\u0001\u0061\u0001\uffff\u0001\u0074\u0001\u002d\u0001"+
+ "\u0065\u0001\u0067\u0001\u0079\u0001\uffff\u0001\u006c\u0001\u006e\u0002"+
+ "\u002d\u0001\u006e\u0001\u0074\u0001\u0067\u0001\uffff\u0001\u002d\u0001"+
+ "\u0065\u0001\uffff\u0001\u0063\u0001\u0074\u0001\u0079\u0002\uffff\u0001"+
+ "\u0069\u0001\u006e\u0001\u0079\u0001\u002d\u0001\u0063\u0001\u0072\u0001"+
+ "\u0065\u0001\uffff\u0001\u002d\u0001\u0067\u0001\uffff\u0001\u002d\u0001"+
+ "\u006e\u0001\u0065\u0001\u0073\u0001\u0069\u0002\u002d\u0001\u006c\u0001"+
+ "\u006e\u0002\uffff\u0001\u002d\u0001\u0061\u0001\u006c\u0001\u0065\u0001"+
+ "\u0061\u0001\uffff\u0001\u0069\u0002\uffff\u0001\u002d\u0001\uffff\u0001"+
+ "\u0074\u0001\u0067\u0001\uffff\u0001\u0065\u0001\u0067\u0002\u0065\u0001"+
+ "\u002d\u0002\uffff\u0001\u0067\u0001\u002d\u0001\u0067\u0001\u0065\u0001"+
+ "\u006e\u0001\u0063\u0003\u002d\u0001\u006e\u0001\u006f\u0001\uffff\u0001"+
+ "\u0074\u0001\u006e\u0001\u002d\u0001\uffff\u0001\u0065\u0001\uffff\u0001"+
+ "\u0066\u0001\uffff\u0002\u006e\u0001\u002d\u0001\uffff\u0001\u0071\u0003"+
+ "\u002d\u0001\u0067\u0002\uffff\u0003\u002d\u0001\uffff\u0001\u002d\u0001"+
+ "\u0074\u0001\u0079\u0001\u002d\u0001\u0067\u0001\u0065\u0001\u002d\u0001"+
+ "\uffff\u0001\u0065\u0001\u0069\u0001\u0072\u0001\uffff\u0001\u002d\u0001"+
+ "\u0073\u0001\u0067\u0002\u002d\u0001\u006e\u0002\uffff\u0001\u0065\u0001"+
+ "\u0067\u0001\uffff\u0001\u0074\u0001\u0079\u0001\u0073\u0001\u0074\u0001"+
+ "\u006c\u0001\u0061\u0001\uffff\u0001\u0063\u0001\u002d\u0001\u0064\u0003"+
+ "\u002d\u0001\uffff\u0001\u0069\u0001\u006f\u0001\uffff\u0002\u002d\u0001"+
+ "\u006c\u0001\u0061\u0001\uffff\u0001\u0073\u0001\uffff\u0001\u002d\u0001"+
+ "\u006e\u0001\u0069\u0001\u0074\u0001\uffff\u0001\u0073\u0001\u006f\u0001"+
+ "\u0065\u0001\u0074\u0001\u0067\u0001\u006e\u0001\uffff\u0001\u0075\u0003"+
+ "\uffff\u0001\u002d\u0002\uffff\u0001\u0073\u0001\uffff\u0002\u002d\u0001"+
+ "\uffff\u0001\u006e\u0001\u0064\u0001\uffff\u0001\u002d\u0001\u0074\u0001"+
+ "\u0076\u0001\uffff\u0001\u0065\u0001\u002d\u0002\uffff\u0001\u0067\u0002"+
+ "\u002d\u0001\u0069\u0002\u002d\u0001\u0074\u0001\u0065\u0001\u006c\u0001"+
+ "\u0068\u0001\uffff\u0001\u002d\u0003\uffff\u0001\u0074\u0001\u0072\u0002"+
+ "\uffff\u0001\u0079\u0001\u006c\u0001\u0070\u0001\uffff\u0001\u002d\u0001"+
+ "\u006f\u0001\u002d\u0001\u0070\u0001\u0072\u0001\u0070\u0002\u002d\u0001"+
+ "\u006f\u0001\u0065\u0001\u0073\u0001\uffff\u0001\u0065\u0002\uffff\u0002"+
+ "\u002d\u0001\u006e\u0001\uffff\u0001\u002d\u0001\u0065\u0001\u0070\u0001"+
+ "\u0073\u0001\uffff\u0001\u002d\u0002\uffff\u0001\u006f\u0002\uffff\u0001"+
+ "\u0072\u0001\u006d\u0002\u002d\u0001\uffff\u0003\u002d\u0001\u006c\u0001"+
+ "\u0061\u0001\uffff\u0001\u006e\u0001\uffff\u0001\u0061\u0001\u006d\u0001"+
+ "\u0061\u0001\u006f\u0002\uffff\u0001\u0064\u0001\u006e\u0001\u0069\u0001"+
+ "\u0070\u0002\uffff\u0001\u006f\u0001\uffff\u0001\u002d\u0001\u0061\u0002"+
+ "\u0069\u0001\u006e\u0001\u0069\u0001\u0065\u0003\uffff\u0001\u0073\u0001"+
+ "\uffff\u0001\u0079\u0001\u0063\u0001\u002d\u0001\u0063\u0001\u0061\u0002"+
+ "\u0072\u0001\u0065\u0001\u0063\u0001\u0062\u0001\u0061\u0001\u0064\u0001"+
+ "\uffff\u0001\u0072\u0001\u0062\u0001\u006e\u0001\u002d\u0001\u0062\u0001"+
+ "\u006e\u0001\u0065\u0001\u002d\u0001\u0065\u0001\uffff\u0001\u0065\u0001"+
+ "\u0074\u0001\u0061\u0002\u002d\u0001\u0065\u0001\u006c\u0001\u0072\u0001"+
+ "\u0065\u0001\u0061\u0001\u006c\u0001\u0073\u0001\uffff\u0001\u0075\u0001"+
+ "\u0074\u0001\u006c\u0001\uffff\u0001\u002d\u0001\u0073\u0001\u002d\u0001"+
+ "\u0074\u0001\u0073\u0001\uffff\u0001\u002d\u0001\u0069\u0001\u0061\u0001"+
+ "\u002d\u0001\u0074\u0001\u0069\u0002\u0074\u0001\u002d\u0001\u0066\u0001"+
+ "\uffff\u0001\u002d\u0001\uffff\u0001\u006f\u0001\u0065\u0001\uffff\u0001"+
+ "\u006e\u0001\u0074\u0001\uffff\u0001\u006f\u0001\u006e\u0001\u0072\u0001"+
+ "\u0065\u0001\uffff\u0001\u002d\u0001\uffff\u0001\u0072\u0001\u006c\u0001"+
+ "\u0067\u0001\u006f\u0001\u0072\u0001\u0067\u0001\u0075\u0001\u002d\u0001"+
+ "\uffff\u0001\u002d\u0001\u0066\u0001\u002d\u0001\u0072\u0002\u002d\u0001"+
+ "\u0063\u0002\uffff\u0001\u002d\u0001\uffff\u0001\u002d\u0002\uffff\u0001"+
+ "\u0074\u0002\uffff\u0001\u0069\u0001\u006f\u0001\u006e\u0001\u002d\u0001"+
+ "\uffff",
+ DFA19_maxS:
+ "\u0001\uffff\u0001\u0075\u0001\u0079\u0002\u006f\u0001\u0078\u0001"+
+ "\u0075\u0003\u0074\u0001\u0075\u0001\u006f\u0001\u0075\u0001\u0072\u0001"+
+ "\u0065\u0001\u0074\u0001\u0079\u0001\u0073\u0001\u0065\u0001\u0069\u0001"+
+ "\u0071\u0001\u0061\u0002\u0065\u0001\u0075\u0001\u003a\u0007\uffff\u0002"+
+ "\u003d\u0001\u0023\u0001\uffff\u0001\u003e\u0002\uffff\u0001\u002d\u0001"+
+ "\u003f\u0002\u003e\u0001\u0039\u0002\uffff\u0001\u0029\u0005\uffff\u0001"+
+ "\u0065\u0001\uffff\u0001\u0064\u0002\u007a\u0001\u0074\u0001\u0070\u0001"+
+ "\u0074\u0001\u0070\u0001\uffff\u0001\u0073\u0001\u0075\u0001\u007a\u0001"+
+ "\u0066\u0001\u006f\u0001\u006e\u0001\u0074\u0001\u0069\u0001\u0075\u0001"+
+ "\u0073\u0001\u0076\u0001\u0063\u0001\u0073\u0001\u0070\u0001\u0064\u0001"+
+ "\u007a\u0001\u0065\u0001\u0074\u0001\u0072\u0001\u006e\u0001\u0072\u0001"+
+ "\u006f\u0001\u007a\u0001\u006f\u0001\u007a\u0001\u0069\u0001\u007a\u0001"+
+ "\u0070\u0002\u007a\u0001\u0065\u0001\u0078\u0002\u007a\u0001\u0064\u0002"+
+ "\u006e\u0001\u0074\u0001\u006d\u0001\u007a\u0001\u006e\u0001\u007a\u0001"+
+ "\u0074\u0002\u007a\u0002\u0074\u0001\u006f\u0001\u0072\u0001\u0076\u0001"+
+ "\u006e\u0001\u0074\u0001\u0068\u0001\u0074\u0001\u006d\u0001\u0072\u0002"+
+ "\u0069\u0001\u006d\u0001\u0078\u0001\u0065\u0001\u007a\u0001\u0079\u0001"+
+ "\u0070\u0001\u006d\u0001\u006f\u0001\u0064\u0001\u0069\u0002\u0072\u0001"+
+ "\u0069\u0001\u0074\u0001\u0075\u0001\u004e\u0001\u0072\u0001\u0079\u0001"+
+ "\u006f\u0001\u007a\u000d\uffff\u0001\u0078\u000b\uffff\u0001\u002d\u0001"+
+ "\u007a\u0009\uffff\u0001\u0065\u0008\uffff\u0002\u0065\u0001\uffff\u0001"+
+ "\u0065\u0001\u007a\u0001\u0065\u0001\uffff\u0001\u0072\u0001\uffff\u0002"+
+ "\u0065\u0001\u0073\u0001\u006f\u0001\u007a\u0001\u0065\u0001\u006e\u0001"+
+ "\uffff\u0001\u006f\u0001\u0063\u0001\u0061\u0001\u0074\u0001\u0063\u0001"+
+ "\u006c\u0001\u0063\u0001\u006c\u0001\u006d\u0001\u0074\u0001\u0079\u0001"+
+ "\u006e\u0001\u006c\u0001\u0061\u0001\u0063\u0001\u0065\u0001\u007a\u0001"+
+ "\u0069\u0001\u0075\u0001\u006d\u0001\u0065\u0001\u0074\u0001\u006f\u0001"+
+ "\u007a\u0001\u0061\u0001\uffff\u0001\u0072\u0001\u006c\u0002\u0065\u0001"+
+ "\u0074\u0001\u006c\u0001\u007a\u0001\u0063\u0001\u0073\u0001\u006d\u0001"+
+ "\uffff\u0001\u0061\u0001\u0075\u0001\uffff\u0001\u0076\u0001\uffff\u0001"+
+ "\u006f\u0001\u0065\u0001\u0074\u0001\u006f\u0001\u0069\u0001\u0065\u0002"+
+ "\uffff\u0001\u006d\u0001\u007a\u0001\u0074\u0001\u0073\u0001\u007a\u0002"+
+ "\uffff\u0001\u007a\u0001\u0075\u0001\u006e\u0001\u0075\u0001\u0061\u0001"+
+ "\u0065\u0001\u0074\u0001\uffff\u0001\u0070\u0001\u0065\u0001\u007a\u0001"+
+ "\uffff\u0001\u0069\u0001\u0065\u0001\uffff\u0001\u0079\u0001\uffff\u0002"+
+ "\u0065\u0001\u0074\u0001\u0076\u0001\u0063\u0001\u0076\u0001\u0063\u0001"+
+ "\u0075\u0001\u0061\u0001\u006c\u0001\u0061\u0001\u0064\u0001\u0067\u0001"+
+ "\u0069\u0001\u0065\u0001\u0066\u0001\u0075\u0001\u007a\u0001\u0065\u0001"+
+ "\u0072\u0001\u0069\u0001\u0064\u0002\u0070\u0001\u0074\u0001\u006e\u0001"+
+ "\uffff\u0001\u0061\u0001\u007a\u0001\u0065\u0001\u0062\u0001\u0071\u0001"+
+ "\u0072\u0001\u0061\u0001\u006e\u0001\u0075\u0001\u0069\u0001\u0073\u0001"+
+ "\u0072\u0001\u006c\u0001\u0064\u0001\u0068\u0001\u0065\u0001\u007a\u0001"+
+ "\u006f\u0001\u007a\u0001\u0075\u0001\u0074\u0004\uffff\u0001\u002d\u0003"+
+ "\uffff\u0001\u0065\u0001\u0073\u0001\uffff\u0001\u006e\u0001\u0069\u0001"+
+ "\u0072\u0001\u006e\u0001\u007a\u0001\u006d\u0001\uffff\u0001\u002d\u0001"+
+ "\u0064\u0001\u0072\u0001\u006b\u0001\u0072\u0002\u007a\u0001\u0068\u0001"+
+ "\u0064\u0001\u006b\u0002\u0065\u0001\u0074\u0001\u0065\u0001\u007a\u0001"+
+ "\u0074\u0001\u0061\u0001\u006d\u0001\u0075\u0001\u0065\u0001\u0074\u0001"+
+ "\uffff\u0001\u0074\u0001\u006d\u0001\u0065\u0001\u007a\u0001\u0079\u0001"+
+ "\u0064\u0001\uffff\u0001\u006c\u0001\u0079\u0001\u007a\u0001\u0070\u0001"+
+ "\u0072\u0001\u007a\u0001\u006f\u0001\u0069\u0001\uffff\u0002\u0074\u0001"+
+ "\u007a\u0001\u0074\u0001\u0070\u0001\u007a\u0002\u0072\u0001\u0061\u0002"+
+ "\u0072\u0001\u007a\u0001\u006e\u0001\u0078\u0001\u007a\u0001\uffff\u0001"+
+ "\u007a\u0001\u0074\u0001\uffff\u0001\u006c\u0001\u0066\u0001\uffff\u0001"+
+ "\u0073\u0001\u0074\u0001\u0061\u0001\u0062\u0001\u0073\u0001\u007a\u0001"+
+ "\u006e\u0001\u0072\u0001\u007a\u0001\uffff\u0001\u006f\u0001\u0072\u0001"+
+ "\u007a\u0001\u0072\u0001\u006e\u0003\u0065\u0001\u0069\u0001\u0065\u0001"+
+ "\u0061\u0001\u0065\u0001\u006d\u0001\u0072\u0001\u006d\u0001\u0061\u0001"+
+ "\u006c\u0001\u002d\u0001\u0065\u0001\u0073\u0001\u006d\u0001\u007a\u0001"+
+ "\u0065\u0001\uffff\u0001\u007a\u0001\u006c\u0001\u0074\u0001\u0070\u0001"+
+ "\u0069\u0001\u007a\u0001\u006c\u0002\u007a\u0001\u0074\u0001\uffff\u0001"+
+ "\u0073\u0001\u006c\u0001\u006e\u0001\u0075\u0001\u0064\u0001\u0074\u0001"+
+ "\u0067\u0001\u0064\u0001\u0065\u0001\u0061\u0001\u0069\u0001\u0065\u0001"+
+ "\u007a\u0001\u0065\u0001\u006f\u0001\u007a\u0001\u0072\u0001\uffff\u0001"+
+ "\u002d\u0001\uffff\u0001\u0065\u0001\u007a\u0001\uffff\u0001\u0074\u0001"+
+ "\u0064\u0001\u0062\u0001\u007a\u0001\u0064\u0001\uffff\u0001\u0061\u0001"+
+ "\u0075\u0001\u0061\u0001\u0065\u0001\u007a\u0001\u0079\u0001\uffff\u0001"+
+ "\u0062\u0001\uffff\u0003\u007a\u0001\u0074\u0001\u0063\u0001\u006e\u0001"+
+ "\u007a\u0001\u0078\u0001\u006e\u0001\uffff\u0001\u007a\u0001\u0072\u0001"+
+ "\u0061\u0001\u006c\u0001\u006e\u0001\u0065\u0001\u007a\u0001\u0065\u0001"+
+ "\u006e\u0001\uffff\u0001\u007a\u0002\u0069\u0001\u007a\u0001\uffff\u0001"+
+ "\u0074\u0001\u006e\u0001\uffff\u0001\u0077\u0001\u0063\u0001\u0067\u0001"+
+ "\u0069\u0001\u007a\u0001\uffff\u0001\u0065\u0001\u007a\u0001\uffff\u0001"+
+ "\u0074\u0001\u0069\u0001\u006e\u0001\u0074\u0001\u0073\u0001\u0072\u0001"+
+ "\uffff\u0001\u0069\u0001\u007a\u0002\uffff\u0001\u007a\u0001\u0065\u0001"+
+ "\u0079\u0001\u002d\u0001\u0061\u0002\u006c\u0001\u0070\u0001\uffff\u0001"+
+ "\u0068\u0001\u0065\u0001\u007a\u0001\uffff\u0001\u006e\u0001\u007a\u0001"+
+ "\uffff\u0001\u007a\u0001\u0074\u0001\u0072\u0001\u0064\u0001\u0072\u0001"+
+ "\u006f\u0001\u0073\u0001\u0074\u0001\u006e\u0001\u0069\u0001\u006e\u0001"+
+ "\u0065\u0001\u0063\u0001\u0069\u0001\u006f\u0001\u007a\u0001\u0066\u0001"+
+ "\u0061\u0001\uffff\u0001\u006e\u0001\uffff\u0001\u0065\u0001\u007a\u0001"+
+ "\u0074\u0001\u007a\u0001\u006e\u0001\uffff\u0001\u0065\u0002\uffff\u0001"+
+ "\u007a\u0001\u0077\u0001\u0069\u0001\u007a\u0002\u0065\u0001\u0069\u0001"+
+ "\u007a\u0001\u0061\u0001\u007a\u0001\u0062\u0001\u006f\u0001\u007a\u0001"+
+ "\uffff\u0001\u007a\u0001\u0077\u0001\uffff\u0001\u0079\u0001\u0064\u0001"+
+ "\u007a\u0003\uffff\u0001\u006f\u0001\u0069\u0001\u0075\u0001\uffff\u0001"+
+ "\u002d\u0001\u0074\u0002\u0072\u0001\u007a\u0001\uffff\u0001\u007a\u0001"+
+ "\u006c\u0003\uffff\u0001\u0069\u0002\u0074\u0001\u0075\u0001\u006e\u0001"+
+ "\uffff\u0001\u0074\u0001\u0061\u0001\uffff\u0001\u0065\u0001\u006c\u0001"+
+ "\u0074\u0001\u0064\u0001\u007a\u0001\uffff\u0001\u006e\u0001\u0074\u0001"+
+ "\u0073\u0001\uffff\u0001\u006e\u0001\u0074\u0001\uffff\u0001\u007a\u0001"+
+ "\u0061\u0001\u0069\u0001\u0068\u0001\u006e\u0001\u006f\u0001\uffff\u0001"+
+ "\u0073\u0001\u006e\u0001\uffff\u0001\u007a\u0001\u0074\u0001\u0063\u0001"+
+ "\u007a\u0001\u0065\u0001\u0069\u0001\u0074\u0002\uffff\u0002\u007a\u0001"+
+ "\u0073\u0001\u0069\u0001\u006c\u0001\u0065\u0001\u0061\u0001\u0065\u0001"+
+ "\u0073\u0001\uffff\u0001\u007a\u0001\u0064\u0001\u006e\u0002\uffff\u0001"+
+ "\u007a\u0001\u006e\u0001\u0069\u0001\u0076\u0001\u0075\u0001\u0073\u0001"+
+ "\u0065\u0001\u0074\u0001\u006c\u0002\u007a\u0001\u0065\u0001\u0064\u0001"+
+ "\u006e\u0001\uffff\u0001\u0069\u0001\u007a\u0001\u0074\u0001\u007a\u0001"+
+ "\uffff\u0001\u007a\u0001\uffff\u0001\u0067\u0001\u007a\u0001\uffff\u0001"+
+ "\u0069\u0001\u006e\u0001\uffff\u0001\u007a\u0001\u0072\u0001\u006e\u0001"+
+ "\uffff\u0001\u0074\u0001\uffff\u0001\u006c\u0001\u006e\u0002\uffff\u0002"+
+ "\u007a\u0001\u0069\u0001\uffff\u0001\u0072\u0001\u006e\u0001\u0074\u0001"+
+ "\u006f\u0002\u0069\u0001\u0079\u0002\uffff\u0001\u0065\u0001\u006f\u0001"+
+ "\u0069\u0001\u007a\u0001\u0063\u0001\u0069\u0001\u0074\u0001\u007a\u0001"+
+ "\u006d\u0001\u007a\u0001\u002d\u0001\u007a\u0001\u0069\u0001\uffff\u0001"+
+ "\u0074\u0001\u007a\u0001\u0065\u0001\u0067\u0001\u0079\u0001\uffff\u0001"+
+ "\u006c\u0001\u006e\u0002\u007a\u0001\u006e\u0001\u0074\u0001\u0067\u0001"+
+ "\uffff\u0001\u007a\u0001\u0065\u0001\uffff\u0001\u0063\u0001\u0074\u0001"+
+ "\u0079\u0002\uffff\u0001\u0069\u0001\u006e\u0001\u0079\u0001\u007a\u0001"+
+ "\u0063\u0001\u0072\u0001\u0065\u0001\uffff\u0001\u007a\u0001\u0067\u0001"+
+ "\uffff\u0001\u002d\u0001\u006e\u0001\u0065\u0001\u0073\u0001\u0069\u0002"+
+ "\u007a\u0001\u006c\u0001\u006e\u0002\uffff\u0001\u007a\u0001\u0061\u0001"+
+ "\u006c\u0002\u0065\u0001\uffff\u0001\u0069\u0002\uffff\u0001\u007a\u0001"+
+ "\uffff\u0001\u0074\u0001\u0067\u0001\uffff\u0001\u0065\u0001\u0067\u0002"+
+ "\u0065\u0001\u007a\u0002\uffff\u0001\u0067\u0001\u007a\u0001\u0067\u0001"+
+ "\u0065\u0001\u006e\u0001\u0063\u0001\u007a\u0001\u002d\u0001\u007a\u0001"+
+ "\u006e\u0001\u006f\u0001\uffff\u0001\u0074\u0001\u006e\u0001\u007a\u0001"+
+ "\uffff\u0001\u0065\u0001\uffff\u0001\u0073\u0001\uffff\u0002\u006e\u0001"+
+ "\u007a\u0001\uffff\u0001\u0071\u0003\u007a\u0001\u0067\u0002\uffff\u0002"+
+ "\u007a\u0001\u002d\u0001\uffff\u0001\u007a\u0001\u0074\u0001\u0079\u0001"+
+ "\u007a\u0001\u0067\u0001\u0065\u0001\u007a\u0001\uffff\u0001\u0065\u0001"+
+ "\u0069\u0001\u0072\u0001\uffff\u0001\u007a\u0001\u0073\u0001\u0067\u0002"+
+ "\u007a\u0001\u006e\u0002\uffff\u0001\u0065\u0001\u0067\u0001\uffff\u0001"+
+ "\u0074\u0001\u0079\u0001\u0073\u0001\u0074\u0001\u006c\u0001\u0061\u0001"+
+ "\uffff\u0001\u0063\u0001\u007a\u0001\u0064\u0003\u007a\u0001\uffff\u0001"+
+ "\u0069\u0001\u006f\u0001\uffff\u0002\u007a\u0001\u006c\u0001\u0061\u0001"+
+ "\uffff\u0001\u0073\u0001\uffff\u0001\u007a\u0001\u006e\u0001\u0069\u0001"+
+ "\u0074\u0001\uffff\u0001\u0073\u0001\u006f\u0001\u0065\u0001\u0074\u0001"+
+ "\u0067\u0001\u006e\u0001\uffff\u0001\u0075\u0003\uffff\u0001\u007a\u0002"+
+ "\uffff\u0001\u0073\u0001\uffff\u0002\u007a\u0001\uffff\u0001\u006e\u0001"+
+ "\u0064\u0001\uffff\u0001\u007a\u0001\u0074\u0001\u0076\u0001\uffff\u0001"+
+ "\u0065\u0001\u007a\u0002\uffff\u0001\u0067\u0002\u007a\u0001\u0069\u0002"+
+ "\u007a\u0001\u0074\u0001\u0065\u0001\u006c\u0001\u0068\u0001\uffff\u0001"+
+ "\u007a\u0003\uffff\u0001\u0074\u0001\u0072\u0002\uffff\u0001\u0079\u0001"+
+ "\u006c\u0001\u0070\u0001\uffff\u0001\u007a\u0001\u006f\u0001\u007a\u0001"+
+ "\u0070\u0001\u0072\u0001\u0070\u0002\u007a\u0001\u006f\u0001\u0065\u0001"+
+ "\u0073\u0001\uffff\u0001\u0065\u0002\uffff\u0002\u007a\u0001\u006e\u0001"+
+ "\uffff\u0001\u007a\u0001\u0065\u0001\u0070\u0001\u0073\u0001\uffff\u0001"+
+ "\u002d\u0002\uffff\u0001\u006f\u0002\uffff\u0001\u0072\u0001\u006d\u0002"+
+ "\u007a\u0001\uffff\u0001\u007a\u0001\u002d\u0001\u007a\u0001\u006c\u0001"+
+ "\u0061\u0001\uffff\u0001\u006e\u0001\uffff\u0001\u0061\u0001\u006d\u0001"+
+ "\u0061\u0001\u006f\u0002\uffff\u0001\u0064\u0001\u006e\u0001\u0069\u0001"+
+ "\u0070\u0002\uffff\u0001\u006f\u0001\uffff\u0001\u007a\u0001\u0061\u0002"+
+ "\u0069\u0001\u006e\u0001\u0069\u0001\u0065\u0003\uffff\u0001\u0073\u0001"+
+ "\uffff\u0001\u0079\u0001\u0063\u0001\u007a\u0001\u0063\u0001\u0061\u0002"+
+ "\u0072\u0001\u0065\u0001\u0063\u0001\u0062\u0001\u0061\u0001\u0064\u0001"+
+ "\uffff\u0001\u0072\u0001\u0062\u0001\u006e\u0001\u007a\u0001\u0062\u0001"+
+ "\u006e\u0001\u0065\u0001\u007a\u0001\u0065\u0001\uffff\u0001\u0065\u0001"+
+ "\u0074\u0001\u0061\u0001\u002d\u0001\u007a\u0001\u0065\u0001\u006c\u0001"+
+ "\u0072\u0001\u0065\u0001\u0061\u0001\u006c\u0001\u0073\u0001\uffff\u0001"+
+ "\u0075\u0001\u0074\u0001\u006c\u0001\uffff\u0001\u007a\u0001\u0073\u0001"+
+ "\u007a\u0001\u0074\u0001\u0073\u0001\uffff\u0001\u007a\u0001\u0069\u0001"+
+ "\u0061\u0001\u007a\u0001\u0074\u0001\u0069\u0002\u0074\u0001\u007a\u0001"+
+ "\u0066\u0001\uffff\u0001\u007a\u0001\uffff\u0001\u006f\u0001\u0065\u0001"+
+ "\uffff\u0001\u006e\u0001\u0074\u0001\uffff\u0001\u006f\u0001\u006e\u0001"+
+ "\u0072\u0001\u0065\u0001\uffff\u0001\u007a\u0001\uffff\u0001\u0072\u0001"+
+ "\u006c\u0001\u0067\u0001\u006f\u0001\u0072\u0001\u0067\u0001\u0075\u0001"+
+ "\u007a\u0001\uffff\u0001\u007a\u0001\u0066\u0001\u007a\u0001\u0072\u0002"+
+ "\u007a\u0001\u0063\u0002\uffff\u0001\u007a\u0001\uffff\u0001\u007a\u0002"+
+ "\uffff\u0001\u0074\u0002\uffff\u0001\u0069\u0001\u006f\u0001\u006e\u0001"+
+ "\u007a\u0001\uffff",
+ DFA19_acceptS:
+ "\u001a\uffff\u0001\u00b3\u0001\u00b4\u0001\u00b5\u0001\u00b6\u0001"+
+ "\u00b7\u0001\u00b8\u0001\u00b9\u0003\uffff\u0001\u00bd\u0001\uffff\u0001"+
+ "\u00bf\u0001\u00c0\u0005\uffff\u0001\u00d0\u0001\u00d1\u0001\uffff\u0001"+
+ "\u00d8\u0001\u00db\u0001\u00dc\u0001\u00dd\u0001\u00de\u0001\uffff\u0001"+
+ "\u00e6\u0007\uffff\u0001\u00dd\u004e\uffff\u0001\u00e5\u0001\u00b2\u0001"+
+ "\u00b3\u0001\u00b4\u0001\u00b5\u0001\u00b6\u0001\u00b7\u0001\u00b8\u0001"+
+ "\u00b9\u0001\u00ba\u0001\u00cd\u0001\u00cc\u0001\u00bb\u0001\uffff\u0001"+
+ "\u00bc\u0001\u00bd\u0001\u00d7\u0001\u00be\u0001\u00bf\u0001\u00c0\u0001"+
+ "\u00d5\u0001\u00c1\u0001\u00c4\u0001\u00c6\u0001\u00cf\u0002\uffff\u0001"+
+ "\u00c2\u0001\u00c5\u0001\u00c7\u0001\u00c3\u0001\u00c9\u0001\u00ce\u0001"+
+ "\u00c8\u0001\u00cb\u0001\u00ca\u0001\uffff\u0001\u00d0\u0001\u00d1\u0001"+
+ "\u00d3\u0001\u00d8\u0001\u00db\u0001\u00dc\u0001\u00de\u0001\u00e2\u0002"+
+ "\uffff\u0001\u00e4\u0003\uffff\u0001\u0004\u0001\uffff\u0001\u0006\u0007"+
+ "\uffff\u0001\u000a\u0019\uffff\u0001\u0020\u000a\uffff\u0001\u0028\u0002"+
+ "\uffff\u0001\u002a\u0001\uffff\u0001\u002c\u0006\uffff\u0001\u002e\u0001"+
+ "\u0032\u0005\uffff\u0001\u0035\u0001\u0038\u0007\uffff\u0001\u003c\u0003"+
+ "\uffff\u0001\u0040\u0002\uffff\u0001\u0042\u0001\uffff\u0001\u00a8\u001a"+
+ "\uffff\u0001\u0057\u0015\uffff\u0001\u00d2\u0001\u00df\u0001\u00da\u0001"+
+ "\u00d9\u0001\uffff\u0001\u00d6\u0001\u00e1\u0001\u00e3\u0002\uffff\u0001"+
+ "\u0003\u0006\uffff\u0001\u00af\u0015\uffff\u0001\u0018\u0006\uffff\u0001"+
+ "\u0067\u0008\uffff\u0001\u0026\u000f\uffff\u0001\u0034\u0002\uffff\u0001"+
+ "\u0037\u0002\uffff\u0001\u0039\u0009\uffff\u0001\u00a7\u0017\uffff\u0001"+
+ "\u0092\u000a\uffff\u0001\u0077\u0011\uffff\u0001\u006d\u0001\uffff\u0001"+
+ "\u00a3\u0008\uffff\u0001\u00b0\u0006\uffff\u0001\u000b\u0001\uffff\u0001"+
+ "\u000c\u0009\uffff\u0001\u007e\u0009\uffff\u0001\u001c\u0004\uffff\u0001"+
+ "\u0095\u0002\uffff\u0001\u008f\u0005\uffff\u0001\u00a0\u0002\uffff\u0001"+
+ "\u002b\u0006\uffff\u0001\u0082\u0002\uffff\u0001\u0033\u0001\u0083\u0008"+
+ "\uffff\u0001\u006e\u0003\uffff\u0001\u003f\u0002\uffff\u0001\u006f\u0012"+
+ "\uffff\u0001\u0050\u0001\uffff\u0001\u0051\u0005\uffff\u0001\u0089\u0001"+
+ "\uffff\u0001\u0055\u0001\u0056\u000d\uffff\u0001\u0079\u0002\uffff\u0001"+
+ "\u008c\u0003\uffff\u0001\u00b1\u0001\u00d4\u0001\u00e0\u0003\uffff\u0001"+
+ "\u007c\u0005\uffff\u0001\u008d\u0002\uffff\u0001\u0061\u0001\u000e\u0001"+
+ "\u0099\u0005\uffff\u0001\u009c\u0002\uffff\u0001\u0063\u0005\uffff\u0001"+
+ "\u0066\u0003\uffff\u0001\u001d\u0002\uffff\u0001\u0021\u0006\uffff\u0001"+
+ "\u0080\u0002\uffff\u0001\u0068\u0007\uffff\u0001\u00a1\u0001\u0036\u0009"+
+ "\uffff\u0001\u0085\u0003\uffff\u0001\u0043\u0001\u0070\u000e\uffff\u0001"+
+ "\u00aa\u0004\uffff\u0001\u0076\u0001\uffff\u0001\u0054\u0002\uffff\u0001"+
+ "\u0058\u0002\uffff\u0001\u005a\u0003\uffff\u0001\u0096\u0001\uffff\u0001"+
+ "\u008b\u0002\uffff\u0001\u005f\u0001\u0094\u0003\uffff\u0001\u00a9\u0007"+
+ "\uffff\u0001\u007d\u0001\u00ad\u000d\uffff\u0001\u007f\u0005\uffff\u0001"+
+ "\u0022\u0007\uffff\u0001\u002d\u0002\uffff\u0001\u0081\u0003\uffff\u0001"+
+ "\u003a\u0001\u0084\u0007\uffff\u0001\u0041\u0002\uffff\u0001\u0046\u0009"+
+ "\uffff\u0001\u004b\u0001\u0086\u0005\uffff\u0001\u004d\u0001\uffff\u0001"+
+ "\u0052\u0001\u0053\u0001\uffff\u0001\u0093\u0002\uffff\u0001\u00ac\u0005"+
+ "\uffff\u0001\u007a\u0001\u0060\u000b\uffff\u0001\u0010\u0003\uffff\u0001"+
+ "\u0062\u0001\uffff\u0001\u0013\u0001\uffff\u0001\u0014\u0003\uffff\u0001"+
+ "\u001b\u0005\uffff\u0001\u009e\u0001\u009f\u0003\uffff\u0001\u002f\u0007"+
+ "\uffff\u0001\u00a6\u0003\uffff\u0001\u0044\u0006\uffff\u0001\u00ae\u0001"+
+ "\u0072\u0002\uffff\u0001\u0087\u0006\uffff\u0001\u0075\u0006\uffff\u0001"+
+ "\u005e\u0002\uffff\u0001\u0001\u0004\uffff\u0001\u0008\u0001\uffff\u0001"+
+ "\u000d\u0004\uffff\u0001\u008e\u0006\uffff\u0001\u0019\u0001\uffff\u0001"+
+ "\u001f\u0001\u009d\u0001\u0023\u0001\uffff\u0001\u0027\u0001\u0029\u0001"+
+ "\uffff\u0001\u0030\u0002\uffff\u0001\u006a\u0002\uffff\u0001\u00a5\u0003"+
+ "\uffff\u0001\u0045\u0002\uffff\u0001\u0049\u0001\u0074\u000a\uffff\u0001"+
+ "\u0078\u0001\uffff\u0001\u008a\u0001\u005c\u0001\u005d\u0002\uffff\u0001"+
+ "\u0005\u0001\u0007\u0003\uffff\u0001\u000f\u000b\uffff\u0001\u0024\u0001"+
+ "\uffff\u0001\u0031\u0001\u00a2\u0003\uffff\u0001\u003b\u0004\uffff\u0001"+
+ "\u0047\u0001\uffff\u0001\u0073\u0001\u0090\u0001\uffff\u0001\u00ab\u0001"+
+ "\u004c\u0004\uffff\u0001\u005b\u0005\uffff\u0001\u009a\u0001\uffff\u0001"+
+ "\u009b\u0004\uffff\u0001\u0015\u0001\u0017\u0004\uffff\u0001\u006b\u0001"+
+ "\u00a4\u0001\uffff\u0001\u003d\u0007\uffff\u0001\u0091\u0001\u0059\u0001"+
+ "\u007b\u0001\uffff\u0001\u0097\u000c\uffff\u0001\u003e\u0009\uffff\u0001"+
+ "\u0011\u000c\uffff\u0001\u0088\u0003\uffff\u0001\u0098\u0005\uffff\u0001"+
+ "\u001a\u000a\uffff\u0001\u0009\u0001\uffff\u0001\u0064\u0002\uffff\u0001"+
+ "\u001e\u0002\uffff\u0001\u006c\u0004\uffff\u0001\u004f\u0001\uffff\u0001"+
+ "\u0012\u0008\uffff\u0001\u0002\u0007\uffff\u0001\u004e\u0001\u0065\u0001"+
+ "\uffff\u0001\u0025\u0001\uffff\u0001\u0071\u0001\u0048\u0001\uffff\u0001"+
+ "\u0016\u0001\u0069\u0004\uffff\u0001\u004a",
+ DFA19_specialS:
+ "\u0001\u0001\u01d5\uffff\u0001\u0000\u0285\uffff}>",
+ DFA19_transitionS: [
+ "\u0009\u0036\u0002\u0034\u0002\u0036\u0001\u0034\u0012\u0036"+
+ "\u0001\u0034\u0001\u0022\u0001\u0032\u0001\u002f\u0001\u001b"+
+ "\u0001\u0036\u0001\u0023\u0001\u0031\u0001\u0019\u0001\u001a"+
+ "\u0001\u0026\u0001\u0027\u0001\u0024\u0001\u0028\u0001\u002c"+
+ "\u0001\u002b\u000a\u0035\u0001\u0021\u0001\u002d\u0001\u0029"+
+ "\u0001\u0020\u0001\u002a\u0001\u0025\u0001\u0030\u000d\u0033"+
+ "\u0001\u0015\u000c\u0033\u0001\u001e\u0001\u0036\u0001\u001f"+
+ "\u0001\u0036\u0001\u0033\u0001\u0036\u0001\u0001\u0001\u0002"+
+ "\u0001\u0003\u0001\u0004\u0001\u0005\u0001\u0006\u0001\u0007"+
+ "\u0001\u0033\u0001\u0008\u0001\u0033\u0001\u0017\u0001\u0009"+
+ "\u0001\u000a\u0001\u000b\u0001\u000c\u0001\u000d\u0001\u0018"+
+ "\u0001\u000e\u0001\u000f\u0001\u0010\u0001\u0011\u0001\u0012"+
+ "\u0001\u0013\u0001\u0014\u0001\u0033\u0001\u0016\u0001\u001c"+
+ "\u0001\u002e\u0001\u001d\uff82\u0036",
+ "\u0001\u003a\u0006\uffff\u0001\u003d\u0001\u0037\u0001\uffff"+
+ "\u0001\u003b\u0002\uffff\u0001\u0038\u0001\u0039\u0001\u003c",
+ "\u0001\u003f\u0003\uffff\u0001\u0042\u0003\uffff\u0001\u0044"+
+ "\u0002\uffff\u0001\u0043\u0002\uffff\u0001\u0040\u0009\uffff"+
+ "\u0001\u0041",
+ "\u0001\u0045\u0006\uffff\u0001\u0046\u0006\uffff\u0001\u0047",
+ "\u0001\u0048\u0003\uffff\u0001\u0049\u0005\uffff\u0001\u004a",
+ "\u0001\u004b\u0001\u004c\u0001\u004d\u0002\uffff\u0001\u004e"+
+ "\u0004\uffff\u0001\u004f\u0001\uffff\u0001\u0050",
+ "\u0001\u0053\u0005\uffff\u0001\u0051\u0002\uffff\u0001\u0054"+
+ "\u0002\uffff\u0001\u0052",
+ "\u0001\u0055\u000c\uffff\u0001\u0056\u0001\uffff\u0001\u0057",
+ "\u0001\u0058\u0001\uffff\u0001\u0059\u0006\uffff\u0001\u005a"+
+ "\u0001\u005b\u0004\uffff\u0001\u005c\u0001\u005d",
+ "\u0001\u005e\u0003\uffff\u0001\u005f\u000e\uffff\u0001\u0060",
+ "\u0001\u0063\u0007\uffff\u0001\u0062\u0005\uffff\u0001\u0061"+
+ "\u0005\uffff\u0001\u0064",
+ "\u0001\u0065\u0003\uffff\u0001\u0066\u0009\uffff\u0001\u0067",
+ "\u0001\u0068\u0007\uffff\u0001\u006b\u0001\uffff\u0001\u0069"+
+ "\u0001\uffff\u0001\u006a\u0002\uffff\u0001\u006c",
+ "\u0001\u006d\u0003\uffff\u0001\u006f\u000c\uffff\u0001\u006e",
+ "\u0001\u0071\u0003\uffff\u0001\u0070",
+ "\u0001\u0072\u0001\uffff\u0001\u0073\u0001\uffff\u0001\u0074"+
+ "\u0003\uffff\u0001\u0079\u0001\uffff\u0001\u0078\u0001\u0077"+
+ "\u0002\uffff\u0001\u0075\u0004\uffff\u0001\u0076",
+ "\u0001\u007a\u0002\uffff\u0001\u007b\u0006\uffff\u0001\u007c"+
+ "\u0002\uffff\u0001\u007d\u0002\uffff\u0001\u007f\u0003\uffff"+
+ "\u0001\u007e",
+ "\u0001\u0080\u0001\uffff\u0001\u0081\u0002\uffff\u0001\u0082",
+ "\u0001\u0083\u0003\uffff\u0001\u0084",
+ "\u0001\u0085\u0001\u0086",
+ "\u0001\u0087",
+ "\u0001\u0088",
+ "\u0001\u0089",
+ "\u0001\u008a",
+ "\u0001\u008b",
+ "\u0001\u008c\u0016\uffff\u0001\u008d",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u0097\u0002\uffff\u0001\u0096",
+ "\u0001\u0099",
+ "\u0001\u009a",
+ "",
+ "\u0001\u009d",
+ "",
+ "",
+ "\u0001\u00a1",
+ "\u0001\u00a6\u000d\uffff\u0001\u00a5\u000c\uffff\u0001\u00a4"+
+ "\u0001\u00a3\u0001\uffff\u0001\u00a7",
+ "\u0001\u00a9\u0001\u00aa",
+ "\u0001\u00ac\u000e\uffff\u0001\u00ad",
+ "\u0001\u00af\u0001\uffff\u000a\u00b1",
+ "",
+ "",
+ "\u0001\u00b4",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u00bb\u0001\uffff\u000a\u00ba\u000b\uffff\u0001\u00bc"+
+ "\u001f\uffff\u0001\u00bc",
+ "",
+ "\u0001\u00bd\u0001\u00be",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0002\u003e\u0001\u00bf"+
+ "\u0017\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0013\u003e\u0001\u00c1"+
+ "\u0006\u003e",
+ "\u0001\u00c3",
+ "\u0001\u00c5\u0001\u00c4",
+ "\u0001\u00c6",
+ "\u0001\u00c7",
+ "",
+ "\u0001\u00c8",
+ "\u0001\u00c9",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u00cb",
+ "\u0001\u00cc",
+ "\u0001\u00cd",
+ "\u0001\u00ce\u0001\u00cf",
+ "\u0001\u00d1\u0003\uffff\u0001\u00d0",
+ "\u0001\u00d2\u0001\u00d3\u0001\u00d4\u0001\uffff\u0001\u00d5"+
+ "\u0004\uffff\u0001\u00d6",
+ "\u0001\u00d7\u0002\uffff\u0001\u00d8\u0005\uffff\u0001\u00da"+
+ "\u0006\uffff\u0001\u00d9",
+ "\u0001\u00dc\u000e\uffff\u0001\u00db",
+ "\u0001\u00dd",
+ "\u0001\u00de\u000d\uffff\u0001\u00df",
+ "\u0001\u00e0",
+ "\u0001\u00e1\u0001\u00e2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0014\u003e\u0001\u00e3"+
+ "\u0005\u003e",
+ "\u0001\u00e6\u0003\uffff\u0001\u00e5",
+ "\u0001\u00e7\u0005\uffff\u0001\u00e9\u000a\uffff\u0001\u00e8",
+ "\u0001\u00ea\u0005\uffff\u0001\u00eb",
+ "\u0001\u00ec",
+ "\u0001\u00ed",
+ "\u0001\u00ee",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u00f0\u0009\uffff\u0001\u00f1",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u00f3",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u00f5",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0003\u003e\u0001\u00fa"+
+ "\u0001\u003e\u0001\u00f9\u0001\u003e\u0001\u00f6\u000a\u003e"+
+ "\u0001\u00f7\u0001\u00f8\u0006\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u00fd",
+ "\u0001\u00ff\u0004\uffff\u0001\u00fe",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0001\u0100\u0012\u003e"+
+ "\u0001\u0101\u0006\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0104",
+ "\u0001\u0105",
+ "\u0001\u0106\u0004\uffff\u0001\u0107",
+ "\u0001\u0108",
+ "\u0001\u0109",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0017\u003e\u0001\u010a"+
+ "\u0002\u003e",
+ "\u0001\u010c\u0036\uffff\u0001\u010d\u0009\uffff\u0001\u010e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0110",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0003\u003e\u0001\u0111"+
+ "\u0016\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u000b\u003e\u0001\u0113"+
+ "\u000e\u003e",
+ "\u0001\u0115",
+ "\u0001\u0116\u0001\uffff\u0001\u0117",
+ "\u0001\u0118\u0003\uffff\u0001\u011a\u0005\uffff\u0001\u0119",
+ "\u0001\u011b",
+ "\u0001\u0120\u000c\uffff\u0001\u011d\u0001\uffff\u0001\u011e"+
+ "\u0003\uffff\u0001\u011c\u0001\uffff\u0001\u011f",
+ "\u0001\u0121",
+ "\u0001\u0122",
+ "\u0001\u0123",
+ "\u0001\u0124\u0004\uffff\u0001\u0125\u0002\uffff\u0001\u0126",
+ "\u0001\u0127",
+ "\u0001\u0128\u0010\uffff\u0001\u0129",
+ "\u0001\u012a",
+ "\u0001\u012b",
+ "\u0001\u012c",
+ "\u0001\u012d",
+ "\u0001\u012e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0130\u0013\uffff\u0001\u0131",
+ "\u0001\u0132",
+ "\u0001\u0133",
+ "\u0001\u0134\u0005\uffff\u0001\u0135",
+ "\u0001\u0136",
+ "\u0001\u0137",
+ "\u0001\u0138\u0005\uffff\u0001\u0139",
+ "\u0001\u013a",
+ "\u0001\u013b\u0003\uffff\u0001\u013c",
+ "\u0001\u013d\u0005\uffff\u0001\u013e",
+ "\u0001\u013f",
+ "\u0001\u0140",
+ "\u0001\u0141",
+ "\u0001\u0142",
+ "\u0001\u0143\u0009\uffff\u0001\u0144",
+ "\u0002\u0146\u0002\uffff\u0001\u0146\u0012\uffff\u0001\u0146"+
+ "\u0020\uffff\u001a\u0146\u0004\uffff\u0001\u0146\u0001\uffff"+
+ "\u001a\u0146",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u0147",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u0149",
+ "\u0002\u014b\u0002\uffff\u0001\u014b\u0012\uffff\u0001\u014b"+
+ "\u0020\uffff\u001a\u014b\u0004\uffff\u0001\u014b\u0001\uffff"+
+ "\u001a\u014b",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u000a\u00b1\u000b\uffff\u0001\u00bc\u001f\uffff\u0001\u00bc",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u00bb\u0001\uffff\u000a\u00ba\u000b\uffff\u0001\u00bc"+
+ "\u001f\uffff\u0001\u00bc",
+ "\u000a\u014d\u000b\uffff\u0001\u00bc\u001f\uffff\u0001\u00bc",
+ "",
+ "\u0001\u014e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0150",
+ "",
+ "\u0001\u0151",
+ "",
+ "\u0001\u0152",
+ "\u0001\u0153",
+ "\u0001\u0154",
+ "\u0001\u0155",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0157",
+ "\u0001\u0158",
+ "",
+ "\u0001\u0159",
+ "\u0001\u015a",
+ "\u0001\u015b",
+ "\u0001\u015c\u000e\uffff\u0001\u015d",
+ "\u0001\u015e",
+ "\u0001\u015f",
+ "\u0001\u0160",
+ "\u0001\u0161",
+ "\u0001\u0162",
+ "\u0001\u0163\u0001\u0164",
+ "\u0001\u0165",
+ "\u0001\u0166",
+ "\u0001\u0168\u0002\uffff\u0001\u0167",
+ "\u0001\u0169",
+ "\u0001\u016a",
+ "\u0001\u016b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u016d",
+ "\u0001\u016e",
+ "\u0001\u016f",
+ "\u0001\u0170",
+ "\u0001\u0171",
+ "\u0001\u0172",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0174",
+ "",
+ "\u0001\u0175",
+ "\u0001\u0176",
+ "\u0001\u0177",
+ "\u0001\u0178",
+ "\u0001\u0179",
+ "\u0001\u017a",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0004\u003e\u0001\u017b"+
+ "\u0015\u003e",
+ "\u0001\u017d",
+ "\u0001\u017e",
+ "\u0001\u017f",
+ "",
+ "\u0001\u0180",
+ "\u0001\u0181",
+ "",
+ "\u0001\u0182",
+ "",
+ "\u0001\u0183",
+ "\u0001\u0184",
+ "\u0001\u0186\u000e\uffff\u0001\u0185",
+ "\u0001\u0187\u0009\uffff\u0001\u0188",
+ "\u0001\u0189",
+ "\u0001\u018a",
+ "",
+ "",
+ "\u0001\u018b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u018d",
+ "\u0001\u018e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0008\u003e\u0001\u0191"+
+ "\u000b\u003e\u0001\u0190\u0005\u003e",
+ "\u0001\u0193",
+ "\u0001\u0194",
+ "\u0001\u0195",
+ "\u0001\u0196",
+ "\u0001\u0197",
+ "\u0001\u0198",
+ "",
+ "\u0001\u0199\u0006\uffff\u0001\u019a",
+ "\u0001\u019b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u019d",
+ "\u0001\u019e",
+ "",
+ "\u0001\u019f",
+ "",
+ "\u0001\u01a0",
+ "\u0001\u01a1",
+ "\u0001\u01a2",
+ "\u0001\u01a3\u000f\uffff\u0001\u01a4\u0002\uffff\u0001\u01a5",
+ "\u0001\u01a6",
+ "\u0001\u01a7",
+ "\u0001\u01a9\u0035\uffff\u0001\u01a8",
+ "\u0001\u01aa",
+ "\u0001\u01ab",
+ "\u0001\u01ac",
+ "\u0001\u01ad",
+ "\u0001\u01ae",
+ "\u0001\u01af",
+ "\u0001\u01b0",
+ "\u0001\u01b1",
+ "\u0001\u01b2",
+ "\u0001\u01b3",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01b5",
+ "\u0001\u01b6\u000f\uffff\u0001\u01b7",
+ "\u0001\u01b8",
+ "\u0001\u01b9",
+ "\u0001\u01ba",
+ "\u0001\u01bb",
+ "\u0001\u01bc",
+ "\u0001\u01bd",
+ "",
+ "\u0001\u01be",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01c0",
+ "\u0001\u01c1",
+ "\u0001\u01c2\u0001\uffff\u0001\u01c3",
+ "\u0001\u01c4",
+ "\u0001\u01c5",
+ "\u0001\u01c6",
+ "\u0001\u01c7\u000b\uffff\u0001\u01c8",
+ "\u0001\u01c9",
+ "\u0001\u01ca",
+ "\u0001\u01cc\u0003\uffff\u0001\u01cb",
+ "\u0001\u01cd",
+ "\u0001\u01ce",
+ "\u0001\u01cf",
+ "\u0001\u01d0",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01d2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01d4",
+ "\u0001\u01d5",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u01d6",
+ "",
+ "",
+ "",
+ "\u000a\u014d\u000b\uffff\u0001\u00bc\u001f\uffff\u0001\u00bc",
+ "\u0001\u01d7",
+ "",
+ "\u0001\u01d8",
+ "\u0001\u01d9",
+ "\u0001\u01da",
+ "\u0001\u01db",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01dd",
+ "",
+ "\u0001\u01de",
+ "\u0001\u01df",
+ "\u0001\u01e0",
+ "\u0001\u01e1",
+ "\u0001\u01e2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0001\u01e4\u0019\u003e",
+ "\u0001\u01e6",
+ "\u0001\u01e7",
+ "\u0001\u01e8",
+ "\u0001\u01e9\u0003\uffff\u0001\u01ea",
+ "\u0001\u01eb",
+ "\u0001\u01ec",
+ "\u0001\u01ed",
+ "\u0001\u01ee\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01f0",
+ "\u0001\u01f1",
+ "\u0001\u01f2",
+ "\u0001\u01f3",
+ "\u0001\u01f4",
+ "\u0001\u01f5",
+ "",
+ "\u0001\u01f6",
+ "\u0001\u01f7",
+ "\u0001\u01f8",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01fa",
+ "\u0001\u01fb",
+ "",
+ "\u0001\u01fc",
+ "\u0001\u01fd",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01ff",
+ "\u0001\u0200",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0202",
+ "\u0001\u0203\u0007\uffff\u0001\u0204",
+ "",
+ "\u0001\u0205",
+ "\u0001\u0206",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0208",
+ "\u0001\u0209",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u020b",
+ "\u0001\u020c",
+ "\u0001\u020d",
+ "\u0001\u020e",
+ "\u0001\u0210\u000a\uffff\u0001\u020f",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0212",
+ "\u0001\u0213",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0216",
+ "",
+ "\u0001\u0217",
+ "\u0001\u0218",
+ "",
+ "\u0001\u0219",
+ "\u0001\u021a",
+ "\u0001\u021b",
+ "\u0001\u021c",
+ "\u0001\u021d",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u021f",
+ "\u0001\u0220",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0012\u003e\u0001\u0221"+
+ "\u0007\u003e",
+ "",
+ "\u0001\u0223",
+ "\u0001\u0224",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0226",
+ "\u0001\u0227",
+ "\u0001\u0228",
+ "\u0001\u0229",
+ "\u0001\u022a",
+ "\u0001\u022b",
+ "\u0001\u022c",
+ "\u0001\u022d",
+ "\u0001\u022e",
+ "\u0001\u022f",
+ "\u0001\u0230",
+ "\u0001\u0231",
+ "\u0001\u0232",
+ "\u0001\u0233",
+ "\u0001\u0234",
+ "\u0001\u0235",
+ "\u0001\u0236",
+ "\u0001\u0237",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0239",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u023b",
+ "\u0001\u023c",
+ "\u0001\u023d\u000c\uffff\u0001\u023e",
+ "\u0001\u023f",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0241",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0244",
+ "",
+ "\u0001\u0245",
+ "\u0001\u0246",
+ "\u0001\u0247",
+ "\u0001\u0248",
+ "\u0001\u0249",
+ "\u0001\u024a",
+ "\u0001\u024b",
+ "\u0001\u024c",
+ "\u0001\u024d",
+ "\u0001\u024e",
+ "\u0001\u024f",
+ "\u0001\u0250",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0252",
+ "\u0001\u0253",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0255",
+ "",
+ "\u0001\u0256",
+ "",
+ "\u0001\u0257",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0000\u025a",
+ "\u0001\u025b",
+ "\u0001\u025c",
+ "\u0001\u025d",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u025f",
+ "",
+ "\u0001\u0260",
+ "\u0001\u0261",
+ "\u0001\u0262",
+ "\u0001\u0263",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0265",
+ "",
+ "\u0001\u0266",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u026a",
+ "\u0001\u026b",
+ "\u0001\u026c",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0001\u026e\u0010\u003e"+
+ "\u0001\u026d\u0008\u003e",
+ "\u0001\u0270",
+ "\u0001\u0271",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0273",
+ "\u0001\u0274",
+ "\u0001\u0275",
+ "\u0001\u0276",
+ "\u0001\u0277",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0279",
+ "\u0001\u027a",
+ "",
+ "\u0001\u027b\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u027d",
+ "\u0001\u027e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0280",
+ "\u0001\u0281",
+ "",
+ "\u0001\u0282",
+ "\u0001\u0283",
+ "\u0001\u0284",
+ "\u0001\u0285",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0287",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0008\u003e\u0001\u0288"+
+ "\u0011\u003e",
+ "",
+ "\u0001\u028a",
+ "\u0001\u028b",
+ "\u0001\u028c",
+ "\u0001\u028d",
+ "\u0001\u028e",
+ "\u0001\u028f",
+ "",
+ "\u0001\u0290",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0293",
+ "\u0001\u0294",
+ "\u0001\u0295",
+ "\u0001\u0296",
+ "\u0001\u0297",
+ "\u0001\u0298",
+ "\u0001\u0299",
+ "",
+ "\u0001\u029a",
+ "\u0001\u029b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u029d",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0004\u003e\u0001\u029e"+
+ "\u0003\u003e\u0001\u029f\u0011\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02a2",
+ "\u0001\u02a3",
+ "\u0001\u02a4",
+ "\u0001\u02a5",
+ "\u0001\u02a6",
+ "\u0001\u02a7",
+ "\u0001\u02a8",
+ "\u0001\u02a9",
+ "\u0001\u02aa",
+ "\u0001\u02ab",
+ "\u0001\u02ac",
+ "\u0001\u02ad",
+ "\u0001\u02ae",
+ "\u0001\u02af",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02b1",
+ "\u0001\u02b2",
+ "",
+ "\u0001\u02b3",
+ "",
+ "\u0001\u02b4",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02b6",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02b8",
+ "",
+ "\u0001\u02b9",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02bb",
+ "\u0001\u02bc",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02be",
+ "\u0001\u02bf",
+ "\u0001\u02c0",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02c2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02c4",
+ "\u0001\u02c5",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02c8",
+ "",
+ "\u0001\u02c9",
+ "\u0001\u02ca",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "",
+ "\u0001\u02cc",
+ "\u0001\u02cd",
+ "\u0001\u02ce",
+ "",
+ "\u0001\u02cf",
+ "\u0001\u02d0",
+ "\u0001\u02d1",
+ "\u0001\u02d2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02d5",
+ "",
+ "",
+ "",
+ "\u0001\u02d6",
+ "\u0001\u02d7",
+ "\u0001\u02d8",
+ "\u0001\u02da\u0013\uffff\u0001\u02d9",
+ "\u0001\u02db",
+ "",
+ "\u0001\u02dc",
+ "\u0001\u02dd",
+ "",
+ "\u0001\u02de",
+ "\u0001\u02df",
+ "\u0001\u02e0",
+ "\u0001\u02e1",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u02e3",
+ "\u0001\u02e4",
+ "\u0001\u02e5",
+ "",
+ "\u0001\u02e6",
+ "\u0001\u02e7",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02e9",
+ "\u0001\u02ea",
+ "\u0001\u02eb",
+ "\u0001\u02ec",
+ "\u0001\u02ed",
+ "",
+ "\u0001\u02ee",
+ "\u0001\u02ef",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02f1",
+ "\u0001\u02f2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02f4",
+ "\u0001\u02f5",
+ "\u0001\u02f6",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02f9",
+ "\u0001\u02fa",
+ "\u0001\u02fb",
+ "\u0001\u02fc",
+ "\u0001\u02fd",
+ "\u0001\u02fe",
+ "\u0001\u02ff",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0301",
+ "\u0001\u0302",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0304",
+ "\u0001\u0305",
+ "\u0001\u0306",
+ "\u0001\u0307",
+ "\u0001\u0308",
+ "\u0001\u0309",
+ "\u0001\u030a",
+ "\u0001\u030b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0008\u003e\u0001\u030c"+
+ "\u0011\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u030f",
+ "\u0001\u0310",
+ "\u0001\u0311",
+ "",
+ "\u0001\u0312",
+ "\u0001\u0313\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0315",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0318",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u031a",
+ "\u0001\u031b",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u031d",
+ "\u0001\u031e",
+ "",
+ "\u0001\u031f",
+ "",
+ "\u0001\u0320",
+ "\u0001\u0321",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0324",
+ "",
+ "\u0001\u0325",
+ "\u0001\u0326",
+ "\u0001\u0327",
+ "\u0001\u0328",
+ "\u0001\u0329",
+ "\u0001\u032a",
+ "\u0001\u032b",
+ "",
+ "",
+ "\u0001\u032c",
+ "\u0001\u032d",
+ "\u0001\u032e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0330",
+ "\u0001\u0331",
+ "\u0001\u0332",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0334",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0336",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0338\u0007\uffff\u0001\u0339",
+ "",
+ "\u0001\u033a",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u033c",
+ "\u0001\u033d",
+ "\u0001\u033e",
+ "",
+ "\u0001\u033f",
+ "\u0001\u0340",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0343",
+ "\u0001\u0344",
+ "\u0001\u0345",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0347",
+ "",
+ "\u0001\u0348",
+ "\u0001\u0349",
+ "\u0001\u034a",
+ "",
+ "",
+ "\u0001\u034b",
+ "\u0001\u034c",
+ "\u0001\u034d",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u034f",
+ "\u0001\u0350",
+ "\u0001\u0351",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0353",
+ "",
+ "\u0001\u0354",
+ "\u0001\u0355",
+ "\u0001\u0356",
+ "\u0001\u0357",
+ "\u0001\u0358",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u035b",
+ "\u0001\u035c",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u035e",
+ "\u0001\u035f",
+ "\u0001\u0360",
+ "\u0001\u0361\u0003\uffff\u0001\u0362",
+ "",
+ "\u0001\u0363",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0365",
+ "\u0001\u0366",
+ "",
+ "\u0001\u0367",
+ "\u0001\u0368",
+ "\u0001\u0369",
+ "\u0001\u036a",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0001\u036c",
+ "\u0001\u036d\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u036f",
+ "\u0001\u0370",
+ "\u0001\u0371",
+ "\u0001\u0372",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0374",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0376",
+ "\u0001\u0377",
+ "",
+ "\u0001\u0378",
+ "\u0001\u0379",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u037b",
+ "",
+ "\u0001\u037c\u000c\uffff\u0001\u037d",
+ "",
+ "\u0001\u037e",
+ "\u0001\u037f",
+ "\u0001\u0380\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0382",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0386",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0389",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u038b",
+ "\u0001\u038c",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u038e",
+ "\u0001\u038f",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0391",
+ "\u0001\u0392",
+ "\u0001\u0393",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0395",
+ "\u0001\u0396",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0399",
+ "",
+ "",
+ "\u0001\u039a",
+ "\u0001\u039b",
+ "",
+ "\u0001\u039c",
+ "\u0001\u039d",
+ "\u0001\u039e",
+ "\u0001\u039f",
+ "\u0001\u03a0",
+ "\u0001\u03a1",
+ "",
+ "\u0001\u03a2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03a4",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u03a8",
+ "\u0001\u03a9",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03ac",
+ "\u0001\u03ad",
+ "",
+ "\u0001\u03ae",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03b0",
+ "\u0001\u03b1",
+ "\u0001\u03b2",
+ "",
+ "\u0001\u03b3",
+ "\u0001\u03b4",
+ "\u0001\u03b5",
+ "\u0001\u03b6",
+ "\u0001\u03b7",
+ "\u0001\u03b8",
+ "",
+ "\u0001\u03b9",
+ "",
+ "",
+ "",
+ "\u0001\u03ba\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0001\u03bc",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u03bf",
+ "\u0001\u03c0",
+ "",
+ "\u0001\u03c1\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03c3",
+ "\u0001\u03c4",
+ "",
+ "\u0001\u03c5",
+ "\u0001\u03c6\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0001\u03c8",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03cb",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03ce",
+ "\u0001\u03cf",
+ "\u0001\u03d0",
+ "\u0001\u03d1",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "",
+ "\u0001\u03d3",
+ "\u0001\u03d4",
+ "",
+ "",
+ "\u0001\u03d5",
+ "\u0001\u03d6",
+ "\u0001\u03d7",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03d9",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03db",
+ "\u0001\u03dc",
+ "\u0001\u03dd",
+ "\u0001\u03de\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03e1",
+ "\u0001\u03e2",
+ "\u0001\u03e3",
+ "",
+ "\u0001\u03e4",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03e7",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03e9",
+ "\u0001\u03ea",
+ "\u0001\u03eb",
+ "",
+ "\u0001\u03ec",
+ "",
+ "",
+ "\u0001\u03ed",
+ "",
+ "",
+ "\u0001\u03ee",
+ "\u0001\u03ef",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03f3",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03f5",
+ "\u0001\u03f6",
+ "",
+ "\u0001\u03f7",
+ "",
+ "\u0001\u03f8",
+ "\u0001\u03f9",
+ "\u0001\u03fa",
+ "\u0001\u03fb",
+ "",
+ "",
+ "\u0001\u03fc",
+ "\u0001\u03fd",
+ "\u0001\u03fe",
+ "\u0001\u03ff",
+ "",
+ "",
+ "\u0001\u0400",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0402",
+ "\u0001\u0403",
+ "\u0001\u0404",
+ "\u0001\u0405",
+ "\u0001\u0406",
+ "\u0001\u0407",
+ "",
+ "",
+ "",
+ "\u0001\u0408",
+ "",
+ "\u0001\u0409",
+ "\u0001\u040a",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u040c",
+ "\u0001\u040d",
+ "\u0001\u040e",
+ "\u0001\u040f",
+ "\u0001\u0410",
+ "\u0001\u0411",
+ "\u0001\u0412",
+ "\u0001\u0413",
+ "\u0001\u0414",
+ "",
+ "\u0001\u0415",
+ "\u0001\u0416",
+ "\u0001\u0417",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0419",
+ "\u0001\u041a",
+ "\u0001\u041b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u041d",
+ "",
+ "\u0001\u041e",
+ "\u0001\u041f",
+ "\u0001\u0420",
+ "\u0001\u0421",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0423",
+ "\u0001\u0424",
+ "\u0001\u0425",
+ "\u0001\u0426",
+ "\u0001\u0427",
+ "\u0001\u0428",
+ "\u0001\u0429",
+ "",
+ "\u0001\u042a",
+ "\u0001\u042b",
+ "\u0001\u042c",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u042e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0430",
+ "\u0001\u0431",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0433",
+ "\u0001\u0434",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0436",
+ "\u0001\u0437",
+ "\u0001\u0438",
+ "\u0001\u0439",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u043b",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u043d",
+ "\u0001\u043e",
+ "",
+ "\u0001\u043f",
+ "\u0001\u0440",
+ "",
+ "\u0001\u0441",
+ "\u0001\u0442",
+ "\u0001\u0443",
+ "\u0001\u0444",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0446",
+ "\u0001\u0447",
+ "\u0001\u0448",
+ "\u0001\u0449",
+ "\u0001\u044a",
+ "\u0001\u044b",
+ "\u0001\u044c",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u044f",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0451",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0454",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0001\u0457",
+ "",
+ "",
+ "\u0001\u0458",
+ "\u0001\u0459",
+ "\u0001\u045a",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryLexer, {
+ DFA19_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryLexer.DFA19_eotS),
+ DFA19_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryLexer.DFA19_eofS),
+ DFA19_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryLexer.DFA19_minS),
+ DFA19_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryLexer.DFA19_maxS),
+ DFA19_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryLexer.DFA19_acceptS),
+ DFA19_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryLexer.DFA19_specialS),
+ DFA19_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryLexer.DFA19_transitionS.length;
+ for (i=0; i='\u0000' && LA19_470<='\uFFFF')) ) {s = 602;}
+
+ else s = 601;
+
+ if ( s>=0 ) return s;
+ break;
+ case 1 :
+ var LA19_0 = input.LA(1);
+
+ s = -1;
+ if ( (LA19_0=='a') ) {s = 1;}
+
+ else if ( (LA19_0=='b') ) {s = 2;}
+
+ else if ( (LA19_0=='c') ) {s = 3;}
+
+ else if ( (LA19_0=='d') ) {s = 4;}
+
+ else if ( (LA19_0=='e') ) {s = 5;}
+
+ else if ( (LA19_0=='f') ) {s = 6;}
+
+ else if ( (LA19_0=='g') ) {s = 7;}
+
+ else if ( (LA19_0=='i') ) {s = 8;}
+
+ else if ( (LA19_0=='l') ) {s = 9;}
+
+ else if ( (LA19_0=='m') ) {s = 10;}
+
+ else if ( (LA19_0=='n') ) {s = 11;}
+
+ else if ( (LA19_0=='o') ) {s = 12;}
+
+ else if ( (LA19_0=='p') ) {s = 13;}
+
+ else if ( (LA19_0=='r') ) {s = 14;}
+
+ else if ( (LA19_0=='s') ) {s = 15;}
+
+ else if ( (LA19_0=='t') ) {s = 16;}
+
+ else if ( (LA19_0=='u') ) {s = 17;}
+
+ else if ( (LA19_0=='v') ) {s = 18;}
+
+ else if ( (LA19_0=='w') ) {s = 19;}
+
+ else if ( (LA19_0=='x') ) {s = 20;}
+
+ else if ( (LA19_0=='N') ) {s = 21;}
+
+ else if ( (LA19_0=='z') ) {s = 22;}
+
+ else if ( (LA19_0=='k') ) {s = 23;}
+
+ else if ( (LA19_0=='q') ) {s = 24;}
+
+ else if ( (LA19_0=='(') ) {s = 25;}
+
+ else if ( (LA19_0==')') ) {s = 26;}
+
+ else if ( (LA19_0=='$') ) {s = 27;}
+
+ else if ( (LA19_0=='{') ) {s = 28;}
+
+ else if ( (LA19_0=='}') ) {s = 29;}
+
+ else if ( (LA19_0=='[') ) {s = 30;}
+
+ else if ( (LA19_0==']') ) {s = 31;}
+
+ else if ( (LA19_0=='=') ) {s = 32;}
+
+ else if ( (LA19_0==':') ) {s = 33;}
+
+ else if ( (LA19_0=='!') ) {s = 34;}
+
+ else if ( (LA19_0=='&') ) {s = 35;}
+
+ else if ( (LA19_0==',') ) {s = 36;}
+
+ else if ( (LA19_0=='?') ) {s = 37;}
+
+ else if ( (LA19_0=='*') ) {s = 38;}
+
+ else if ( (LA19_0=='+') ) {s = 39;}
+
+ else if ( (LA19_0=='-') ) {s = 40;}
+
+ else if ( (LA19_0=='<') ) {s = 41;}
+
+ else if ( (LA19_0=='>') ) {s = 42;}
+
+ else if ( (LA19_0=='/') ) {s = 43;}
+
+ else if ( (LA19_0=='.') ) {s = 44;}
+
+ else if ( (LA19_0==';') ) {s = 45;}
+
+ else if ( (LA19_0=='|') ) {s = 46;}
+
+ else if ( (LA19_0=='#') ) {s = 47;}
+
+ else if ( (LA19_0=='@') ) {s = 48;}
+
+ else if ( (LA19_0=='\'') ) {s = 49;}
+
+ else if ( (LA19_0=='\"') ) {s = 50;}
+
+ else if ( ((LA19_0>='A' && LA19_0<='M')||(LA19_0>='O' && LA19_0<='Z')||LA19_0=='_'||LA19_0=='h'||LA19_0=='j'||LA19_0=='y') ) {s = 51;}
+
+ else if ( ((LA19_0>='\t' && LA19_0<='\n')||LA19_0=='\r'||LA19_0==' ') ) {s = 52;}
+
+ else if ( ((LA19_0>='0' && LA19_0<='9')) ) {s = 53;}
+
+ else if ( ((LA19_0>='\u0000' && LA19_0<='\b')||(LA19_0>='\u000B' && LA19_0<='\f')||(LA19_0>='\u000E' && LA19_0<='\u001F')||LA19_0=='%'||LA19_0=='\\'||LA19_0=='^'||LA19_0=='`'||(LA19_0>='~' && LA19_0<='\uFFFF')) ) {s = 54;}
+
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 19, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+
+})();
+
+});
+/********************************
+ * Copyright (c) 2008, 2009 28msec Inc. and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gabriel Petrovay (28msec) - initial API and implementation
+ * Sam Neth (Mark Logic)
+ *******************************************************************************/
+
+
+define('ace/mode/xquery/XQueryParser', ['require', 'exports', 'module' , 'ace/mode/xquery/antlr3-all'], function(require, exports, module) {
+var org = require("./antlr3-all").org;
+ var XQueryParser = exports.XQueryParser = function(input, state) {
+ if (!state) {
+ state = new org.antlr.runtime.RecognizerSharedState();
+ }
+
+ (function(){
+ }).call(this);
+
+ XQueryParser.superclass.constructor.call(this, input, state);
+
+ this.dfa6 = new XQueryParser.DFA6(this);
+ this.dfa7 = new XQueryParser.DFA7(this);
+ this.dfa8 = new XQueryParser.DFA8(this);
+ this.dfa49 = new XQueryParser.DFA49(this);
+ this.dfa103 = new XQueryParser.DFA103(this);
+ this.dfa110 = new XQueryParser.DFA110(this);
+ this.dfa112 = new XQueryParser.DFA112(this);
+ this.dfa114 = new XQueryParser.DFA114(this);
+ this.dfa119 = new XQueryParser.DFA119(this);
+ this.dfa124 = new XQueryParser.DFA124(this);
+ this.dfa154 = new XQueryParser.DFA154(this);
+ this.dfa156 = new XQueryParser.DFA156(this);
+
+
+
+ /* @todo only create adaptor if output=AST */
+ this.adaptor = new org.antlr.runtime.tree.CommonTreeAdaptor();
+
+};
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ EOF: -1,
+ L_QuotAttrContentChar: 4,
+ L_AposAttrContentChar: 5,
+ L_ElementContentChar: 6,
+ L_CDataSection: 7,
+ L_PredefinedEntityRef: 8,
+ L_CharRef: 9,
+ ESCAPE_LBRACKET: 10,
+ ESCAPE_RBRACKET: 11,
+ ESCAPE_APOS: 12,
+ ESCAPE_QUOT: 13,
+ CDATA_START: 14,
+ CDATA_END: 15,
+ ANCESTOR: 16,
+ ANCESTOR_OR_SELF: 17,
+ AND: 18,
+ AS: 19,
+ ASCENDING: 20,
+ AT: 21,
+ ATTRIBUTE: 22,
+ BASE_URI: 23,
+ BOUNDARY_SPACE: 24,
+ BY: 25,
+ CASE: 26,
+ CAST: 27,
+ CASTABLE: 28,
+ CHILD: 29,
+ COLLATION: 30,
+ COMMENT: 31,
+ CONSTRUCTION: 32,
+ COPY_NAMESPACES: 33,
+ DECLARE: 34,
+ DEFAULT: 35,
+ DESCENDANT: 36,
+ DESCENDANT_OR_SELF: 37,
+ DESCENDING: 38,
+ DIV: 39,
+ DOCUMENT: 40,
+ DOCUMENT_NODE: 41,
+ ELEMENT: 42,
+ ELSE: 43,
+ EMPTY: 44,
+ EMPTY_SEQUENCE: 45,
+ ENCODING: 46,
+ EQ: 47,
+ EVERY: 48,
+ EXCEPT: 49,
+ EXTERNAL: 50,
+ FOLLOWING: 51,
+ FOLLOWING_SIBLING: 52,
+ FOR: 53,
+ FUNCTION: 54,
+ GE: 55,
+ GREATEST: 56,
+ GT: 57,
+ IDIV: 58,
+ IF: 59,
+ IMPORT: 60,
+ IN: 61,
+ INHERIT: 62,
+ INSTANCE: 63,
+ INTERSECT: 64,
+ IS: 65,
+ ITEM: 66,
+ LAX: 67,
+ LE: 68,
+ LEAST: 69,
+ LET: 70,
+ LT: 71,
+ MOD: 72,
+ MODULE: 73,
+ NAMESPACE: 74,
+ NE: 75,
+ NO_INHERIT: 76,
+ NO_PRESERVE: 77,
+ NODE: 78,
+ OF: 79,
+ OPTION: 80,
+ OR: 81,
+ ORDER: 82,
+ ORDERED: 83,
+ ORDERING: 84,
+ PARENT: 85,
+ PRECEDING: 86,
+ PRECEDING_SIBLING: 87,
+ PRESERVE: 88,
+ PROCESSING_INSTRUCTION: 89,
+ RETURN: 90,
+ SATISFIES: 91,
+ SCHEMA: 92,
+ SCHEMA_ATTRIBUTE: 93,
+ SCHEMA_ELEMENT: 94,
+ SELF: 95,
+ SOME: 96,
+ STABLE: 97,
+ STRICT: 98,
+ STRIP: 99,
+ TEXT: 100,
+ THEN: 101,
+ TO: 102,
+ TREAT: 103,
+ TYPESWITCH: 104,
+ UNION: 105,
+ UNORDERED: 106,
+ VALIDATE: 107,
+ VARIABLE: 108,
+ VERSION: 109,
+ WHERE: 110,
+ XQUERY: 111,
+ CATCH: 112,
+ CONTEXT: 113,
+ COUNT: 114,
+ DECIMAL_FORMAT: 115,
+ DECIMAL_SEPARATOR: 116,
+ DIGIT: 117,
+ END: 118,
+ GROUP: 119,
+ GROUPING_SEPARATOR: 120,
+ INFINITY: 121,
+ MINUS_SIGN: 122,
+ NAMESPACE_NODE: 123,
+ NAN: 124,
+ NEXT: 125,
+ ONLY: 126,
+ OUTER: 127,
+ PATTERN_SEPARATOR: 128,
+ PERCENT: 129,
+ PER_MILLE: 130,
+ PREVIOUS: 131,
+ SLIDING: 132,
+ START: 133,
+ TRY: 134,
+ TUMBLING: 135,
+ WHEN: 136,
+ WINDOW: 137,
+ ZERO_DIGIT: 138,
+ AFTER: 139,
+ BEFORE: 140,
+ COPY: 141,
+ DELETE: 142,
+ FIRST: 143,
+ INSERT: 144,
+ INTO: 145,
+ LAST: 146,
+ MODIFY: 147,
+ NODES: 148,
+ RENAME: 149,
+ REPLACE: 150,
+ REVALIDATION: 151,
+ SKIP: 152,
+ UPDATING: 153,
+ VALUE: 154,
+ WITH: 155,
+ BLOCK: 156,
+ CONSTANT: 157,
+ EXIT: 158,
+ RETURNING: 159,
+ SEQUENTIAL: 160,
+ SET: 161,
+ SIMPLE: 162,
+ WHILE: 163,
+ EVAL: 164,
+ USING: 165,
+ APPEND_ONLY: 166,
+ AUTOMATICALLY: 167,
+ CHECK: 168,
+ COLLECTION: 169,
+ CONSTRAINT: 170,
+ CONST: 171,
+ EQUALITY: 172,
+ FOREACH: 173,
+ FOREIGN: 174,
+ FROM: 175,
+ INDEX: 176,
+ INTEGRITY: 177,
+ KEY: 178,
+ MAINTAINED: 179,
+ MANUALLY: 180,
+ MUTABLE: 181,
+ NON: 182,
+ ON: 183,
+ QUEUE: 184,
+ RANGE: 185,
+ READ_ONLY: 186,
+ UNIQUE: 187,
+ BINARY: 188,
+ PRIVATE: 189,
+ AMP_ER: 190,
+ APOS_ER: 191,
+ QUOT_ER: 192,
+ LPAREN: 193,
+ RPAREN: 194,
+ DOLLAR: 195,
+ LBRACKET: 196,
+ RBRACKET: 197,
+ LSQUARE: 198,
+ RSQUARE: 199,
+ EQUAL: 200,
+ BIND: 201,
+ NOTEQUAL: 202,
+ AMP: 203,
+ COMMA: 204,
+ QUESTION: 205,
+ STAR: 206,
+ PLUS: 207,
+ MINUS: 208,
+ SMALLER: 209,
+ GREATER: 210,
+ SMALLEREQ: 211,
+ GREATEREQ: 212,
+ SMALLER_SMALLER: 213,
+ GREATER_GREATER: 214,
+ SLASH: 215,
+ SLASH_SLASH: 216,
+ DOT: 217,
+ DOT_DOT: 218,
+ COLON: 219,
+ COLON_COLON: 220,
+ EMPTY_CLOSE_TAG: 221,
+ CLOSE_TAG: 222,
+ SEMICOLON: 223,
+ VBAR: 224,
+ PRAGMA_START: 225,
+ PRAGMA_END: 226,
+ XML_COMMENT_START: 227,
+ XML_COMMENT_END: 228,
+ PI_START: 229,
+ PI_END: 230,
+ ATTR_SIGN: 231,
+ CHARREF_DEC: 232,
+ CHARREF_HEX: 233,
+ APOS: 234,
+ QUOT: 235,
+ NCNameStartChar: 236,
+ NCNameChar: 237,
+ L_NCName: 238,
+ Letter: 239,
+ HexLetter: 240,
+ Digit: 241,
+ Digits: 242,
+ S: 243,
+ SU: 244,
+ L_Pragma: 245,
+ L_DirCommentConstructor: 246,
+ L_DirPIConstructor: 247,
+ L_IntegerLiteral: 248,
+ L_DecimalLiteral: 249,
+ L_DoubleLiteral: 250,
+ L_Comment: 251,
+ L_AnyChar: 252,
+ L_QuotStringLiteralChar: 253,
+ L_AposStringLiteralChar: 254,
+ LibraryModule: 255,
+ MainModule: 256,
+ VersionDecl: 257,
+ VersionDeclEncoding: 258,
+ VersionDeclVersion: 259,
+ ModuleDecl: 260,
+ Prolog: 261,
+ DefaultNamespaceDecls: 262,
+ DefaultNamespaceDecl: 263,
+ Setters: 264,
+ Setter: 265,
+ NamespaceDecls: 266,
+ NamespaceDecl: 267,
+ Imports: 268,
+ SchemaImport: 269,
+ SchemaPrefix: 270,
+ NamespaceName: 271,
+ DefaultElementNamespace: 272,
+ AtHints: 273,
+ ModuleImport: 274,
+ BaseURIDecl: 275,
+ OrderedDecls: 276,
+ VarDecl: 277,
+ VarType: 278,
+ VarValue: 279,
+ VarDefaultValue: 280,
+ VarConstantDecl: 281,
+ VarVariableDecl: 282,
+ FunctionDecl: 283,
+ ParamList: 284,
+ ReturnType: 285,
+ OptionDecl: 286,
+ TypeDeclaration: 287,
+ Param: 288,
+ EnclosedExpr: 289,
+ QueryBody: 290,
+ UnaryExpr: 291,
+ DirElemConstructor: 292,
+ DirAttributeList: 293,
+ DirAttributeValue: 294,
+ DirElemContent: 295,
+ CommonContent: 296,
+ SequenceType: 297,
+ EmptySequenceTest: 298,
+ KindTest: 299,
+ ItemTest: 300,
+ AtomicType: 301,
+ StringLiteral: 302,
+ ElementContentChar: 303,
+ AttributeValueChar: 304,
+ QName: 305,
+ Block: 306,
+ BlockDecls: 307,
+ BlockVarDecl: 308,
+ BinaryTest: 309,
+ LETDOLLAR: 310,
+ EXPLICITLY: 311
+});
+
+(function(){
+// public class variables
+var EOF= -1,
+ L_QuotAttrContentChar= 4,
+ L_AposAttrContentChar= 5,
+ L_ElementContentChar= 6,
+ L_CDataSection= 7,
+ L_PredefinedEntityRef= 8,
+ L_CharRef= 9,
+ ESCAPE_LBRACKET= 10,
+ ESCAPE_RBRACKET= 11,
+ ESCAPE_APOS= 12,
+ ESCAPE_QUOT= 13,
+ CDATA_START= 14,
+ CDATA_END= 15,
+ ANCESTOR= 16,
+ ANCESTOR_OR_SELF= 17,
+ AND= 18,
+ AS= 19,
+ ASCENDING= 20,
+ AT= 21,
+ ATTRIBUTE= 22,
+ BASE_URI= 23,
+ BOUNDARY_SPACE= 24,
+ BY= 25,
+ CASE= 26,
+ CAST= 27,
+ CASTABLE= 28,
+ CHILD= 29,
+ COLLATION= 30,
+ COMMENT= 31,
+ CONSTRUCTION= 32,
+ COPY_NAMESPACES= 33,
+ DECLARE= 34,
+ DEFAULT= 35,
+ DESCENDANT= 36,
+ DESCENDANT_OR_SELF= 37,
+ DESCENDING= 38,
+ DIV= 39,
+ DOCUMENT= 40,
+ DOCUMENT_NODE= 41,
+ ELEMENT= 42,
+ ELSE= 43,
+ EMPTY= 44,
+ EMPTY_SEQUENCE= 45,
+ ENCODING= 46,
+ EQ= 47,
+ EVERY= 48,
+ EXCEPT= 49,
+ EXTERNAL= 50,
+ FOLLOWING= 51,
+ FOLLOWING_SIBLING= 52,
+ FOR= 53,
+ FUNCTION= 54,
+ GE= 55,
+ GREATEST= 56,
+ GT= 57,
+ IDIV= 58,
+ IF= 59,
+ IMPORT= 60,
+ IN= 61,
+ INHERIT= 62,
+ INSTANCE= 63,
+ INTERSECT= 64,
+ IS= 65,
+ ITEM= 66,
+ LAX= 67,
+ LE= 68,
+ LEAST= 69,
+ LET= 70,
+ LT= 71,
+ MOD= 72,
+ MODULE= 73,
+ NAMESPACE= 74,
+ NE= 75,
+ NO_INHERIT= 76,
+ NO_PRESERVE= 77,
+ NODE= 78,
+ OF= 79,
+ OPTION= 80,
+ OR= 81,
+ ORDER= 82,
+ ORDERED= 83,
+ ORDERING= 84,
+ PARENT= 85,
+ PRECEDING= 86,
+ PRECEDING_SIBLING= 87,
+ PRESERVE= 88,
+ PROCESSING_INSTRUCTION= 89,
+ RETURN= 90,
+ SATISFIES= 91,
+ SCHEMA= 92,
+ SCHEMA_ATTRIBUTE= 93,
+ SCHEMA_ELEMENT= 94,
+ SELF= 95,
+ SOME= 96,
+ STABLE= 97,
+ STRICT= 98,
+ STRIP= 99,
+ TEXT= 100,
+ THEN= 101,
+ TO= 102,
+ TREAT= 103,
+ TYPESWITCH= 104,
+ UNION= 105,
+ UNORDERED= 106,
+ VALIDATE= 107,
+ VARIABLE= 108,
+ VERSION= 109,
+ WHERE= 110,
+ XQUERY= 111,
+ CATCH= 112,
+ CONTEXT= 113,
+ COUNT= 114,
+ DECIMAL_FORMAT= 115,
+ DECIMAL_SEPARATOR= 116,
+ DIGIT= 117,
+ END= 118,
+ GROUP= 119,
+ GROUPING_SEPARATOR= 120,
+ INFINITY= 121,
+ MINUS_SIGN= 122,
+ NAMESPACE_NODE= 123,
+ NAN= 124,
+ NEXT= 125,
+ ONLY= 126,
+ OUTER= 127,
+ PATTERN_SEPARATOR= 128,
+ PERCENT= 129,
+ PER_MILLE= 130,
+ PREVIOUS= 131,
+ SLIDING= 132,
+ START= 133,
+ TRY= 134,
+ TUMBLING= 135,
+ WHEN= 136,
+ WINDOW= 137,
+ ZERO_DIGIT= 138,
+ AFTER= 139,
+ BEFORE= 140,
+ COPY= 141,
+ DELETE= 142,
+ FIRST= 143,
+ INSERT= 144,
+ INTO= 145,
+ LAST= 146,
+ MODIFY= 147,
+ NODES= 148,
+ RENAME= 149,
+ REPLACE= 150,
+ REVALIDATION= 151,
+ SKIP= 152,
+ UPDATING= 153,
+ VALUE= 154,
+ WITH= 155,
+ BLOCK= 156,
+ CONSTANT= 157,
+ EXIT= 158,
+ RETURNING= 159,
+ SEQUENTIAL= 160,
+ SET= 161,
+ SIMPLE= 162,
+ WHILE= 163,
+ EVAL= 164,
+ USING= 165,
+ APPEND_ONLY= 166,
+ AUTOMATICALLY= 167,
+ CHECK= 168,
+ COLLECTION= 169,
+ CONSTRAINT= 170,
+ CONST= 171,
+ EQUALITY= 172,
+ FOREACH= 173,
+ FOREIGN= 174,
+ FROM= 175,
+ INDEX= 176,
+ INTEGRITY= 177,
+ KEY= 178,
+ MAINTAINED= 179,
+ MANUALLY= 180,
+ MUTABLE= 181,
+ NON= 182,
+ ON= 183,
+ QUEUE= 184,
+ RANGE= 185,
+ READ_ONLY= 186,
+ UNIQUE= 187,
+ BINARY= 188,
+ PRIVATE= 189,
+ AMP_ER= 190,
+ APOS_ER= 191,
+ QUOT_ER= 192,
+ LPAREN= 193,
+ RPAREN= 194,
+ DOLLAR= 195,
+ LBRACKET= 196,
+ RBRACKET= 197,
+ LSQUARE= 198,
+ RSQUARE= 199,
+ EQUAL= 200,
+ BIND= 201,
+ NOTEQUAL= 202,
+ AMP= 203,
+ COMMA= 204,
+ QUESTION= 205,
+ STAR= 206,
+ PLUS= 207,
+ MINUS= 208,
+ SMALLER= 209,
+ GREATER= 210,
+ SMALLEREQ= 211,
+ GREATEREQ= 212,
+ SMALLER_SMALLER= 213,
+ GREATER_GREATER= 214,
+ SLASH= 215,
+ SLASH_SLASH= 216,
+ DOT= 217,
+ DOT_DOT= 218,
+ COLON= 219,
+ COLON_COLON= 220,
+ EMPTY_CLOSE_TAG= 221,
+ CLOSE_TAG= 222,
+ SEMICOLON= 223,
+ VBAR= 224,
+ PRAGMA_START= 225,
+ PRAGMA_END= 226,
+ XML_COMMENT_START= 227,
+ XML_COMMENT_END= 228,
+ PI_START= 229,
+ PI_END= 230,
+ ATTR_SIGN= 231,
+ CHARREF_DEC= 232,
+ CHARREF_HEX= 233,
+ APOS= 234,
+ QUOT= 235,
+ NCNameStartChar= 236,
+ NCNameChar= 237,
+ L_NCName= 238,
+ Letter= 239,
+ HexLetter= 240,
+ Digit= 241,
+ Digits= 242,
+ S= 243,
+ SU= 244,
+ L_Pragma= 245,
+ L_DirCommentConstructor= 246,
+ L_DirPIConstructor= 247,
+ L_IntegerLiteral= 248,
+ L_DecimalLiteral= 249,
+ L_DoubleLiteral= 250,
+ L_Comment= 251,
+ L_AnyChar= 252,
+ L_QuotStringLiteralChar= 253,
+ L_AposStringLiteralChar= 254,
+ LibraryModule= 255,
+ MainModule= 256,
+ VersionDecl= 257,
+ VersionDeclEncoding= 258,
+ VersionDeclVersion= 259,
+ ModuleDecl= 260,
+ Prolog= 261,
+ DefaultNamespaceDecls= 262,
+ DefaultNamespaceDecl= 263,
+ Setters= 264,
+ Setter= 265,
+ NamespaceDecls= 266,
+ NamespaceDecl= 267,
+ Imports= 268,
+ SchemaImport= 269,
+ SchemaPrefix= 270,
+ NamespaceName= 271,
+ DefaultElementNamespace= 272,
+ AtHints= 273,
+ ModuleImport= 274,
+ BaseURIDecl= 275,
+ OrderedDecls= 276,
+ VarDecl= 277,
+ VarType= 278,
+ VarValue= 279,
+ VarDefaultValue= 280,
+ VarConstantDecl= 281,
+ VarVariableDecl= 282,
+ FunctionDecl= 283,
+ ParamList= 284,
+ ReturnType= 285,
+ OptionDecl= 286,
+ TypeDeclaration= 287,
+ Param= 288,
+ EnclosedExpr= 289,
+ QueryBody= 290,
+ UnaryExpr= 291,
+ DirElemConstructor= 292,
+ DirAttributeList= 293,
+ DirAttributeValue= 294,
+ DirElemContent= 295,
+ CommonContent= 296,
+ SequenceType= 297,
+ EmptySequenceTest= 298,
+ KindTest= 299,
+ ItemTest= 300,
+ AtomicType= 301,
+ StringLiteral= 302,
+ ElementContentChar= 303,
+ AttributeValueChar= 304,
+ QName= 305,
+ Block= 306,
+ BlockDecls= 307,
+ BlockVarDecl= 308,
+ BinaryTest= 309,
+ LETDOLLAR= 310,
+ EXPLICITLY= 311;
+
+// public instance methods/vars
+org.antlr.lang.extend(XQueryParser, org.antlr.runtime.Parser, {
+
+ setTreeAdaptor: function(adaptor) {
+ this.adaptor = adaptor;
+ },
+ getTreeAdaptor: function() {
+ return this.adaptor;
+ },
+
+ getTokenNames: function() { return XQueryParser.tokenNames; },
+ getGrammarFileName: function() { return "XQueryParser.g"; }
+});
+org.antlr.lang.augmentObject(XQueryParser.prototype, {
+
+ // inline static return class
+ p_Module_return: (function() {
+ XQueryParser.p_Module_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Module_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:119:1: p_Module : (vd= p_VersionDecl )? (lm= p_LibraryModule[$vd.tree] -> | mm= p_MainModule[$vd.tree] ->) EOF ;
+ // $ANTLR start "p_Module"
+ p_Module: function() {
+ var retval = new XQueryParser.p_Module_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var EOF1 = null;
+ var vd = null;
+ var lm = null;
+ var mm = null;
+
+ var EOF1_tree=null;
+ var stream_EOF=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EOF");
+ var stream_p_VersionDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_VersionDecl");
+ var stream_p_LibraryModule=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_LibraryModule");
+ var stream_p_MainModule=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_MainModule");
+ try {
+ // XQueryParser.g:120:9: ( (vd= p_VersionDecl )? (lm= p_LibraryModule[$vd.tree] -> | mm= p_MainModule[$vd.tree] ->) EOF )
+ // XQueryParser.g:120:11: (vd= p_VersionDecl )? (lm= p_LibraryModule[$vd.tree] -> | mm= p_MainModule[$vd.tree] ->) EOF
+ // XQueryParser.g:120:13: (vd= p_VersionDecl )?
+ var alt1=2;
+ var LA1_0 = this.input.LA(1);
+
+ if ( (LA1_0==XQUERY) ) {
+ var LA1_1 = this.input.LA(2);
+
+ if ( (LA1_1==ENCODING||LA1_1==VERSION) ) {
+ alt1=1;
+ }
+ }
+ switch (alt1) {
+ case 1 :
+ // XQueryParser.g:120:13: vd= p_VersionDecl
+ this.pushFollow(XQueryParser.FOLLOW_p_VersionDecl_in_p_Module523);
+ vd=this.p_VersionDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_VersionDecl.add(vd.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:121:13: (lm= p_LibraryModule[$vd.tree] -> | mm= p_MainModule[$vd.tree] ->)
+ var alt2=2;
+ var LA2_0 = this.input.LA(1);
+
+ if ( (LA2_0==MODULE) ) {
+ var LA2_1 = this.input.LA(2);
+
+ if ( (LA2_1==NAMESPACE) ) {
+ alt2=1;
+ }
+ else if ( (LA2_1==EOF||LA2_1==AND||(LA2_1>=CAST && LA2_1<=CASTABLE)||LA2_1==DIV||LA2_1==EQ||LA2_1==EXCEPT||LA2_1==GE||(LA2_1>=GT && LA2_1<=IDIV)||(LA2_1>=INSTANCE && LA2_1<=IS)||LA2_1==LE||(LA2_1>=LT && LA2_1<=MOD)||LA2_1==NE||LA2_1==OR||(LA2_1>=TO && LA2_1<=TREAT)||LA2_1==UNION||LA2_1==LPAREN||LA2_1==LSQUARE||LA2_1==EQUAL||LA2_1==NOTEQUAL||LA2_1==COMMA||(LA2_1>=STAR && LA2_1<=SLASH_SLASH)||LA2_1==COLON||(LA2_1>=SEMICOLON && LA2_1<=VBAR)) ) {
+ alt2=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 2, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( ((LA2_0>=ANCESTOR && LA2_0<=MOD)||(LA2_0>=NAMESPACE && LA2_0<=EXIT)||(LA2_0>=SEQUENTIAL && LA2_0<=MAINTAINED)||(LA2_0>=MUTABLE && LA2_0<=LPAREN)||LA2_0==DOLLAR||(LA2_0>=STAR && LA2_0<=SMALLER)||(LA2_0>=SLASH && LA2_0<=DOT_DOT)||LA2_0==ATTR_SIGN||(LA2_0>=APOS && LA2_0<=QUOT)||LA2_0==L_NCName||(LA2_0>=L_Pragma && LA2_0<=L_DoubleLiteral)||(LA2_0>=LETDOLLAR && LA2_0<=EXPLICITLY)) ) {
+ alt2=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 2, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt2) {
+ case 1 :
+ // XQueryParser.g:122:17: lm= p_LibraryModule[$vd.tree]
+ this.pushFollow(XQueryParser.FOLLOW_p_LibraryModule_in_p_Module558);
+ lm=this.p_LibraryModule((vd?vd.tree:null));
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_LibraryModule.add(lm.getTree());
+
+
+ // AST REWRITE
+ // elements:
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 122:49: ->
+ {
+ this.adaptor.addChild(root_0, (lm?lm.tree:null));
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:123:15: mm= p_MainModule[$vd.tree]
+ this.pushFollow(XQueryParser.FOLLOW_p_MainModule_in_p_Module584);
+ mm=this.p_MainModule((vd?vd.tree:null));
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_MainModule.add(mm.getTree());
+
+
+ // AST REWRITE
+ // elements:
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 123:49: ->
+ {
+ this.adaptor.addChild(root_0, (mm?mm.tree:null));
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+
+ EOF1=this.match(this.input,EOF,XQueryParser.FOLLOW_EOF_in_p_Module613); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EOF.add(EOF1);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_VersionDecl_return: (function() {
+ XQueryParser.p_VersionDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_VersionDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:128:1: p_VersionDecl : k+= XQUERY ( (k+= ENCODING enc= p_StringLiteral ) | (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? ) ) SEMICOLON -> ^( VersionDecl ^( VersionDeclVersion ( $ver)? ) ^( VersionDeclEncoding ( $enc)? ) ) ;
+ // $ANTLR start "p_VersionDecl"
+ p_VersionDecl: function() {
+ var retval = new XQueryParser.p_VersionDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON2 = null;
+ var k = null;
+ var list_k=null;
+ var enc = null;
+ var ver = null;
+
+ var SEMICOLON2_tree=null;
+ var k_tree=null;
+ var stream_ENCODING=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token ENCODING");
+ var stream_VERSION=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token VERSION");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_XQUERY=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token XQUERY");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:129:9: (k+= XQUERY ( (k+= ENCODING enc= p_StringLiteral ) | (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? ) ) SEMICOLON -> ^( VersionDecl ^( VersionDeclVersion ( $ver)? ) ^( VersionDeclEncoding ( $enc)? ) ) )
+ // XQueryParser.g:129:11: k+= XQUERY ( (k+= ENCODING enc= p_StringLiteral ) | (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? ) ) SEMICOLON
+ k=this.match(this.input,XQUERY,XQueryParser.FOLLOW_XQUERY_in_p_VersionDecl641); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_XQUERY.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:129:21: ( (k+= ENCODING enc= p_StringLiteral ) | (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? ) )
+ var alt4=2;
+ var LA4_0 = this.input.LA(1);
+
+ if ( (LA4_0==ENCODING) ) {
+ alt4=1;
+ }
+ else if ( (LA4_0==VERSION) ) {
+ alt4=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 4, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt4) {
+ case 1 :
+ // XQueryParser.g:129:22: (k+= ENCODING enc= p_StringLiteral )
+ // XQueryParser.g:129:22: (k+= ENCODING enc= p_StringLiteral )
+ // XQueryParser.g:129:23: k+= ENCODING enc= p_StringLiteral
+ k=this.match(this.input,ENCODING,XQueryParser.FOLLOW_ENCODING_in_p_VersionDecl647); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ENCODING.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_VersionDecl651);
+ enc=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(enc.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:130:13: (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? )
+ // XQueryParser.g:130:13: (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? )
+ // XQueryParser.g:130:14: k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )?
+ k=this.match(this.input,VERSION,XQueryParser.FOLLOW_VERSION_in_p_VersionDecl672); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_VERSION.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_VersionDecl676);
+ ver=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(ver.getTree());
+ // XQueryParser.g:130:46: (k+= ENCODING enc= p_StringLiteral )?
+ var alt3=2;
+ var LA3_0 = this.input.LA(1);
+
+ if ( (LA3_0==ENCODING) ) {
+ alt3=1;
+ }
+ switch (alt3) {
+ case 1 :
+ // XQueryParser.g:130:47: k+= ENCODING enc= p_StringLiteral
+ k=this.match(this.input,ENCODING,XQueryParser.FOLLOW_ENCODING_in_p_VersionDecl682); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ENCODING.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_VersionDecl686);
+ enc=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(enc.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+
+
+ break;
+
+ }
+
+ SEMICOLON2=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_VersionDecl692); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON2);
+
+
+
+ // AST REWRITE
+ // elements: enc, ver
+ // token labels:
+ // rule labels: retval, ver, enc
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_ver=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token ver",ver!=null?ver.tree:null);
+ var stream_enc=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token enc",enc!=null?enc.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 131:17: -> ^( VersionDecl ^( VersionDeclVersion ( $ver)? ) ^( VersionDeclEncoding ( $enc)? ) )
+ {
+ // XQueryParser.g:131:20: ^( VersionDecl ^( VersionDeclVersion ( $ver)? ) ^( VersionDeclEncoding ( $enc)? ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(VersionDecl, "VersionDecl"), root_1);
+
+ // XQueryParser.g:131:34: ^( VersionDeclVersion ( $ver)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(VersionDeclVersion, "VersionDeclVersion"), root_2);
+
+ // XQueryParser.g:131:55: ( $ver)?
+ if ( stream_ver.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_ver.nextTree());
+
+ }
+ stream_ver.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:131:62: ^( VersionDeclEncoding ( $enc)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(VersionDeclEncoding, "VersionDeclEncoding"), root_2);
+
+ // XQueryParser.g:131:84: ( $enc)?
+ if ( stream_enc.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_enc.nextTree());
+
+ }
+ stream_enc.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_MainModule_return: (function() {
+ XQueryParser.p_MainModule_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_MainModule_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:135:1: p_MainModule[vd] : pm_Prolog p_QueryBody -> ^( MainModule pm_Prolog p_QueryBody ) ;
+ // $ANTLR start "p_MainModule"
+ p_MainModule: function(vd) {
+ var retval = new XQueryParser.p_MainModule_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_Prolog3 = null;
+ var p_QueryBody4 = null;
+
+ var stream_p_QueryBody=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QueryBody");
+ var stream_pm_Prolog=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_Prolog");
+ try {
+ // XQueryParser.g:136:9: ( pm_Prolog p_QueryBody -> ^( MainModule pm_Prolog p_QueryBody ) )
+ // XQueryParser.g:136:11: pm_Prolog p_QueryBody
+ this.pushFollow(XQueryParser.FOLLOW_pm_Prolog_in_p_MainModule758);
+ pm_Prolog3=this.pm_Prolog();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_Prolog.add(pm_Prolog3.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_QueryBody_in_p_MainModule760);
+ p_QueryBody4=this.p_QueryBody();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QueryBody.add(p_QueryBody4.getTree());
+
+
+ // AST REWRITE
+ // elements: pm_Prolog, p_QueryBody
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 137:17: -> ^( MainModule pm_Prolog p_QueryBody )
+ {
+ // XQueryParser.g:137:20: ^( MainModule pm_Prolog p_QueryBody )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(MainModule, "MainModule"), root_1);
+
+ this.adaptor.addChild(root_1, vd);
+ this.adaptor.addChild(root_1, stream_pm_Prolog.nextTree());
+ this.adaptor.addChild(root_1, stream_p_QueryBody.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_LibraryModule_return: (function() {
+ XQueryParser.p_LibraryModule_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_LibraryModule_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:141:1: p_LibraryModule[vd] : p_ModuleDecl pm_Prolog -> ^( LibraryModule p_ModuleDecl pm_Prolog ) ;
+ // $ANTLR start "p_LibraryModule"
+ p_LibraryModule: function(vd) {
+ var retval = new XQueryParser.p_LibraryModule_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ModuleDecl5 = null;
+ var pm_Prolog6 = null;
+
+ var stream_pm_Prolog=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_Prolog");
+ var stream_p_ModuleDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ModuleDecl");
+ try {
+ // XQueryParser.g:142:9: ( p_ModuleDecl pm_Prolog -> ^( LibraryModule p_ModuleDecl pm_Prolog ) )
+ // XQueryParser.g:142:11: p_ModuleDecl pm_Prolog
+ this.pushFollow(XQueryParser.FOLLOW_p_ModuleDecl_in_p_LibraryModule816);
+ p_ModuleDecl5=this.p_ModuleDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ModuleDecl.add(p_ModuleDecl5.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_pm_Prolog_in_p_LibraryModule818);
+ pm_Prolog6=this.pm_Prolog();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_Prolog.add(pm_Prolog6.getTree());
+
+
+ // AST REWRITE
+ // elements: p_ModuleDecl, pm_Prolog
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 143:17: -> ^( LibraryModule p_ModuleDecl pm_Prolog )
+ {
+ // XQueryParser.g:143:20: ^( LibraryModule p_ModuleDecl pm_Prolog )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(LibraryModule, "LibraryModule"), root_1);
+
+ this.adaptor.addChild(root_1, vd);
+ this.adaptor.addChild(root_1, stream_p_ModuleDecl.nextTree());
+ this.adaptor.addChild(root_1, stream_pm_Prolog.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ModuleDecl_return: (function() {
+ XQueryParser.p_ModuleDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ModuleDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:147:1: p_ModuleDecl : k+= MODULE k+= NAMESPACE p_NCName EQUAL p_StringLiteral SEMICOLON -> ^( ModuleDecl p_NCName p_StringLiteral ) ;
+ // $ANTLR start "p_ModuleDecl"
+ p_ModuleDecl: function() {
+ var retval = new XQueryParser.p_ModuleDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var EQUAL8 = null;
+ var SEMICOLON10 = null;
+ var k = null;
+ var list_k=null;
+ var p_NCName7 = null;
+ var p_StringLiteral9 = null;
+
+ var EQUAL8_tree=null;
+ var SEMICOLON10_tree=null;
+ var k_tree=null;
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_MODULE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token MODULE");
+ var stream_NAMESPACE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token NAMESPACE");
+ var stream_EQUAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EQUAL");
+ var stream_p_NCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_NCName");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:148:9: (k+= MODULE k+= NAMESPACE p_NCName EQUAL p_StringLiteral SEMICOLON -> ^( ModuleDecl p_NCName p_StringLiteral ) )
+ // XQueryParser.g:148:11: k+= MODULE k+= NAMESPACE p_NCName EQUAL p_StringLiteral SEMICOLON
+ k=this.match(this.input,MODULE,XQueryParser.FOLLOW_MODULE_in_p_ModuleDecl874); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_MODULE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_p_ModuleDecl878); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_NAMESPACE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_ModuleDecl880);
+ p_NCName7=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_NCName.add(p_NCName7.getTree());
+ EQUAL8=this.match(this.input,EQUAL,XQueryParser.FOLLOW_EQUAL_in_p_ModuleDecl882); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EQUAL.add(EQUAL8);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_ModuleDecl884);
+ p_StringLiteral9=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(p_StringLiteral9.getTree());
+ SEMICOLON10=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_ModuleDecl886); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON10);
+
+
+
+ // AST REWRITE
+ // elements: p_StringLiteral, p_NCName
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 149:17: -> ^( ModuleDecl p_NCName p_StringLiteral )
+ {
+ // XQueryParser.g:149:21: ^( ModuleDecl p_NCName p_StringLiteral )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(ModuleDecl, "ModuleDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_p_NCName.nextTree());
+ this.adaptor.addChild(root_1, stream_p_StringLiteral.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_Prolog_return: (function() {
+ XQueryParser.pm_Prolog_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_Prolog_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:155:1: pm_Prolog : ( (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import ) )* od= pg_OrderedDecl -> ^( Prolog ^( DefaultNamespaceDecls ( $dnd)* ) ^( Setters ( $s)* ) ^( NamespaceDecls ( $nd)* ) ^( Imports ( $i)* ) ^( OrderedDecls ( $od)* ) ) ;
+ // $ANTLR start "pm_Prolog"
+ pm_Prolog: function() {
+ var retval = new XQueryParser.pm_Prolog_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var list_dnd=null;
+ var list_s=null;
+ var list_nd=null;
+ var list_i=null;
+ var od = null;
+ var dnd = null;
+ var s = null;
+ var nd = null;
+ var i = null;
+ var stream_pm_NamespaceDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_NamespaceDecl");
+ var stream_p_Import=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_Import");
+ var stream_p_Setter=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_Setter");
+ var stream_pm_DefaultNamespaceDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_DefaultNamespaceDecl");
+ var stream_pg_OrderedDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pg_OrderedDecl");
+ try {
+ // XQueryParser.g:156:9: ( ( (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import ) )* od= pg_OrderedDecl -> ^( Prolog ^( DefaultNamespaceDecls ( $dnd)* ) ^( Setters ( $s)* ) ^( NamespaceDecls ( $nd)* ) ^( Imports ( $i)* ) ^( OrderedDecls ( $od)* ) ) )
+ // XQueryParser.g:156:11: ( (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import ) )* od= pg_OrderedDecl
+ // XQueryParser.g:156:11: ( (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import ) )*
+ loop6:
+ do {
+ var alt6=2;
+ alt6 = this.dfa6.predict(this.input);
+ switch (alt6) {
+ case 1 :
+ // XQueryParser.g:156:12: (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import )
+ // XQueryParser.g:156:12: (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import )
+ var alt5=4;
+ var LA5_0 = this.input.LA(1);
+
+ if ( (LA5_0==DECLARE) ) {
+ var LA5_1 = this.input.LA(2);
+
+ if ( (LA5_1==DEFAULT) ) {
+ var LA5_3 = this.input.LA(3);
+
+ if ( (LA5_3==COLLATION||LA5_3==ORDER) ) {
+ alt5=2;
+ }
+ else if ( (LA5_3==ELEMENT||LA5_3==FUNCTION) ) {
+ alt5=1;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 5, 3, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( ((LA5_1>=BASE_URI && LA5_1<=BOUNDARY_SPACE)||LA5_1==CONSTRUCTION||LA5_1==ORDERING) ) {
+ alt5=2;
+ }
+ else if ( (LA5_1==REVALIDATION) && ((true))) {
+ alt5=2;
+ }
+ else if ( (LA5_1==COPY_NAMESPACES) ) {
+ alt5=2;
+ }
+ else if ( (LA5_1==NAMESPACE) ) {
+ alt5=3;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 5, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA5_0==IMPORT) ) {
+ alt5=4;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 5, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt5) {
+ case 1 :
+ // XQueryParser.g:156:13: dnd+= pm_DefaultNamespaceDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_DefaultNamespaceDecl_in_pm_Prolog945);
+ dnd=this.pm_DefaultNamespaceDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_DefaultNamespaceDecl.add(dnd.getTree());
+ if (org.antlr.lang.isNull(list_dnd)) list_dnd = [];
+ list_dnd.push(dnd.getTree());
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:156:44: s+= p_Setter
+ this.pushFollow(XQueryParser.FOLLOW_p_Setter_in_pm_Prolog951);
+ s=this.p_Setter();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_Setter.add(s.getTree());
+ if (org.antlr.lang.isNull(list_s)) list_s = [];
+ list_s.push(s.getTree());
+
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:156:58: nd+= pm_NamespaceDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_NamespaceDecl_in_pm_Prolog957);
+ nd=this.pm_NamespaceDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_NamespaceDecl.add(nd.getTree());
+ if (org.antlr.lang.isNull(list_nd)) list_nd = [];
+ list_nd.push(nd.getTree());
+
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:156:81: i+= p_Import
+ this.pushFollow(XQueryParser.FOLLOW_p_Import_in_pm_Prolog963);
+ i=this.p_Import();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_Import.add(i.getTree());
+ if (org.antlr.lang.isNull(list_i)) list_i = [];
+ list_i.push(i.getTree());
+
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ default :
+ break loop6;
+ }
+ } while (true);
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_OrderedDecl_in_pm_Prolog970);
+ od=this.pg_OrderedDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pg_OrderedDecl.add(od.getTree());
+
+
+ // AST REWRITE
+ // elements: s, i, nd, od, dnd
+ // token labels:
+ // rule labels: retval, od
+ // token list labels:
+ // rule list labels: s, nd, dnd, i
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_od=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token od",od!=null?od.tree:null);
+ var stream_s=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token s",list_s);
+ var stream_nd=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token nd",list_nd);
+ var stream_dnd=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token dnd",list_dnd);
+ var stream_i=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token i",list_i);
+ root_0 = this.adaptor.nil();
+ // 157:17: -> ^( Prolog ^( DefaultNamespaceDecls ( $dnd)* ) ^( Setters ( $s)* ) ^( NamespaceDecls ( $nd)* ) ^( Imports ( $i)* ) ^( OrderedDecls ( $od)* ) )
+ {
+ // XQueryParser.g:157:21: ^( Prolog ^( DefaultNamespaceDecls ( $dnd)* ) ^( Setters ( $s)* ) ^( NamespaceDecls ( $nd)* ) ^( Imports ( $i)* ) ^( OrderedDecls ( $od)* ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(Prolog, "Prolog"), root_1);
+
+ // XQueryParser.g:158:33: ^( DefaultNamespaceDecls ( $dnd)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(DefaultNamespaceDecls, "DefaultNamespaceDecls"), root_2);
+
+ // XQueryParser.g:158:57: ( $dnd)*
+ while ( stream_dnd.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_dnd.nextTree());
+
+ }
+ stream_dnd.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:159:33: ^( Setters ( $s)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(Setters, "Setters"), root_2);
+
+ // XQueryParser.g:159:43: ( $s)*
+ while ( stream_s.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_s.nextTree());
+
+ }
+ stream_s.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:160:33: ^( NamespaceDecls ( $nd)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(NamespaceDecls, "NamespaceDecls"), root_2);
+
+ // XQueryParser.g:160:50: ( $nd)*
+ while ( stream_nd.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_nd.nextTree());
+
+ }
+ stream_nd.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:161:33: ^( Imports ( $i)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(Imports, "Imports"), root_2);
+
+ // XQueryParser.g:161:43: ( $i)*
+ while ( stream_i.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_i.nextTree());
+
+ }
+ stream_i.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:162:33: ^( OrderedDecls ( $od)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(OrderedDecls, "OrderedDecls"), root_2);
+
+ // XQueryParser.g:162:48: ( $od)*
+ while ( stream_od.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_od.nextTree());
+
+ }
+ stream_od.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_OrderedDecl_return: (function() {
+ XQueryParser.pg_OrderedDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_OrderedDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:170:1: pg_OrderedDecl : ( pm_VarDecl | pm_ContextItemDecl | pm_FunctionDecl | pm_OptionDecl | {...}? => p_CollectionDecl | {...}? => p_IndexDecl | {...}? => p_ICDecl )* ;
+ // $ANTLR start "pg_OrderedDecl"
+ pg_OrderedDecl: function() {
+ var retval = new XQueryParser.pg_OrderedDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_VarDecl11 = null;
+ var pm_ContextItemDecl12 = null;
+ var pm_FunctionDecl13 = null;
+ var pm_OptionDecl14 = null;
+ var p_CollectionDecl15 = null;
+ var p_IndexDecl16 = null;
+ var p_ICDecl17 = null;
+
+
+ try {
+ // XQueryParser.g:171:9: ( ( pm_VarDecl | pm_ContextItemDecl | pm_FunctionDecl | pm_OptionDecl | {...}? => p_CollectionDecl | {...}? => p_IndexDecl | {...}? => p_ICDecl )* )
+ // XQueryParser.g:171:11: ( pm_VarDecl | pm_ContextItemDecl | pm_FunctionDecl | pm_OptionDecl | {...}? => p_CollectionDecl | {...}? => p_IndexDecl | {...}? => p_ICDecl )*
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:171:11: ( pm_VarDecl | pm_ContextItemDecl | pm_FunctionDecl | pm_OptionDecl | {...}? => p_CollectionDecl | {...}? => p_IndexDecl | {...}? => p_ICDecl )*
+ loop7:
+ do {
+ var alt7=8;
+ alt7 = this.dfa7.predict(this.input);
+ switch (alt7) {
+ case 1 :
+ // XQueryParser.g:171:12: pm_VarDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_VarDecl_in_pg_OrderedDecl1248);
+ pm_VarDecl11=this.pm_VarDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_VarDecl11.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:171:25: pm_ContextItemDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_ContextItemDecl_in_pg_OrderedDecl1252);
+ pm_ContextItemDecl12=this.pm_ContextItemDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_ContextItemDecl12.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:171:46: pm_FunctionDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_FunctionDecl_in_pg_OrderedDecl1256);
+ pm_FunctionDecl13=this.pm_FunctionDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_FunctionDecl13.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:171:64: pm_OptionDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_OptionDecl_in_pg_OrderedDecl1260);
+ pm_OptionDecl14=this.pm_OptionDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_OptionDecl14.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:172:11: {...}? => p_CollectionDecl
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pg_OrderedDecl", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_CollectionDecl_in_pg_OrderedDecl1275);
+ p_CollectionDecl15=this.p_CollectionDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CollectionDecl15.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:173:11: {...}? => p_IndexDecl
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pg_OrderedDecl", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexDecl_in_pg_OrderedDecl1290);
+ p_IndexDecl16=this.p_IndexDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexDecl16.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:174:11: {...}? => p_ICDecl
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pg_OrderedDecl", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ICDecl_in_pg_OrderedDecl1305);
+ p_ICDecl17=this.p_ICDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICDecl17.getTree());
+
+
+ break;
+
+ default :
+ break loop7;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Setter_return: (function() {
+ XQueryParser.p_Setter_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Setter_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:179:1: p_Setter : ( pm_BoundarySpaceDecl | pm_DefaultCollationDecl | pm_BaseURIDecl | pm_ConstructionDecl | pm_OrderingModeDecl | pm_EmptyOrderDecl | {...}? => pm_RevalidationDecl | pm_CopyNamespacesDecl );
+ // $ANTLR start "p_Setter"
+ p_Setter: function() {
+ var retval = new XQueryParser.p_Setter_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_BoundarySpaceDecl18 = null;
+ var pm_DefaultCollationDecl19 = null;
+ var pm_BaseURIDecl20 = null;
+ var pm_ConstructionDecl21 = null;
+ var pm_OrderingModeDecl22 = null;
+ var pm_EmptyOrderDecl23 = null;
+ var pm_RevalidationDecl24 = null;
+ var pm_CopyNamespacesDecl25 = null;
+
+
+ try {
+ // XQueryParser.g:180:9: ( pm_BoundarySpaceDecl | pm_DefaultCollationDecl | pm_BaseURIDecl | pm_ConstructionDecl | pm_OrderingModeDecl | pm_EmptyOrderDecl | {...}? => pm_RevalidationDecl | pm_CopyNamespacesDecl )
+ var alt8=8;
+ alt8 = this.dfa8.predict(this.input);
+ switch (alt8) {
+ case 1 :
+ // XQueryParser.g:180:11: pm_BoundarySpaceDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_BoundarySpaceDecl_in_p_Setter1334);
+ pm_BoundarySpaceDecl18=this.pm_BoundarySpaceDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_BoundarySpaceDecl18.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:181:11: pm_DefaultCollationDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_DefaultCollationDecl_in_p_Setter1346);
+ pm_DefaultCollationDecl19=this.pm_DefaultCollationDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_DefaultCollationDecl19.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:182:11: pm_BaseURIDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_BaseURIDecl_in_p_Setter1358);
+ pm_BaseURIDecl20=this.pm_BaseURIDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_BaseURIDecl20.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:183:11: pm_ConstructionDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_ConstructionDecl_in_p_Setter1370);
+ pm_ConstructionDecl21=this.pm_ConstructionDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_ConstructionDecl21.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:184:11: pm_OrderingModeDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_OrderingModeDecl_in_p_Setter1382);
+ pm_OrderingModeDecl22=this.pm_OrderingModeDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_OrderingModeDecl22.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:185:11: pm_EmptyOrderDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_EmptyOrderDecl_in_p_Setter1394);
+ pm_EmptyOrderDecl23=this.pm_EmptyOrderDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_EmptyOrderDecl23.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:186:11: {...}? => pm_RevalidationDecl
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_Setter", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_RevalidationDecl_in_p_Setter1409);
+ pm_RevalidationDecl24=this.pm_RevalidationDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_RevalidationDecl24.getTree());
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:187:11: pm_CopyNamespacesDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_CopyNamespacesDecl_in_p_Setter1421);
+ pm_CopyNamespacesDecl25=this.pm_CopyNamespacesDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_CopyNamespacesDecl25.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Import_return: (function() {
+ XQueryParser.p_Import_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Import_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:191:1: p_Import : ( pm_SchemaImport | pm_ModuleImport );
+ // $ANTLR start "p_Import"
+ p_Import: function() {
+ var retval = new XQueryParser.p_Import_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_SchemaImport26 = null;
+ var pm_ModuleImport27 = null;
+
+
+ try {
+ // XQueryParser.g:192:9: ( pm_SchemaImport | pm_ModuleImport )
+ var alt9=2;
+ var LA9_0 = this.input.LA(1);
+
+ if ( (LA9_0==IMPORT) ) {
+ var LA9_1 = this.input.LA(2);
+
+ if ( (LA9_1==SCHEMA) ) {
+ alt9=1;
+ }
+ else if ( (LA9_1==MODULE) ) {
+ alt9=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 9, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 9, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt9) {
+ case 1 :
+ // XQueryParser.g:192:11: pm_SchemaImport
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_SchemaImport_in_p_Import1447);
+ pm_SchemaImport26=this.pm_SchemaImport();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_SchemaImport26.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:192:29: pm_ModuleImport
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_ModuleImport_in_p_Import1451);
+ pm_ModuleImport27=this.pm_ModuleImport();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_ModuleImport27.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_NamespaceDecl_return: (function() {
+ XQueryParser.pm_NamespaceDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_NamespaceDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:199:1: pm_NamespaceDecl : k+= DECLARE k+= NAMESPACE nn= p_NCName EQUAL us= p_StringLiteral SEMICOLON -> ^( NamespaceDecl $nn $us) ;
+ // $ANTLR start "pm_NamespaceDecl"
+ pm_NamespaceDecl: function() {
+ var retval = new XQueryParser.pm_NamespaceDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var EQUAL28 = null;
+ var SEMICOLON29 = null;
+ var k = null;
+ var list_k=null;
+ var nn = null;
+ var us = null;
+
+ var EQUAL28_tree=null;
+ var SEMICOLON29_tree=null;
+ var k_tree=null;
+ var stream_DECLARE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DECLARE");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_NAMESPACE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token NAMESPACE");
+ var stream_EQUAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EQUAL");
+ var stream_p_NCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_NCName");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:200:9: (k+= DECLARE k+= NAMESPACE nn= p_NCName EQUAL us= p_StringLiteral SEMICOLON -> ^( NamespaceDecl $nn $us) )
+ // XQueryParser.g:200:11: k+= DECLARE k+= NAMESPACE nn= p_NCName EQUAL us= p_StringLiteral SEMICOLON
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_NamespaceDecl1482); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_pm_NamespaceDecl1486); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_NAMESPACE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_pm_NamespaceDecl1490);
+ nn=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_NCName.add(nn.getTree());
+ EQUAL28=this.match(this.input,EQUAL,XQueryParser.FOLLOW_EQUAL_in_pm_NamespaceDecl1492); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EQUAL.add(EQUAL28);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_NamespaceDecl1496);
+ us=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(us.getTree());
+ SEMICOLON29=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_NamespaceDecl1498); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON29);
+
+
+
+ // AST REWRITE
+ // elements: us, nn
+ // token labels:
+ // rule labels: retval, nn, us
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_nn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token nn",nn!=null?nn.tree:null);
+ var stream_us=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token us",us!=null?us.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 201:17: -> ^( NamespaceDecl $nn $us)
+ {
+ // XQueryParser.g:201:20: ^( NamespaceDecl $nn $us)
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(NamespaceDecl, "NamespaceDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_nn.nextTree());
+ this.adaptor.addChild(root_1, stream_us.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_BoundarySpaceDecl_return: (function() {
+ XQueryParser.pm_BoundarySpaceDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_BoundarySpaceDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:205:1: pm_BoundarySpaceDecl : k+= DECLARE k+= BOUNDARY_SPACE (k+= PRESERVE | k+= STRIP ) SEMICOLON ;
+ // $ANTLR start "pm_BoundarySpaceDecl"
+ pm_BoundarySpaceDecl: function() {
+ var retval = new XQueryParser.pm_BoundarySpaceDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON30 = null;
+ var k = null;
+ var list_k=null;
+
+ var SEMICOLON30_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:206:9: (k+= DECLARE k+= BOUNDARY_SPACE (k+= PRESERVE | k+= STRIP ) SEMICOLON )
+ // XQueryParser.g:206:13: k+= DECLARE k+= BOUNDARY_SPACE (k+= PRESERVE | k+= STRIP ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_BoundarySpaceDecl1561); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,BOUNDARY_SPACE,XQueryParser.FOLLOW_BOUNDARY_SPACE_in_pm_BoundarySpaceDecl1565); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:206:42: (k+= PRESERVE | k+= STRIP )
+ var alt10=2;
+ var LA10_0 = this.input.LA(1);
+
+ if ( (LA10_0==PRESERVE) ) {
+ alt10=1;
+ }
+ else if ( (LA10_0==STRIP) ) {
+ alt10=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 10, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt10) {
+ case 1 :
+ // XQueryParser.g:206:43: k+= PRESERVE
+ k=this.match(this.input,PRESERVE,XQueryParser.FOLLOW_PRESERVE_in_pm_BoundarySpaceDecl1570); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:206:57: k+= STRIP
+ k=this.match(this.input,STRIP,XQueryParser.FOLLOW_STRIP_in_pm_BoundarySpaceDecl1576); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON30=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_BoundarySpaceDecl1579); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON30_tree = this.adaptor.create(SEMICOLON30);
+ this.adaptor.addChild(root_0, SEMICOLON30_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_DefaultNamespaceDecl_return: (function() {
+ XQueryParser.pm_DefaultNamespaceDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_DefaultNamespaceDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:210:1: pm_DefaultNamespaceDecl : k+= DECLARE k+= DEFAULT (k+= ELEMENT | k+= FUNCTION ) k+= NAMESPACE p_StringLiteral SEMICOLON ;
+ // $ANTLR start "pm_DefaultNamespaceDecl"
+ pm_DefaultNamespaceDecl: function() {
+ var retval = new XQueryParser.pm_DefaultNamespaceDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON32 = null;
+ var k = null;
+ var list_k=null;
+ var p_StringLiteral31 = null;
+
+ var SEMICOLON32_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:211:9: (k+= DECLARE k+= DEFAULT (k+= ELEMENT | k+= FUNCTION ) k+= NAMESPACE p_StringLiteral SEMICOLON )
+ // XQueryParser.g:211:11: k+= DECLARE k+= DEFAULT (k+= ELEMENT | k+= FUNCTION ) k+= NAMESPACE p_StringLiteral SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_DefaultNamespaceDecl1607); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_pm_DefaultNamespaceDecl1611); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:211:33: (k+= ELEMENT | k+= FUNCTION )
+ var alt11=2;
+ var LA11_0 = this.input.LA(1);
+
+ if ( (LA11_0==ELEMENT) ) {
+ alt11=1;
+ }
+ else if ( (LA11_0==FUNCTION) ) {
+ alt11=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 11, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt11) {
+ case 1 :
+ // XQueryParser.g:211:34: k+= ELEMENT
+ k=this.match(this.input,ELEMENT,XQueryParser.FOLLOW_ELEMENT_in_pm_DefaultNamespaceDecl1616); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:211:47: k+= FUNCTION
+ k=this.match(this.input,FUNCTION,XQueryParser.FOLLOW_FUNCTION_in_pm_DefaultNamespaceDecl1622); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_pm_DefaultNamespaceDecl1627); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_DefaultNamespaceDecl1629);
+ p_StringLiteral31=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral31.getTree());
+ SEMICOLON32=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_DefaultNamespaceDecl1631); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON32_tree = this.adaptor.create(SEMICOLON32);
+ this.adaptor.addChild(root_0, SEMICOLON32_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_OptionDecl_return: (function() {
+ XQueryParser.pm_OptionDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_OptionDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:215:1: pm_OptionDecl : k+= DECLARE k+= OPTION p_QName p_StringLiteral SEMICOLON ;
+ // $ANTLR start "pm_OptionDecl"
+ pm_OptionDecl: function() {
+ var retval = new XQueryParser.pm_OptionDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON35 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName33 = null;
+ var p_StringLiteral34 = null;
+
+ var SEMICOLON35_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:216:9: (k+= DECLARE k+= OPTION p_QName p_StringLiteral SEMICOLON )
+ // XQueryParser.g:216:13: k+= DECLARE k+= OPTION p_QName p_StringLiteral SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_OptionDecl1662); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,OPTION,XQueryParser.FOLLOW_OPTION_in_pm_OptionDecl1666); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_pm_OptionDecl1668);
+ p_QName33=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName33.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_OptionDecl1670);
+ p_StringLiteral34=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral34.getTree());
+ SEMICOLON35=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_OptionDecl1672); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON35_tree = this.adaptor.create(SEMICOLON35);
+ this.adaptor.addChild(root_0, SEMICOLON35_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_OrderingModeDecl_return: (function() {
+ XQueryParser.pm_OrderingModeDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_OrderingModeDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:220:1: pm_OrderingModeDecl : k+= DECLARE k+= ORDERING (k+= ORDERED | k+= UNORDERED ) SEMICOLON ;
+ // $ANTLR start "pm_OrderingModeDecl"
+ pm_OrderingModeDecl: function() {
+ var retval = new XQueryParser.pm_OrderingModeDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON36 = null;
+ var k = null;
+ var list_k=null;
+
+ var SEMICOLON36_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:221:9: (k+= DECLARE k+= ORDERING (k+= ORDERED | k+= UNORDERED ) SEMICOLON )
+ // XQueryParser.g:221:13: k+= DECLARE k+= ORDERING (k+= ORDERED | k+= UNORDERED ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_OrderingModeDecl1703); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,ORDERING,XQueryParser.FOLLOW_ORDERING_in_pm_OrderingModeDecl1707); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:221:36: (k+= ORDERED | k+= UNORDERED )
+ var alt12=2;
+ var LA12_0 = this.input.LA(1);
+
+ if ( (LA12_0==ORDERED) ) {
+ alt12=1;
+ }
+ else if ( (LA12_0==UNORDERED) ) {
+ alt12=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 12, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt12) {
+ case 1 :
+ // XQueryParser.g:221:37: k+= ORDERED
+ k=this.match(this.input,ORDERED,XQueryParser.FOLLOW_ORDERED_in_pm_OrderingModeDecl1712); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:221:50: k+= UNORDERED
+ k=this.match(this.input,UNORDERED,XQueryParser.FOLLOW_UNORDERED_in_pm_OrderingModeDecl1718); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON36=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_OrderingModeDecl1721); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON36_tree = this.adaptor.create(SEMICOLON36);
+ this.adaptor.addChild(root_0, SEMICOLON36_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_EmptyOrderDecl_return: (function() {
+ XQueryParser.pm_EmptyOrderDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_EmptyOrderDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:225:1: pm_EmptyOrderDecl : k+= DECLARE k+= DEFAULT k+= ORDER k+= EMPTY (k+= GREATEST | k+= LEAST ) SEMICOLON ;
+ // $ANTLR start "pm_EmptyOrderDecl"
+ pm_EmptyOrderDecl: function() {
+ var retval = new XQueryParser.pm_EmptyOrderDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON37 = null;
+ var k = null;
+ var list_k=null;
+
+ var SEMICOLON37_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:226:9: (k+= DECLARE k+= DEFAULT k+= ORDER k+= EMPTY (k+= GREATEST | k+= LEAST ) SEMICOLON )
+ // XQueryParser.g:226:13: k+= DECLARE k+= DEFAULT k+= ORDER k+= EMPTY (k+= GREATEST | k+= LEAST ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_EmptyOrderDecl1752); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_pm_EmptyOrderDecl1756); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,ORDER,XQueryParser.FOLLOW_ORDER_in_pm_EmptyOrderDecl1760); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,EMPTY,XQueryParser.FOLLOW_EMPTY_in_pm_EmptyOrderDecl1764); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:226:53: (k+= GREATEST | k+= LEAST )
+ var alt13=2;
+ var LA13_0 = this.input.LA(1);
+
+ if ( (LA13_0==GREATEST) ) {
+ alt13=1;
+ }
+ else if ( (LA13_0==LEAST) ) {
+ alt13=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 13, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt13) {
+ case 1 :
+ // XQueryParser.g:226:54: k+= GREATEST
+ k=this.match(this.input,GREATEST,XQueryParser.FOLLOW_GREATEST_in_pm_EmptyOrderDecl1769); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:226:68: k+= LEAST
+ k=this.match(this.input,LEAST,XQueryParser.FOLLOW_LEAST_in_pm_EmptyOrderDecl1775); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON37=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_EmptyOrderDecl1778); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON37_tree = this.adaptor.create(SEMICOLON37);
+ this.adaptor.addChild(root_0, SEMICOLON37_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_CopyNamespacesDecl_return: (function() {
+ XQueryParser.pm_CopyNamespacesDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_CopyNamespacesDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:230:1: pm_CopyNamespacesDecl : k+= DECLARE k+= COPY_NAMESPACES p_PreserveMode COMMA p_InheritMode SEMICOLON ;
+ // $ANTLR start "pm_CopyNamespacesDecl"
+ pm_CopyNamespacesDecl: function() {
+ var retval = new XQueryParser.pm_CopyNamespacesDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA39 = null;
+ var SEMICOLON41 = null;
+ var k = null;
+ var list_k=null;
+ var p_PreserveMode38 = null;
+ var p_InheritMode40 = null;
+
+ var COMMA39_tree=null;
+ var SEMICOLON41_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:231:9: (k+= DECLARE k+= COPY_NAMESPACES p_PreserveMode COMMA p_InheritMode SEMICOLON )
+ // XQueryParser.g:231:13: k+= DECLARE k+= COPY_NAMESPACES p_PreserveMode COMMA p_InheritMode SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_CopyNamespacesDecl1809); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,COPY_NAMESPACES,XQueryParser.FOLLOW_COPY_NAMESPACES_in_pm_CopyNamespacesDecl1813); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PreserveMode_in_pm_CopyNamespacesDecl1815);
+ p_PreserveMode38=this.p_PreserveMode();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PreserveMode38.getTree());
+ COMMA39=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_pm_CopyNamespacesDecl1817); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA39_tree = this.adaptor.create(COMMA39);
+ this.adaptor.addChild(root_0, COMMA39_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_InheritMode_in_pm_CopyNamespacesDecl1819);
+ p_InheritMode40=this.p_InheritMode();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InheritMode40.getTree());
+ SEMICOLON41=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_CopyNamespacesDecl1821); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON41_tree = this.adaptor.create(SEMICOLON41);
+ this.adaptor.addChild(root_0, SEMICOLON41_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DecimalFormatDecl_return: (function() {
+ XQueryParser.p_DecimalFormatDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DecimalFormatDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:235:1: p_DecimalFormatDecl : k+= DECLARE ( ( DECIMAL_FORMAT p_QName ) | ( DEFAULT DECIMAL_FORMAT ) ) ( p_DFPropertyName ) EQ p_StringLiteral SEMICOLON ;
+ // $ANTLR start "p_DecimalFormatDecl"
+ p_DecimalFormatDecl: function() {
+ var retval = new XQueryParser.p_DecimalFormatDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DECIMAL_FORMAT42 = null;
+ var DEFAULT44 = null;
+ var DECIMAL_FORMAT45 = null;
+ var EQ47 = null;
+ var SEMICOLON49 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName43 = null;
+ var p_DFPropertyName46 = null;
+ var p_StringLiteral48 = null;
+
+ var DECIMAL_FORMAT42_tree=null;
+ var DEFAULT44_tree=null;
+ var DECIMAL_FORMAT45_tree=null;
+ var EQ47_tree=null;
+ var SEMICOLON49_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:236:9: (k+= DECLARE ( ( DECIMAL_FORMAT p_QName ) | ( DEFAULT DECIMAL_FORMAT ) ) ( p_DFPropertyName ) EQ p_StringLiteral SEMICOLON )
+ // XQueryParser.g:236:13: k+= DECLARE ( ( DECIMAL_FORMAT p_QName ) | ( DEFAULT DECIMAL_FORMAT ) ) ( p_DFPropertyName ) EQ p_StringLiteral SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_p_DecimalFormatDecl1852); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:236:24: ( ( DECIMAL_FORMAT p_QName ) | ( DEFAULT DECIMAL_FORMAT ) )
+ var alt14=2;
+ var LA14_0 = this.input.LA(1);
+
+ if ( (LA14_0==DECIMAL_FORMAT) ) {
+ alt14=1;
+ }
+ else if ( (LA14_0==DEFAULT) ) {
+ alt14=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 14, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt14) {
+ case 1 :
+ // XQueryParser.g:236:25: ( DECIMAL_FORMAT p_QName )
+ // XQueryParser.g:236:25: ( DECIMAL_FORMAT p_QName )
+ // XQueryParser.g:236:26: DECIMAL_FORMAT p_QName
+ DECIMAL_FORMAT42=this.match(this.input,DECIMAL_FORMAT,XQueryParser.FOLLOW_DECIMAL_FORMAT_in_p_DecimalFormatDecl1856); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DECIMAL_FORMAT42_tree = this.adaptor.create(DECIMAL_FORMAT42);
+ this.adaptor.addChild(root_0, DECIMAL_FORMAT42_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_DecimalFormatDecl1858);
+ p_QName43=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName43.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:236:52: ( DEFAULT DECIMAL_FORMAT )
+ // XQueryParser.g:236:52: ( DEFAULT DECIMAL_FORMAT )
+ // XQueryParser.g:236:53: DEFAULT DECIMAL_FORMAT
+ DEFAULT44=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_p_DecimalFormatDecl1864); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DEFAULT44_tree = this.adaptor.create(DEFAULT44);
+ this.adaptor.addChild(root_0, DEFAULT44_tree);
+ }
+ DECIMAL_FORMAT45=this.match(this.input,DECIMAL_FORMAT,XQueryParser.FOLLOW_DECIMAL_FORMAT_in_p_DecimalFormatDecl1866); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DECIMAL_FORMAT45_tree = this.adaptor.create(DECIMAL_FORMAT45);
+ this.adaptor.addChild(root_0, DECIMAL_FORMAT45_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:236:78: ( p_DFPropertyName )
+ // XQueryParser.g:236:79: p_DFPropertyName
+ this.pushFollow(XQueryParser.FOLLOW_p_DFPropertyName_in_p_DecimalFormatDecl1871);
+ p_DFPropertyName46=this.p_DFPropertyName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DFPropertyName46.getTree());
+
+
+
+ EQ47=this.match(this.input,EQ,XQueryParser.FOLLOW_EQ_in_p_DecimalFormatDecl1874); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ EQ47_tree = this.adaptor.create(EQ47);
+ this.adaptor.addChild(root_0, EQ47_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_DecimalFormatDecl1876);
+ p_StringLiteral48=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral48.getTree());
+ SEMICOLON49=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_DecimalFormatDecl1878); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON49_tree = this.adaptor.create(SEMICOLON49);
+ this.adaptor.addChild(root_0, SEMICOLON49_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DFPropertyName_return: (function() {
+ XQueryParser.p_DFPropertyName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DFPropertyName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:240:1: p_DFPropertyName : (k= DECIMAL_SEPARATOR | k= GROUPING_SEPARATOR | k= INFINITY | k= MINUS_SIGN | k= NAN | k= PERCENT | k= PER_MILLE | k= ZERO_DIGIT | k= DIGIT | k= PATTERN_SEPARATOR );
+ // $ANTLR start "p_DFPropertyName"
+ p_DFPropertyName: function() {
+ var retval = new XQueryParser.p_DFPropertyName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:241:9: (k= DECIMAL_SEPARATOR | k= GROUPING_SEPARATOR | k= INFINITY | k= MINUS_SIGN | k= NAN | k= PERCENT | k= PER_MILLE | k= ZERO_DIGIT | k= DIGIT | k= PATTERN_SEPARATOR )
+ var alt15=10;
+ switch ( this.input.LA(1) ) {
+ case DECIMAL_SEPARATOR:
+ alt15=1;
+ break;
+ case GROUPING_SEPARATOR:
+ alt15=2;
+ break;
+ case INFINITY:
+ alt15=3;
+ break;
+ case MINUS_SIGN:
+ alt15=4;
+ break;
+ case NAN:
+ alt15=5;
+ break;
+ case PERCENT:
+ alt15=6;
+ break;
+ case PER_MILLE:
+ alt15=7;
+ break;
+ case ZERO_DIGIT:
+ alt15=8;
+ break;
+ case DIGIT:
+ alt15=9;
+ break;
+ case PATTERN_SEPARATOR:
+ alt15=10;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 15, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt15) {
+ case 1 :
+ // XQueryParser.g:241:11: k= DECIMAL_SEPARATOR
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECIMAL_SEPARATOR,XQueryParser.FOLLOW_DECIMAL_SEPARATOR_in_p_DFPropertyName1907); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:241:33: k= GROUPING_SEPARATOR
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,GROUPING_SEPARATOR,XQueryParser.FOLLOW_GROUPING_SEPARATOR_in_p_DFPropertyName1913); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:241:56: k= INFINITY
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,INFINITY,XQueryParser.FOLLOW_INFINITY_in_p_DFPropertyName1919); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:241:69: k= MINUS_SIGN
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,MINUS_SIGN,XQueryParser.FOLLOW_MINUS_SIGN_in_p_DFPropertyName1925); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:241:84: k= NAN
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,NAN,XQueryParser.FOLLOW_NAN_in_p_DFPropertyName1931); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:241:92: k= PERCENT
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,PERCENT,XQueryParser.FOLLOW_PERCENT_in_p_DFPropertyName1937); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:241:104: k= PER_MILLE
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,PER_MILLE,XQueryParser.FOLLOW_PER_MILLE_in_p_DFPropertyName1943); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:241:118: k= ZERO_DIGIT
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,ZERO_DIGIT,XQueryParser.FOLLOW_ZERO_DIGIT_in_p_DFPropertyName1949); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 9 :
+ // XQueryParser.g:241:133: k= DIGIT
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DIGIT,XQueryParser.FOLLOW_DIGIT_in_p_DFPropertyName1955); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 10 :
+ // XQueryParser.g:241:143: k= PATTERN_SEPARATOR
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,PATTERN_SEPARATOR,XQueryParser.FOLLOW_PATTERN_SEPARATOR_in_p_DFPropertyName1961); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PreserveMode_return: (function() {
+ XQueryParser.p_PreserveMode_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PreserveMode_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:245:1: p_PreserveMode : (k+= PRESERVE | k+= NO_PRESERVE ) ;
+ // $ANTLR start "p_PreserveMode"
+ p_PreserveMode: function() {
+ var retval = new XQueryParser.p_PreserveMode_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:246:9: ( (k+= PRESERVE | k+= NO_PRESERVE ) )
+ // XQueryParser.g:246:13: (k+= PRESERVE | k+= NO_PRESERVE )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:246:13: (k+= PRESERVE | k+= NO_PRESERVE )
+ var alt16=2;
+ var LA16_0 = this.input.LA(1);
+
+ if ( (LA16_0==PRESERVE) ) {
+ alt16=1;
+ }
+ else if ( (LA16_0==NO_PRESERVE) ) {
+ alt16=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 16, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt16) {
+ case 1 :
+ // XQueryParser.g:246:14: k+= PRESERVE
+ k=this.match(this.input,PRESERVE,XQueryParser.FOLLOW_PRESERVE_in_p_PreserveMode1993); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:246:28: k+= NO_PRESERVE
+ k=this.match(this.input,NO_PRESERVE,XQueryParser.FOLLOW_NO_PRESERVE_in_p_PreserveMode1999); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_InheritMode_return: (function() {
+ XQueryParser.p_InheritMode_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_InheritMode_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:250:1: p_InheritMode : (k+= INHERIT | k+= NO_INHERIT ) ;
+ // $ANTLR start "p_InheritMode"
+ p_InheritMode: function() {
+ var retval = new XQueryParser.p_InheritMode_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:251:9: ( (k+= INHERIT | k+= NO_INHERIT ) )
+ // XQueryParser.g:251:13: (k+= INHERIT | k+= NO_INHERIT )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:251:13: (k+= INHERIT | k+= NO_INHERIT )
+ var alt17=2;
+ var LA17_0 = this.input.LA(1);
+
+ if ( (LA17_0==INHERIT) ) {
+ alt17=1;
+ }
+ else if ( (LA17_0==NO_INHERIT) ) {
+ alt17=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 17, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt17) {
+ case 1 :
+ // XQueryParser.g:251:14: k+= INHERIT
+ k=this.match(this.input,INHERIT,XQueryParser.FOLLOW_INHERIT_in_p_InheritMode2032); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:251:27: k+= NO_INHERIT
+ k=this.match(this.input,NO_INHERIT,XQueryParser.FOLLOW_NO_INHERIT_in_p_InheritMode2038); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_DefaultCollationDecl_return: (function() {
+ XQueryParser.pm_DefaultCollationDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_DefaultCollationDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:255:1: pm_DefaultCollationDecl : k+= DECLARE k+= DEFAULT k+= COLLATION p_StringLiteral SEMICOLON ;
+ // $ANTLR start "pm_DefaultCollationDecl"
+ pm_DefaultCollationDecl: function() {
+ var retval = new XQueryParser.pm_DefaultCollationDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON51 = null;
+ var k = null;
+ var list_k=null;
+ var p_StringLiteral50 = null;
+
+ var SEMICOLON51_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:256:9: (k+= DECLARE k+= DEFAULT k+= COLLATION p_StringLiteral SEMICOLON )
+ // XQueryParser.g:256:13: k+= DECLARE k+= DEFAULT k+= COLLATION p_StringLiteral SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_DefaultCollationDecl2078); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_pm_DefaultCollationDecl2082); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,COLLATION,XQueryParser.FOLLOW_COLLATION_in_pm_DefaultCollationDecl2086); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_DefaultCollationDecl2088);
+ p_StringLiteral50=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral50.getTree());
+ SEMICOLON51=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_DefaultCollationDecl2090); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON51_tree = this.adaptor.create(SEMICOLON51);
+ this.adaptor.addChild(root_0, SEMICOLON51_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_BaseURIDecl_return: (function() {
+ XQueryParser.pm_BaseURIDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_BaseURIDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:260:1: pm_BaseURIDecl : k+= DECLARE k+= BASE_URI sl= p_StringLiteral SEMICOLON -> ^( BaseURIDecl $sl) ;
+ // $ANTLR start "pm_BaseURIDecl"
+ pm_BaseURIDecl: function() {
+ var retval = new XQueryParser.pm_BaseURIDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON52 = null;
+ var k = null;
+ var list_k=null;
+ var sl = null;
+
+ var SEMICOLON52_tree=null;
+ var k_tree=null;
+ var stream_DECLARE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DECLARE");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_BASE_URI=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token BASE_URI");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:261:9: (k+= DECLARE k+= BASE_URI sl= p_StringLiteral SEMICOLON -> ^( BaseURIDecl $sl) )
+ // XQueryParser.g:261:13: k+= DECLARE k+= BASE_URI sl= p_StringLiteral SEMICOLON
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_BaseURIDecl2129); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,BASE_URI,XQueryParser.FOLLOW_BASE_URI_in_pm_BaseURIDecl2133); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BASE_URI.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_BaseURIDecl2137);
+ sl=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(sl.getTree());
+ SEMICOLON52=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_BaseURIDecl2139); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON52);
+
+
+
+ // AST REWRITE
+ // elements: sl
+ // token labels:
+ // rule labels: sl, retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_sl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token sl",sl!=null?sl.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 262:17: -> ^( BaseURIDecl $sl)
+ {
+ // XQueryParser.g:262:20: ^( BaseURIDecl $sl)
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(BaseURIDecl, "BaseURIDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_sl.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_SchemaImport_return: (function() {
+ XQueryParser.pm_SchemaImport_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_SchemaImport_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:266:1: pm_SchemaImport : k+= IMPORT k+= SCHEMA (sp= p_SchemaPrefix )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON -> ^( SchemaImport ^( SchemaPrefix ( $sp)? ) $us ^( AtHints ( $ah)* ) ) ;
+ // $ANTLR start "pm_SchemaImport"
+ pm_SchemaImport: function() {
+ var retval = new XQueryParser.pm_SchemaImport_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA53 = null;
+ var SEMICOLON54 = null;
+ var k = null;
+ var list_k=null;
+ var list_ah=null;
+ var sp = null;
+ var us = null;
+ var ah = null;
+ var COMMA53_tree=null;
+ var SEMICOLON54_tree=null;
+ var k_tree=null;
+ var stream_AT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token AT");
+ var stream_IMPORT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token IMPORT");
+ var stream_SCHEMA=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SCHEMA");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_COMMA=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token COMMA");
+ var stream_p_SchemaPrefix=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_SchemaPrefix");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:267:9: (k+= IMPORT k+= SCHEMA (sp= p_SchemaPrefix )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON -> ^( SchemaImport ^( SchemaPrefix ( $sp)? ) $us ^( AtHints ( $ah)* ) ) )
+ // XQueryParser.g:267:11: k+= IMPORT k+= SCHEMA (sp= p_SchemaPrefix )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON
+ k=this.match(this.input,IMPORT,XQueryParser.FOLLOW_IMPORT_in_pm_SchemaImport2193); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_IMPORT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,SCHEMA,XQueryParser.FOLLOW_SCHEMA_in_pm_SchemaImport2197); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SCHEMA.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:267:33: (sp= p_SchemaPrefix )?
+ var alt18=2;
+ var LA18_0 = this.input.LA(1);
+
+ if ( (LA18_0==DEFAULT||LA18_0==NAMESPACE) ) {
+ alt18=1;
+ }
+ switch (alt18) {
+ case 1 :
+ // XQueryParser.g:267:33: sp= p_SchemaPrefix
+ this.pushFollow(XQueryParser.FOLLOW_p_SchemaPrefix_in_pm_SchemaImport2201);
+ sp=this.p_SchemaPrefix();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_SchemaPrefix.add(sp.getTree());
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_SchemaImport2206);
+ us=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(us.getTree());
+ // XQueryParser.g:267:69: (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )?
+ var alt20=2;
+ var LA20_0 = this.input.LA(1);
+
+ if ( (LA20_0==AT) ) {
+ alt20=1;
+ }
+ switch (alt20) {
+ case 1 :
+ // XQueryParser.g:267:70: k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )*
+ k=this.match(this.input,AT,XQueryParser.FOLLOW_AT_in_pm_SchemaImport2211); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_AT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_SchemaImport2215);
+ ah=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(ah.getTree());
+ if (org.antlr.lang.isNull(list_ah)) list_ah = [];
+ list_ah.push(ah.getTree());
+
+ // XQueryParser.g:267:96: ( COMMA ah+= p_StringLiteral )*
+ loop19:
+ do {
+ var alt19=2;
+ var LA19_0 = this.input.LA(1);
+
+ if ( (LA19_0==COMMA) ) {
+ alt19=1;
+ }
+
+
+ switch (alt19) {
+ case 1 :
+ // XQueryParser.g:267:97: COMMA ah+= p_StringLiteral
+ COMMA53=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_pm_SchemaImport2218); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_COMMA.add(COMMA53);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_SchemaImport2222);
+ ah=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(ah.getTree());
+ if (org.antlr.lang.isNull(list_ah)) list_ah = [];
+ list_ah.push(ah.getTree());
+
+
+
+ break;
+
+ default :
+ break loop19;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON54=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_SchemaImport2228); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON54);
+
+
+
+ // AST REWRITE
+ // elements: ah, sp, us
+ // token labels:
+ // rule labels: retval, sp, us
+ // token list labels:
+ // rule list labels: ah
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_sp=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token sp",sp!=null?sp.tree:null);
+ var stream_us=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token us",us!=null?us.tree:null);
+ var stream_ah=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token ah",list_ah);
+ root_0 = this.adaptor.nil();
+ // 268:17: -> ^( SchemaImport ^( SchemaPrefix ( $sp)? ) $us ^( AtHints ( $ah)* ) )
+ {
+ // XQueryParser.g:268:20: ^( SchemaImport ^( SchemaPrefix ( $sp)? ) $us ^( AtHints ( $ah)* ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(SchemaImport, "SchemaImport"), root_1);
+
+ // XQueryParser.g:268:35: ^( SchemaPrefix ( $sp)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(SchemaPrefix, "SchemaPrefix"), root_2);
+
+ // XQueryParser.g:268:50: ( $sp)?
+ if ( stream_sp.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_sp.nextTree());
+
+ }
+ stream_sp.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ this.adaptor.addChild(root_1, stream_us.nextTree());
+ // XQueryParser.g:268:60: ^( AtHints ( $ah)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(AtHints, "AtHints"), root_2);
+
+ // XQueryParser.g:268:70: ( $ah)*
+ while ( stream_ah.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_ah.nextTree());
+
+ }
+ stream_ah.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SchemaPrefix_return: (function() {
+ XQueryParser.p_SchemaPrefix_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SchemaPrefix_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:272:1: p_SchemaPrefix : (k+= NAMESPACE nn= p_NCName EQUAL -> ^( NamespaceName $nn) | k+= DEFAULT k+= ELEMENT k+= NAMESPACE -> DefaultElementNamespace );
+ // $ANTLR start "p_SchemaPrefix"
+ p_SchemaPrefix: function() {
+ var retval = new XQueryParser.p_SchemaPrefix_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var EQUAL55 = null;
+ var k = null;
+ var list_k=null;
+ var nn = null;
+
+ var EQUAL55_tree=null;
+ var k_tree=null;
+ var stream_ELEMENT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token ELEMENT");
+ var stream_NAMESPACE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token NAMESPACE");
+ var stream_EQUAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EQUAL");
+ var stream_DEFAULT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DEFAULT");
+ var stream_p_NCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_NCName");
+ try {
+ // XQueryParser.g:273:9: (k+= NAMESPACE nn= p_NCName EQUAL -> ^( NamespaceName $nn) | k+= DEFAULT k+= ELEMENT k+= NAMESPACE -> DefaultElementNamespace )
+ var alt21=2;
+ var LA21_0 = this.input.LA(1);
+
+ if ( (LA21_0==NAMESPACE) ) {
+ alt21=1;
+ }
+ else if ( (LA21_0==DEFAULT) ) {
+ alt21=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 21, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt21) {
+ case 1 :
+ // XQueryParser.g:273:11: k+= NAMESPACE nn= p_NCName EQUAL
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_p_SchemaPrefix2299); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_NAMESPACE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_SchemaPrefix2303);
+ nn=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_NCName.add(nn.getTree());
+ EQUAL55=this.match(this.input,EQUAL,XQueryParser.FOLLOW_EQUAL_in_p_SchemaPrefix2305); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EQUAL.add(EQUAL55);
+
+
+
+ // AST REWRITE
+ // elements: nn
+ // token labels:
+ // rule labels: retval, nn
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_nn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token nn",nn!=null?nn.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 274:17: -> ^( NamespaceName $nn)
+ {
+ // XQueryParser.g:274:20: ^( NamespaceName $nn)
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(NamespaceName, "NamespaceName"), root_1);
+
+ this.adaptor.addChild(root_1, stream_nn.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:275:11: k+= DEFAULT k+= ELEMENT k+= NAMESPACE
+ k=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_p_SchemaPrefix2345); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DEFAULT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,ELEMENT,XQueryParser.FOLLOW_ELEMENT_in_p_SchemaPrefix2349); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ELEMENT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_p_SchemaPrefix2353); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_NAMESPACE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ // AST REWRITE
+ // elements:
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 276:17: -> DefaultElementNamespace
+ {
+ this.adaptor.addChild(root_0, this.adaptor.create(DefaultElementNamespace, "DefaultElementNamespace"));
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_ModuleImport_return: (function() {
+ XQueryParser.pm_ModuleImport_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_ModuleImport_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:280:1: pm_ModuleImport : k+= IMPORT k+= MODULE (k+= NAMESPACE nn= p_NCName EQUAL )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON -> ^( ModuleImport ^( NamespaceName ( $nn)? ) $us ^( AtHints ( $ah)* ) ) ;
+ // $ANTLR start "pm_ModuleImport"
+ pm_ModuleImport: function() {
+ var retval = new XQueryParser.pm_ModuleImport_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var EQUAL56 = null;
+ var COMMA57 = null;
+ var SEMICOLON58 = null;
+ var k = null;
+ var list_k=null;
+ var list_ah=null;
+ var nn = null;
+ var us = null;
+ var ah = null;
+ var EQUAL56_tree=null;
+ var COMMA57_tree=null;
+ var SEMICOLON58_tree=null;
+ var k_tree=null;
+ var stream_AT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token AT");
+ var stream_IMPORT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token IMPORT");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_MODULE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token MODULE");
+ var stream_COMMA=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token COMMA");
+ var stream_NAMESPACE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token NAMESPACE");
+ var stream_EQUAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EQUAL");
+ var stream_p_NCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_NCName");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:281:9: (k+= IMPORT k+= MODULE (k+= NAMESPACE nn= p_NCName EQUAL )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON -> ^( ModuleImport ^( NamespaceName ( $nn)? ) $us ^( AtHints ( $ah)* ) ) )
+ // XQueryParser.g:281:11: k+= IMPORT k+= MODULE (k+= NAMESPACE nn= p_NCName EQUAL )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON
+ k=this.match(this.input,IMPORT,XQueryParser.FOLLOW_IMPORT_in_pm_ModuleImport2402); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_IMPORT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,MODULE,XQueryParser.FOLLOW_MODULE_in_pm_ModuleImport2406); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_MODULE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:281:31: (k+= NAMESPACE nn= p_NCName EQUAL )?
+ var alt22=2;
+ var LA22_0 = this.input.LA(1);
+
+ if ( (LA22_0==NAMESPACE) ) {
+ alt22=1;
+ }
+ switch (alt22) {
+ case 1 :
+ // XQueryParser.g:281:32: k+= NAMESPACE nn= p_NCName EQUAL
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_pm_ModuleImport2411); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_NAMESPACE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_pm_ModuleImport2415);
+ nn=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_NCName.add(nn.getTree());
+ EQUAL56=this.match(this.input,EQUAL,XQueryParser.FOLLOW_EQUAL_in_pm_ModuleImport2417); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EQUAL.add(EQUAL56);
+
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_ModuleImport2423);
+ us=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(us.getTree());
+ // XQueryParser.g:281:84: (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )?
+ var alt24=2;
+ var LA24_0 = this.input.LA(1);
+
+ if ( (LA24_0==AT) ) {
+ alt24=1;
+ }
+ switch (alt24) {
+ case 1 :
+ // XQueryParser.g:281:85: k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )*
+ k=this.match(this.input,AT,XQueryParser.FOLLOW_AT_in_pm_ModuleImport2428); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_AT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_ModuleImport2432);
+ ah=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(ah.getTree());
+ if (org.antlr.lang.isNull(list_ah)) list_ah = [];
+ list_ah.push(ah.getTree());
+
+ // XQueryParser.g:281:111: ( COMMA ah+= p_StringLiteral )*
+ loop23:
+ do {
+ var alt23=2;
+ var LA23_0 = this.input.LA(1);
+
+ if ( (LA23_0==COMMA) ) {
+ alt23=1;
+ }
+
+
+ switch (alt23) {
+ case 1 :
+ // XQueryParser.g:281:112: COMMA ah+= p_StringLiteral
+ COMMA57=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_pm_ModuleImport2435); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_COMMA.add(COMMA57);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_ModuleImport2439);
+ ah=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(ah.getTree());
+ if (org.antlr.lang.isNull(list_ah)) list_ah = [];
+ list_ah.push(ah.getTree());
+
+
+
+ break;
+
+ default :
+ break loop23;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON58=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_ModuleImport2445); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON58);
+
+
+
+ // AST REWRITE
+ // elements: nn, us, ah
+ // token labels:
+ // rule labels: retval, nn, us
+ // token list labels:
+ // rule list labels: ah
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_nn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token nn",nn!=null?nn.tree:null);
+ var stream_us=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token us",us!=null?us.tree:null);
+ var stream_ah=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token ah",list_ah);
+ root_0 = this.adaptor.nil();
+ // 282:17: -> ^( ModuleImport ^( NamespaceName ( $nn)? ) $us ^( AtHints ( $ah)* ) )
+ {
+ // XQueryParser.g:282:20: ^( ModuleImport ^( NamespaceName ( $nn)? ) $us ^( AtHints ( $ah)* ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(ModuleImport, "ModuleImport"), root_1);
+
+ // XQueryParser.g:282:35: ^( NamespaceName ( $nn)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(NamespaceName, "NamespaceName"), root_2);
+
+ // XQueryParser.g:282:51: ( $nn)?
+ if ( stream_nn.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_nn.nextTree());
+
+ }
+ stream_nn.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ this.adaptor.addChild(root_1, stream_us.nextTree());
+ // XQueryParser.g:282:61: ^( AtHints ( $ah)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(AtHints, "AtHints"), root_2);
+
+ // XQueryParser.g:282:71: ( $ah)*
+ while ( stream_ah.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_ah.nextTree());
+
+ }
+ stream_ah.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_VarDecl_return: (function() {
+ XQueryParser.pm_VarDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_VarDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:286:1: pm_VarDecl : k+= DECLARE p_PrivateOption vdt= pg_VarDeclType DOLLAR qn= p_QName (td= p_TypeDeclaration )? ( ( BIND es= p_ExprSingle ) | (k+= EXTERNAL ( BIND des= p_ExprSingle )? ) ) SEMICOLON -> ^( VarDecl $vdt $qn ^( VarType ( $td)? ) ^( VarValue ( $es)? ^( VarDefaultValue ( $des)? ) ) ) ;
+ // $ANTLR start "pm_VarDecl"
+ pm_VarDecl: function() {
+ var retval = new XQueryParser.pm_VarDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR60 = null;
+ var BIND61 = null;
+ var BIND62 = null;
+ var SEMICOLON63 = null;
+ var k = null;
+ var list_k=null;
+ var vdt = null;
+ var qn = null;
+ var td = null;
+ var es = null;
+ var des = null;
+ var p_PrivateOption59 = null;
+
+ var DOLLAR60_tree=null;
+ var BIND61_tree=null;
+ var BIND62_tree=null;
+ var SEMICOLON63_tree=null;
+ var k_tree=null;
+ var stream_DOLLAR=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DOLLAR");
+ var stream_DECLARE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DECLARE");
+ var stream_EXTERNAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EXTERNAL");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_BIND=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token BIND");
+ var stream_p_TypeDeclaration=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_TypeDeclaration");
+ var stream_p_QName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QName");
+ var stream_p_PrivateOption=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_PrivateOption");
+ var stream_p_ExprSingle=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ExprSingle");
+ var stream_pg_VarDeclType=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pg_VarDeclType");
+ try {
+ // XQueryParser.g:287:9: (k+= DECLARE p_PrivateOption vdt= pg_VarDeclType DOLLAR qn= p_QName (td= p_TypeDeclaration )? ( ( BIND es= p_ExprSingle ) | (k+= EXTERNAL ( BIND des= p_ExprSingle )? ) ) SEMICOLON -> ^( VarDecl $vdt $qn ^( VarType ( $td)? ) ^( VarValue ( $es)? ^( VarDefaultValue ( $des)? ) ) ) )
+ // XQueryParser.g:287:11: k+= DECLARE p_PrivateOption vdt= pg_VarDeclType DOLLAR qn= p_QName (td= p_TypeDeclaration )? ( ( BIND es= p_ExprSingle ) | (k+= EXTERNAL ( BIND des= p_ExprSingle )? ) ) SEMICOLON
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_VarDecl2515); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PrivateOption_in_pm_VarDecl2517);
+ p_PrivateOption59=this.p_PrivateOption();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_PrivateOption.add(p_PrivateOption59.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_pg_VarDeclType_in_pm_VarDecl2521);
+ vdt=this.pg_VarDeclType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pg_VarDeclType.add(vdt.getTree());
+ DOLLAR60=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_pm_VarDecl2523); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DOLLAR.add(DOLLAR60);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_pm_VarDecl2527);
+ qn=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(qn.getTree());
+ // XQueryParser.g:287:77: (td= p_TypeDeclaration )?
+ var alt25=2;
+ var LA25_0 = this.input.LA(1);
+
+ if ( (LA25_0==AS) ) {
+ alt25=1;
+ }
+ switch (alt25) {
+ case 1 :
+ // XQueryParser.g:287:77: td= p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_pm_VarDecl2531);
+ td=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(td.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:287:97: ( ( BIND es= p_ExprSingle ) | (k+= EXTERNAL ( BIND des= p_ExprSingle )? ) )
+ var alt27=2;
+ var LA27_0 = this.input.LA(1);
+
+ if ( (LA27_0==BIND) ) {
+ alt27=1;
+ }
+ else if ( (LA27_0==EXTERNAL) ) {
+ alt27=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 27, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt27) {
+ case 1 :
+ // XQueryParser.g:287:98: ( BIND es= p_ExprSingle )
+ // XQueryParser.g:287:98: ( BIND es= p_ExprSingle )
+ // XQueryParser.g:287:99: BIND es= p_ExprSingle
+ BIND61=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_VarDecl2536); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BIND.add(BIND61);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_VarDecl2540);
+ es=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ExprSingle.add(es.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:287:123: (k+= EXTERNAL ( BIND des= p_ExprSingle )? )
+ // XQueryParser.g:287:123: (k+= EXTERNAL ( BIND des= p_ExprSingle )? )
+ // XQueryParser.g:287:124: k+= EXTERNAL ( BIND des= p_ExprSingle )?
+ k=this.match(this.input,EXTERNAL,XQueryParser.FOLLOW_EXTERNAL_in_pm_VarDecl2548); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EXTERNAL.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:287:136: ( BIND des= p_ExprSingle )?
+ var alt26=2;
+ var LA26_0 = this.input.LA(1);
+
+ if ( (LA26_0==BIND) ) {
+ alt26=1;
+ }
+ switch (alt26) {
+ case 1 :
+ // XQueryParser.g:287:137: BIND des= p_ExprSingle
+ BIND62=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_VarDecl2551); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BIND.add(BIND62);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_VarDecl2555);
+ des=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ExprSingle.add(des.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+
+
+ break;
+
+ }
+
+ SEMICOLON63=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_VarDecl2561); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON63);
+
+
+
+ // AST REWRITE
+ // elements: des, td, es, vdt, qn
+ // token labels:
+ // rule labels: qn, retval, des, td, vdt, es
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_qn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token qn",qn!=null?qn.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_des=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token des",des!=null?des.tree:null);
+ var stream_td=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token td",td!=null?td.tree:null);
+ var stream_vdt=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token vdt",vdt!=null?vdt.tree:null);
+ var stream_es=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token es",es!=null?es.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 288:17: -> ^( VarDecl $vdt $qn ^( VarType ( $td)? ) ^( VarValue ( $es)? ^( VarDefaultValue ( $des)? ) ) )
+ {
+ // XQueryParser.g:288:20: ^( VarDecl $vdt $qn ^( VarType ( $td)? ) ^( VarValue ( $es)? ^( VarDefaultValue ( $des)? ) ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(VarDecl, "VarDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_vdt.nextTree());
+ this.adaptor.addChild(root_1, stream_qn.nextTree());
+ // XQueryParser.g:288:39: ^( VarType ( $td)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(VarType, "VarType"), root_2);
+
+ // XQueryParser.g:288:49: ( $td)?
+ if ( stream_td.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_td.nextTree());
+
+ }
+ stream_td.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:288:55: ^( VarValue ( $es)? ^( VarDefaultValue ( $des)? ) )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(VarValue, "VarValue"), root_2);
+
+ // XQueryParser.g:288:66: ( $es)?
+ if ( stream_es.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_es.nextTree());
+
+ }
+ stream_es.reset();
+ // XQueryParser.g:288:71: ^( VarDefaultValue ( $des)? )
+ {
+ var root_3 = this.adaptor.nil();
+ root_3 = this.adaptor.becomeRoot(this.adaptor.create(VarDefaultValue, "VarDefaultValue"), root_3);
+
+ // XQueryParser.g:288:89: ( $des)?
+ if ( stream_des.hasNext() ) {
+ this.adaptor.addChild(root_3, stream_des.nextTree());
+
+ }
+ stream_des.reset();
+
+ this.adaptor.addChild(root_2, root_3);
+ }
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_VarDeclType_return: (function() {
+ XQueryParser.pg_VarDeclType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_VarDeclType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:295:1: pg_VarDeclType : ({...}? =>ku= CONSTANT -> VarConstantDecl | kv= VARIABLE -> VarVariableDecl );
+ // $ANTLR start "pg_VarDeclType"
+ pg_VarDeclType: function() {
+ var retval = new XQueryParser.pg_VarDeclType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ku = null;
+ var kv = null;
+
+ var ku_tree=null;
+ var kv_tree=null;
+ var stream_CONSTANT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token CONSTANT");
+ var stream_VARIABLE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token VARIABLE");
+
+ try {
+ // XQueryParser.g:296:9: ({...}? =>ku= CONSTANT -> VarConstantDecl | kv= VARIABLE -> VarVariableDecl )
+ var alt28=2;
+ var LA28_0 = this.input.LA(1);
+
+ if ( (LA28_0==CONSTANT) && ((true))) {
+ alt28=1;
+ }
+ else if ( (LA28_0==VARIABLE) ) {
+ alt28=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 28, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt28) {
+ case 1 :
+ // XQueryParser.g:296:11: {...}? =>ku= CONSTANT
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pg_VarDeclType", "true");
+ }
+ ku=this.match(this.input,CONSTANT,XQueryParser.FOLLOW_CONSTANT_in_pg_VarDeclType2648); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_CONSTANT.add(ku);
+
+
+
+ // AST REWRITE
+ // elements:
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 297:17: -> VarConstantDecl
+ {
+ this.adaptor.addChild(root_0, this.adaptor.create(VarConstantDecl, "VarConstantDecl"));
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:298:11: kv= VARIABLE
+ kv=this.match(this.input,VARIABLE,XQueryParser.FOLLOW_VARIABLE_in_pg_VarDeclType2682); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_VARIABLE.add(kv);
+
+
+
+ // AST REWRITE
+ // elements:
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 299:17: -> VarVariableDecl
+ {
+ this.adaptor.addChild(root_0, this.adaptor.create(VarVariableDecl, "VarVariableDecl"));
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_ContextItemDecl_return: (function() {
+ XQueryParser.pm_ContextItemDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_ContextItemDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:310:1: pm_ContextItemDecl : k+= DECLARE k+= CONTEXT k+= ITEM (k+= AS p_ItemType )? ( ( BIND p_ExprSingle ) | (k+= EXTERNAL ( BIND p_ExprSingle )? ) ) SEMICOLON ;
+ // $ANTLR start "pm_ContextItemDecl"
+ pm_ContextItemDecl: function() {
+ var retval = new XQueryParser.pm_ContextItemDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var BIND65 = null;
+ var BIND67 = null;
+ var SEMICOLON69 = null;
+ var k = null;
+ var list_k=null;
+ var p_ItemType64 = null;
+ var p_ExprSingle66 = null;
+ var p_ExprSingle68 = null;
+
+ var BIND65_tree=null;
+ var BIND67_tree=null;
+ var SEMICOLON69_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:311:9: (k+= DECLARE k+= CONTEXT k+= ITEM (k+= AS p_ItemType )? ( ( BIND p_ExprSingle ) | (k+= EXTERNAL ( BIND p_ExprSingle )? ) ) SEMICOLON )
+ // XQueryParser.g:311:13: k+= DECLARE k+= CONTEXT k+= ITEM (k+= AS p_ItemType )? ( ( BIND p_ExprSingle ) | (k+= EXTERNAL ( BIND p_ExprSingle )? ) ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_ContextItemDecl2739); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,CONTEXT,XQueryParser.FOLLOW_CONTEXT_in_pm_ContextItemDecl2743); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,ITEM,XQueryParser.FOLLOW_ITEM_in_pm_ContextItemDecl2747); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:311:43: (k+= AS p_ItemType )?
+ var alt29=2;
+ var LA29_0 = this.input.LA(1);
+
+ if ( (LA29_0==AS) ) {
+ alt29=1;
+ }
+ switch (alt29) {
+ case 1 :
+ // XQueryParser.g:311:44: k+= AS p_ItemType
+ k=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_pm_ContextItemDecl2752); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ItemType_in_pm_ContextItemDecl2754);
+ p_ItemType64=this.p_ItemType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ItemType64.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:311:63: ( ( BIND p_ExprSingle ) | (k+= EXTERNAL ( BIND p_ExprSingle )? ) )
+ var alt31=2;
+ var LA31_0 = this.input.LA(1);
+
+ if ( (LA31_0==BIND) ) {
+ alt31=1;
+ }
+ else if ( (LA31_0==EXTERNAL) ) {
+ alt31=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 31, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt31) {
+ case 1 :
+ // XQueryParser.g:311:64: ( BIND p_ExprSingle )
+ // XQueryParser.g:311:64: ( BIND p_ExprSingle )
+ // XQueryParser.g:311:65: BIND p_ExprSingle
+ BIND65=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_ContextItemDecl2760); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND65_tree = this.adaptor.create(BIND65);
+ this.adaptor.addChild(root_0, BIND65_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_ContextItemDecl2762);
+ p_ExprSingle66=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle66.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:311:86: (k+= EXTERNAL ( BIND p_ExprSingle )? )
+ // XQueryParser.g:311:86: (k+= EXTERNAL ( BIND p_ExprSingle )? )
+ // XQueryParser.g:311:87: k+= EXTERNAL ( BIND p_ExprSingle )?
+ k=this.match(this.input,EXTERNAL,XQueryParser.FOLLOW_EXTERNAL_in_pm_ContextItemDecl2770); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:311:99: ( BIND p_ExprSingle )?
+ var alt30=2;
+ var LA30_0 = this.input.LA(1);
+
+ if ( (LA30_0==BIND) ) {
+ alt30=1;
+ }
+ switch (alt30) {
+ case 1 :
+ // XQueryParser.g:311:100: BIND p_ExprSingle
+ BIND67=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_ContextItemDecl2773); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND67_tree = this.adaptor.create(BIND67);
+ this.adaptor.addChild(root_0, BIND67_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_ContextItemDecl2775);
+ p_ExprSingle68=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle68.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+
+
+ break;
+
+ }
+
+ SEMICOLON69=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_ContextItemDecl2781); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON69_tree = this.adaptor.create(SEMICOLON69);
+ this.adaptor.addChild(root_0, SEMICOLON69_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_ConstructionDecl_return: (function() {
+ XQueryParser.pm_ConstructionDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_ConstructionDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:318:1: pm_ConstructionDecl : k+= DECLARE k+= CONSTRUCTION (k+= STRIP | k+= PRESERVE ) SEMICOLON ;
+ // $ANTLR start "pm_ConstructionDecl"
+ pm_ConstructionDecl: function() {
+ var retval = new XQueryParser.pm_ConstructionDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON70 = null;
+ var k = null;
+ var list_k=null;
+
+ var SEMICOLON70_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:319:9: (k+= DECLARE k+= CONSTRUCTION (k+= STRIP | k+= PRESERVE ) SEMICOLON )
+ // XQueryParser.g:319:13: k+= DECLARE k+= CONSTRUCTION (k+= STRIP | k+= PRESERVE ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_ConstructionDecl2815); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,CONSTRUCTION,XQueryParser.FOLLOW_CONSTRUCTION_in_pm_ConstructionDecl2819); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:319:40: (k+= STRIP | k+= PRESERVE )
+ var alt32=2;
+ var LA32_0 = this.input.LA(1);
+
+ if ( (LA32_0==STRIP) ) {
+ alt32=1;
+ }
+ else if ( (LA32_0==PRESERVE) ) {
+ alt32=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 32, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt32) {
+ case 1 :
+ // XQueryParser.g:319:41: k+= STRIP
+ k=this.match(this.input,STRIP,XQueryParser.FOLLOW_STRIP_in_pm_ConstructionDecl2824); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:319:52: k+= PRESERVE
+ k=this.match(this.input,PRESERVE,XQueryParser.FOLLOW_PRESERVE_in_pm_ConstructionDecl2830); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON70=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_ConstructionDecl2833); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON70_tree = this.adaptor.create(SEMICOLON70);
+ this.adaptor.addChild(root_0, SEMICOLON70_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_FunctionDecl_return: (function() {
+ XQueryParser.pm_FunctionDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_FunctionDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:325:1: pm_FunctionDecl : ({...}? =>k+= DECLARE k+= SEQUENTIAL k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (b= p_Block | k+= EXTERNAL ) SEMICOLON -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $b)? ) | k+= DECLARE p_PrivateOption p_FunctionType k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (ee= p_EnclosedExpr | k+= EXTERNAL ) SEMICOLON -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $ee)? ) );
+ // $ANTLR start "pm_FunctionDecl"
+ pm_FunctionDecl: function() {
+ var retval = new XQueryParser.pm_FunctionDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN71 = null;
+ var RPAREN72 = null;
+ var SEMICOLON73 = null;
+ var LPAREN76 = null;
+ var RPAREN77 = null;
+ var SEMICOLON78 = null;
+ var k = null;
+ var list_k=null;
+ var qn = null;
+ var pl = null;
+ var td = null;
+ var b = null;
+ var ee = null;
+ var p_PrivateOption74 = null;
+ var p_FunctionType75 = null;
+
+ var LPAREN71_tree=null;
+ var RPAREN72_tree=null;
+ var SEMICOLON73_tree=null;
+ var LPAREN76_tree=null;
+ var RPAREN77_tree=null;
+ var SEMICOLON78_tree=null;
+ var k_tree=null;
+ var stream_FUNCTION=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token FUNCTION");
+ var stream_DECLARE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DECLARE");
+ var stream_RPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token RPAREN");
+ var stream_EXTERNAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EXTERNAL");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_SEQUENTIAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEQUENTIAL");
+ var stream_LPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token LPAREN");
+ var stream_p_Block=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_Block");
+ var stream_p_TypeDeclaration=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_TypeDeclaration");
+ var stream_p_QName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QName");
+ var stream_p_ParamList=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ParamList");
+ var stream_p_PrivateOption=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_PrivateOption");
+ var stream_p_FunctionType=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_FunctionType");
+ var stream_p_EnclosedExpr=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_EnclosedExpr");
+ try {
+ // XQueryParser.g:326:9: ({...}? =>k+= DECLARE k+= SEQUENTIAL k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (b= p_Block | k+= EXTERNAL ) SEMICOLON -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $b)? ) | k+= DECLARE p_PrivateOption p_FunctionType k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (ee= p_EnclosedExpr | k+= EXTERNAL ) SEMICOLON -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $ee)? ) )
+ var alt39=2;
+ var LA39_0 = this.input.LA(1);
+
+ if ( (LA39_0==DECLARE) ) {
+ var LA39_1 = this.input.LA(2);
+
+ if ( (LA39_1==SEQUENTIAL) && ((true))) {
+ alt39=1;
+ }
+ else if ( (LA39_1==FUNCTION||LA39_1==UPDATING||LA39_1==SIMPLE||LA39_1==PRIVATE) ) {
+ alt39=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 39, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 39, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt39) {
+ case 1 :
+ // XQueryParser.g:326:13: {...}? =>k+= DECLARE k+= SEQUENTIAL k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (b= p_Block | k+= EXTERNAL ) SEMICOLON
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pm_FunctionDecl", "true");
+ }
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_FunctionDecl2869); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,SEQUENTIAL,XQueryParser.FOLLOW_SEQUENTIAL_in_pm_FunctionDecl2873); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEQUENTIAL.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,FUNCTION,XQueryParser.FOLLOW_FUNCTION_in_pm_FunctionDecl2877); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_FUNCTION.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_pm_FunctionDecl2881);
+ qn=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(qn.getTree());
+ LPAREN71=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_pm_FunctionDecl2883); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LPAREN.add(LPAREN71);
+
+ // XQueryParser.g:326:80: (pl= p_ParamList )?
+ var alt33=2;
+ var LA33_0 = this.input.LA(1);
+
+ if ( (LA33_0==DOLLAR) ) {
+ alt33=1;
+ }
+ switch (alt33) {
+ case 1 :
+ // XQueryParser.g:326:80: pl= p_ParamList
+ this.pushFollow(XQueryParser.FOLLOW_p_ParamList_in_pm_FunctionDecl2887);
+ pl=this.p_ParamList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ParamList.add(pl.getTree());
+
+
+ break;
+
+ }
+
+ RPAREN72=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_pm_FunctionDecl2890); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RPAREN.add(RPAREN72);
+
+ // XQueryParser.g:326:103: (td= p_TypeDeclaration )?
+ var alt34=2;
+ var LA34_0 = this.input.LA(1);
+
+ if ( (LA34_0==AS) ) {
+ alt34=1;
+ }
+ switch (alt34) {
+ case 1 :
+ // XQueryParser.g:326:103: td= p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_pm_FunctionDecl2894);
+ td=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(td.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:326:123: (b= p_Block | k+= EXTERNAL )
+ var alt35=2;
+ var LA35_0 = this.input.LA(1);
+
+ if ( (LA35_0==LBRACKET) ) {
+ alt35=1;
+ }
+ else if ( (LA35_0==EXTERNAL) ) {
+ alt35=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 35, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt35) {
+ case 1 :
+ // XQueryParser.g:326:124: b= p_Block
+ this.pushFollow(XQueryParser.FOLLOW_p_Block_in_pm_FunctionDecl2900);
+ b=this.p_Block();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_Block.add(b.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:326:136: k+= EXTERNAL
+ k=this.match(this.input,EXTERNAL,XQueryParser.FOLLOW_EXTERNAL_in_pm_FunctionDecl2906); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EXTERNAL.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON73=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_FunctionDecl2909); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON73);
+
+
+
+ // AST REWRITE
+ // elements: b, qn, td, pl
+ // token labels:
+ // rule labels: qn, retval, b, pl, td
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_qn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token qn",qn!=null?qn.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_b=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token b",b!=null?b.tree:null);
+ var stream_pl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token pl",pl!=null?pl.tree:null);
+ var stream_td=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token td",td!=null?td.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 327:17: -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $b)? )
+ {
+ // XQueryParser.g:327:20: ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $b)? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(FunctionDecl, "FunctionDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_qn.nextTree());
+ // XQueryParser.g:327:39: ^( ParamList ( $pl)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(ParamList, "ParamList"), root_2);
+
+ // XQueryParser.g:327:51: ( $pl)?
+ if ( stream_pl.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_pl.nextTree());
+
+ }
+ stream_pl.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:327:57: ^( ReturnType ( $td)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(ReturnType, "ReturnType"), root_2);
+
+ // XQueryParser.g:327:70: ( $td)?
+ if ( stream_td.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_td.nextTree());
+
+ }
+ stream_td.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:327:76: ( $b)?
+ if ( stream_b.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_b.nextTree());
+
+ }
+ stream_b.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:328:13: k+= DECLARE p_PrivateOption p_FunctionType k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (ee= p_EnclosedExpr | k+= EXTERNAL ) SEMICOLON
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_FunctionDecl2971); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PrivateOption_in_pm_FunctionDecl2973);
+ p_PrivateOption74=this.p_PrivateOption();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_PrivateOption.add(p_PrivateOption74.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_FunctionType_in_pm_FunctionDecl2975);
+ p_FunctionType75=this.p_FunctionType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_FunctionType.add(p_FunctionType75.getTree());
+ k=this.match(this.input,FUNCTION,XQueryParser.FOLLOW_FUNCTION_in_pm_FunctionDecl2979); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_FUNCTION.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_pm_FunctionDecl2983);
+ qn=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(qn.getTree());
+ LPAREN76=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_pm_FunctionDecl2985); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LPAREN.add(LPAREN76);
+
+ // XQueryParser.g:328:87: (pl= p_ParamList )?
+ var alt36=2;
+ var LA36_0 = this.input.LA(1);
+
+ if ( (LA36_0==DOLLAR) ) {
+ alt36=1;
+ }
+ switch (alt36) {
+ case 1 :
+ // XQueryParser.g:328:87: pl= p_ParamList
+ this.pushFollow(XQueryParser.FOLLOW_p_ParamList_in_pm_FunctionDecl2989);
+ pl=this.p_ParamList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ParamList.add(pl.getTree());
+
+
+ break;
+
+ }
+
+ RPAREN77=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_pm_FunctionDecl2992); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RPAREN.add(RPAREN77);
+
+ // XQueryParser.g:328:110: (td= p_TypeDeclaration )?
+ var alt37=2;
+ var LA37_0 = this.input.LA(1);
+
+ if ( (LA37_0==AS) ) {
+ alt37=1;
+ }
+ switch (alt37) {
+ case 1 :
+ // XQueryParser.g:328:110: td= p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_pm_FunctionDecl2996);
+ td=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(td.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:328:130: (ee= p_EnclosedExpr | k+= EXTERNAL )
+ var alt38=2;
+ var LA38_0 = this.input.LA(1);
+
+ if ( (LA38_0==LBRACKET) ) {
+ alt38=1;
+ }
+ else if ( (LA38_0==EXTERNAL) ) {
+ alt38=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 38, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt38) {
+ case 1 :
+ // XQueryParser.g:328:131: ee= p_EnclosedExpr
+ this.pushFollow(XQueryParser.FOLLOW_p_EnclosedExpr_in_pm_FunctionDecl3002);
+ ee=this.p_EnclosedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_EnclosedExpr.add(ee.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:328:151: k+= EXTERNAL
+ k=this.match(this.input,EXTERNAL,XQueryParser.FOLLOW_EXTERNAL_in_pm_FunctionDecl3008); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EXTERNAL.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON78=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_FunctionDecl3011); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON78);
+
+
+
+ // AST REWRITE
+ // elements: qn, td, ee, pl
+ // token labels:
+ // rule labels: qn, retval, ee, pl, td
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_qn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token qn",qn!=null?qn.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_ee=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token ee",ee!=null?ee.tree:null);
+ var stream_pl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token pl",pl!=null?pl.tree:null);
+ var stream_td=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token td",td!=null?td.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 329:17: -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $ee)? )
+ {
+ // XQueryParser.g:329:20: ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $ee)? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(FunctionDecl, "FunctionDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_qn.nextTree());
+ // XQueryParser.g:329:39: ^( ParamList ( $pl)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(ParamList, "ParamList"), root_2);
+
+ // XQueryParser.g:329:51: ( $pl)?
+ if ( stream_pl.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_pl.nextTree());
+
+ }
+ stream_pl.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:329:57: ^( ReturnType ( $td)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(ReturnType, "ReturnType"), root_2);
+
+ // XQueryParser.g:329:70: ( $td)?
+ if ( stream_td.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_td.nextTree());
+
+ }
+ stream_td.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:329:76: ( $ee)?
+ if ( stream_ee.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_ee.nextTree());
+
+ }
+ stream_ee.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FunctionType_return: (function() {
+ XQueryParser.p_FunctionType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FunctionType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:336:1: p_FunctionType : ({...}? =>ku= UPDATING | {...}? =>ks= SIMPLE | );
+ // $ANTLR start "p_FunctionType"
+ p_FunctionType: function() {
+ var retval = new XQueryParser.p_FunctionType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ku = null;
+ var ks = null;
+
+ var ku_tree=null;
+ var ks_tree=null;
+
+ try {
+ // XQueryParser.g:337:9: ({...}? =>ku= UPDATING | {...}? =>ks= SIMPLE | )
+ var alt40=3;
+ var LA40_0 = this.input.LA(1);
+
+ if ( (LA40_0==UPDATING) && ((true))) {
+ alt40=1;
+ }
+ else if ( (LA40_0==SIMPLE) && ((true))) {
+ alt40=2;
+ }
+ else if ( (LA40_0==FUNCTION) ) {
+ alt40=3;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 40, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt40) {
+ case 1 :
+ // XQueryParser.g:337:11: {...}? =>ku= UPDATING
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_FunctionType", "true");
+ }
+ ku=this.match(this.input,UPDATING,XQueryParser.FOLLOW_UPDATING_in_p_FunctionType3091); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ku_tree = this.adaptor.create(ku);
+ this.adaptor.addChild(root_0, ku_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:338:11: {...}? =>ks= SIMPLE
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_FunctionType", "true");
+ }
+ ks=this.match(this.input,SIMPLE,XQueryParser.FOLLOW_SIMPLE_in_p_FunctionType3108); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ks_tree = this.adaptor.create(ks);
+ this.adaptor.addChild(root_0, ks_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:340:9:
+ root_0 = this.adaptor.nil();
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PrivateOption_return: (function() {
+ XQueryParser.p_PrivateOption_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PrivateOption_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:342:1: p_PrivateOption : ({...}? =>kv= PRIVATE | );
+ // $ANTLR start "p_PrivateOption"
+ p_PrivateOption: function() {
+ var retval = new XQueryParser.p_PrivateOption_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kv = null;
+
+ var kv_tree=null;
+
+ try {
+ // XQueryParser.g:343:9: ({...}? =>kv= PRIVATE | )
+ var alt41=2;
+ var LA41_0 = this.input.LA(1);
+
+ if ( (LA41_0==PRIVATE) && ((false))) {
+ alt41=1;
+ }
+ else if ( (LA41_0==CONSTANT) && ((true))) {
+ alt41=2;
+ }
+ else if ( (LA41_0==VARIABLE) ) {
+ alt41=2;
+ }
+ else if ( (LA41_0==UPDATING||LA41_0==SIMPLE) && ((true))) {
+ alt41=2;
+ }
+ else if ( (LA41_0==FUNCTION) ) {
+ alt41=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 41, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt41) {
+ case 1 :
+ // XQueryParser.g:343:11: {...}? =>kv= PRIVATE
+ root_0 = this.adaptor.nil();
+
+ if ( !((false)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_PrivateOption", "false");
+ }
+ kv=this.match(this.input,PRIVATE,XQueryParser.FOLLOW_PRIVATE_in_p_PrivateOption3150); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kv_tree = this.adaptor.create(kv);
+ this.adaptor.addChild(root_0, kv_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:345:9:
+ root_0 = this.adaptor.nil();
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ParamList_return: (function() {
+ XQueryParser.p_ParamList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ParamList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:351:1: p_ParamList : p+= p_Param ( COMMA p+= p_Param )* -> ( $p)+ ;
+ // $ANTLR start "p_ParamList"
+ p_ParamList: function() {
+ var retval = new XQueryParser.p_ParamList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA79 = null;
+ var list_p=null;
+ var p = null;
+ var COMMA79_tree=null;
+ var stream_COMMA=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token COMMA");
+ var stream_p_Param=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_Param");
+ try {
+ // XQueryParser.g:352:9: (p+= p_Param ( COMMA p+= p_Param )* -> ( $p)+ )
+ // XQueryParser.g:352:11: p+= p_Param ( COMMA p+= p_Param )*
+ this.pushFollow(XQueryParser.FOLLOW_p_Param_in_p_ParamList3193);
+ p=this.p_Param();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_Param.add(p.getTree());
+ if (org.antlr.lang.isNull(list_p)) list_p = [];
+ list_p.push(p.getTree());
+
+ // XQueryParser.g:352:22: ( COMMA p+= p_Param )*
+ loop42:
+ do {
+ var alt42=2;
+ var LA42_0 = this.input.LA(1);
+
+ if ( (LA42_0==COMMA) ) {
+ alt42=1;
+ }
+
+
+ switch (alt42) {
+ case 1 :
+ // XQueryParser.g:352:23: COMMA p+= p_Param
+ COMMA79=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_ParamList3196); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_COMMA.add(COMMA79);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_Param_in_p_ParamList3200);
+ p=this.p_Param();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_Param.add(p.getTree());
+ if (org.antlr.lang.isNull(list_p)) list_p = [];
+ list_p.push(p.getTree());
+
+
+
+ break;
+
+ default :
+ break loop42;
+ }
+ } while (true);
+
+
+
+ // AST REWRITE
+ // elements: p
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels: p
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_p=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token p",list_p);
+ root_0 = this.adaptor.nil();
+ // 353:17: -> ( $p)+
+ {
+ if ( !(stream_p.hasNext()) ) {
+ throw new org.antlr.runtime.tree.RewriteEarlyExitException();
+ }
+ while ( stream_p.hasNext() ) {
+ this.adaptor.addChild(root_0, stream_p.nextTree());
+
+ }
+ stream_p.reset();
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Param_return: (function() {
+ XQueryParser.p_Param_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Param_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:357:1: p_Param : DOLLAR qn= p_QName (td= p_TypeDeclaration )? -> ^( Param $qn ( $td)? ) ;
+ // $ANTLR start "p_Param"
+ p_Param: function() {
+ var retval = new XQueryParser.p_Param_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR80 = null;
+ var qn = null;
+ var td = null;
+
+ var DOLLAR80_tree=null;
+ var stream_DOLLAR=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DOLLAR");
+ var stream_p_TypeDeclaration=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_TypeDeclaration");
+ var stream_p_QName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QName");
+ try {
+ // XQueryParser.g:358:9: ( DOLLAR qn= p_QName (td= p_TypeDeclaration )? -> ^( Param $qn ( $td)? ) )
+ // XQueryParser.g:358:11: DOLLAR qn= p_QName (td= p_TypeDeclaration )?
+ DOLLAR80=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_Param3258); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DOLLAR.add(DOLLAR80);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_Param3262);
+ qn=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(qn.getTree());
+ // XQueryParser.g:358:31: (td= p_TypeDeclaration )?
+ var alt43=2;
+ var LA43_0 = this.input.LA(1);
+
+ if ( (LA43_0==AS) ) {
+ alt43=1;
+ }
+ switch (alt43) {
+ case 1 :
+ // XQueryParser.g:358:31: td= p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_Param3266);
+ td=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(td.getTree());
+
+
+ break;
+
+ }
+
+
+
+ // AST REWRITE
+ // elements: qn, td
+ // token labels:
+ // rule labels: qn, retval, td
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_qn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token qn",qn!=null?qn.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_td=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token td",td!=null?td.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 359:17: -> ^( Param $qn ( $td)? )
+ {
+ // XQueryParser.g:359:20: ^( Param $qn ( $td)? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(Param, "Param"), root_1);
+
+ this.adaptor.addChild(root_1, stream_qn.nextTree());
+ // XQueryParser.g:359:32: ( $td)?
+ if ( stream_td.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_td.nextTree());
+
+ }
+ stream_td.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_EnclosedExpr_return: (function() {
+ XQueryParser.p_EnclosedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_EnclosedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:363:1: p_EnclosedExpr : LBRACKET pm_Expr RBRACKET -> ^( EnclosedExpr pm_Expr ) ;
+ // $ANTLR start "p_EnclosedExpr"
+ p_EnclosedExpr: function() {
+ var retval = new XQueryParser.p_EnclosedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LBRACKET81 = null;
+ var RBRACKET83 = null;
+ var pm_Expr82 = null;
+
+ var LBRACKET81_tree=null;
+ var RBRACKET83_tree=null;
+ var stream_LBRACKET=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token LBRACKET");
+ var stream_RBRACKET=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token RBRACKET");
+ var stream_pm_Expr=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_Expr");
+ try {
+ // XQueryParser.g:364:9: ( LBRACKET pm_Expr RBRACKET -> ^( EnclosedExpr pm_Expr ) )
+ // XQueryParser.g:364:11: LBRACKET pm_Expr RBRACKET
+ LBRACKET81=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_EnclosedExpr3322); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LBRACKET.add(LBRACKET81);
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_EnclosedExpr3324);
+ pm_Expr82=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_Expr.add(pm_Expr82.getTree());
+ RBRACKET83=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_EnclosedExpr3326); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RBRACKET.add(RBRACKET83);
+
+
+
+ // AST REWRITE
+ // elements: pm_Expr
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 365:17: -> ^( EnclosedExpr pm_Expr )
+ {
+ // XQueryParser.g:365:20: ^( EnclosedExpr pm_Expr )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(EnclosedExpr, "EnclosedExpr"), root_1);
+
+ this.adaptor.addChild(root_1, stream_pm_Expr.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_QueryBody_return: (function() {
+ XQueryParser.p_QueryBody_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_QueryBody_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:369:1: p_QueryBody : pm_Expr -> ^( QueryBody pm_Expr ) ;
+ // $ANTLR start "p_QueryBody"
+ p_QueryBody: function() {
+ var retval = new XQueryParser.p_QueryBody_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_Expr84 = null;
+
+ var stream_pm_Expr=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_Expr");
+ try {
+ // XQueryParser.g:370:9: ( pm_Expr -> ^( QueryBody pm_Expr ) )
+ // XQueryParser.g:370:11: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_QueryBody3376);
+ pm_Expr84=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_Expr.add(pm_Expr84.getTree());
+
+
+ // AST REWRITE
+ // elements: pm_Expr
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 371:17: -> ^( QueryBody pm_Expr )
+ {
+ // XQueryParser.g:371:20: ^( QueryBody pm_Expr )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(QueryBody, "QueryBody"), root_1);
+
+ this.adaptor.addChild(root_1, stream_pm_Expr.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_Expr_return: (function() {
+ XQueryParser.pm_Expr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_Expr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:376:1: pm_Expr : p_ConcatExpr ({...}? => ( SEMICOLON ( pm_ApplyExpr )* )? | ) ({...}? => ( SEMICOLON p_ConcatExpr )+ | ) ;
+ // $ANTLR start "pm_Expr"
+ pm_Expr: function() {
+ var retval = new XQueryParser.pm_Expr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON86 = null;
+ var SEMICOLON88 = null;
+ var p_ConcatExpr85 = null;
+ var pm_ApplyExpr87 = null;
+ var p_ConcatExpr89 = null;
+
+ var SEMICOLON86_tree=null;
+ var SEMICOLON88_tree=null;
+
+ try {
+ // XQueryParser.g:377:9: ( p_ConcatExpr ({...}? => ( SEMICOLON ( pm_ApplyExpr )* )? | ) ({...}? => ( SEMICOLON p_ConcatExpr )+ | ) )
+ // XQueryParser.g:377:11: p_ConcatExpr ({...}? => ( SEMICOLON ( pm_ApplyExpr )* )? | ) ({...}? => ( SEMICOLON p_ConcatExpr )+ | )
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ConcatExpr_in_pm_Expr3427);
+ p_ConcatExpr85=this.p_ConcatExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ConcatExpr85.getTree());
+ // XQueryParser.g:378:11: ({...}? => ( SEMICOLON ( pm_ApplyExpr )* )? | )
+ var alt46=2;
+ var LA46_0 = this.input.LA(1);
+
+ if ( (LA46_0==SEMICOLON) && ((((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||(true)||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||(false)||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))))) {
+ var LA46_1 = this.input.LA(2);
+
+ if ( ((((true)&&(false))||(true))) ) {
+ alt46=1;
+ }
+ else if ( ((false)) ) {
+ alt46=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA46_0==RBRACKET) ) {
+ var LA46_2 = this.input.LA(2);
+
+ if ( ((true)) ) {
+ alt46=1;
+ }
+ else if ( (true) ) {
+ alt46=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 2, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA46_0==EOF) ) {
+ var LA46_3 = this.input.LA(2);
+
+ if ( ((true)) ) {
+ alt46=1;
+ }
+ else if ( (true) ) {
+ alt46=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 3, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA46_0==RPAREN) ) {
+ var LA46_4 = this.input.LA(2);
+
+ if ( ((true)) ) {
+ alt46=1;
+ }
+ else if ( (true) ) {
+ alt46=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 4, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA46_0==RSQUARE) ) {
+ var LA46_5 = this.input.LA(2);
+
+ if ( ((true)) ) {
+ alt46=1;
+ }
+ else if ( (true) ) {
+ alt46=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 5, this.input);
+
+ throw nvae;
+ }
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt46) {
+ case 1 :
+ // XQueryParser.g:378:12: {...}? => ( SEMICOLON ( pm_ApplyExpr )* )?
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pm_Expr", "true");
+ }
+ // XQueryParser.g:378:22: ( SEMICOLON ( pm_ApplyExpr )* )?
+ var alt45=2;
+ var LA45_0 = this.input.LA(1);
+
+ if ( (LA45_0==SEMICOLON) ) {
+ var LA45_1 = this.input.LA(2);
+
+ if ( (!(((false)))) ) {
+ alt45=1;
+ }
+ }
+ switch (alt45) {
+ case 1 :
+ // XQueryParser.g:378:23: SEMICOLON ( pm_ApplyExpr )*
+ SEMICOLON86=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_Expr3444); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON86_tree = this.adaptor.create(SEMICOLON86);
+ this.adaptor.addChild(root_0, SEMICOLON86_tree);
+ }
+ // XQueryParser.g:378:33: ( pm_ApplyExpr )*
+ loop44:
+ do {
+ var alt44=2;
+ var LA44_0 = this.input.LA(1);
+
+ if ( ((LA44_0>=ANCESTOR && LA44_0<=EXIT)||(LA44_0>=SEQUENTIAL && LA44_0<=MAINTAINED)||(LA44_0>=MUTABLE && LA44_0<=LPAREN)||LA44_0==DOLLAR||(LA44_0>=STAR && LA44_0<=SMALLER)||(LA44_0>=SLASH && LA44_0<=DOT_DOT)||LA44_0==ATTR_SIGN||(LA44_0>=APOS && LA44_0<=QUOT)||LA44_0==L_NCName||(LA44_0>=L_Pragma && LA44_0<=L_DoubleLiteral)||(LA44_0>=LETDOLLAR && LA44_0<=EXPLICITLY)) ) {
+ alt44=1;
+ }
+
+
+ switch (alt44) {
+ case 1 :
+ // XQueryParser.g:378:33: pm_ApplyExpr
+ this.pushFollow(XQueryParser.FOLLOW_pm_ApplyExpr_in_pm_Expr3446);
+ pm_ApplyExpr87=this.pm_ApplyExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_ApplyExpr87.getTree());
+
+
+ break;
+
+ default :
+ break loop44;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:378:64:
+
+ break;
+
+ }
+
+ // XQueryParser.g:379:11: ({...}? => ( SEMICOLON p_ConcatExpr )+ | )
+ var alt48=2;
+ var LA48_0 = this.input.LA(1);
+
+ if ( (LA48_0==SEMICOLON) && ((false))) {
+ alt48=1;
+ }
+ else if ( (LA48_0==EOF||LA48_0==RPAREN||LA48_0==RBRACKET||LA48_0==RSQUARE) ) {
+ alt48=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 48, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt48) {
+ case 1 :
+ // XQueryParser.g:379:12: {...}? => ( SEMICOLON p_ConcatExpr )+
+ if ( !((false)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pm_Expr", "false");
+ }
+ // XQueryParser.g:379:23: ( SEMICOLON p_ConcatExpr )+
+ var cnt47=0;
+ loop47:
+ do {
+ var alt47=2;
+ var LA47_0 = this.input.LA(1);
+
+ if ( (LA47_0==SEMICOLON) ) {
+ alt47=1;
+ }
+
+
+ switch (alt47) {
+ case 1 :
+ // XQueryParser.g:379:24: SEMICOLON p_ConcatExpr
+ SEMICOLON88=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_Expr3471); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON88_tree = this.adaptor.create(SEMICOLON88);
+ this.adaptor.addChild(root_0, SEMICOLON88_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ConcatExpr_in_pm_Expr3473);
+ p_ConcatExpr89=this.p_ConcatExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ConcatExpr89.getTree());
+
+
+ break;
+
+ default :
+ if ( cnt47 >= 1 ) {
+ break loop47;
+ }
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var eee = new org.antlr.runtime.EarlyExitException(47, this.input);
+ throw eee;
+ }
+ cnt47++;
+ } while (true);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:379:64:
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ExprSingle_return: (function() {
+ XQueryParser.p_ExprSingle_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ExprSingle_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:384:1: p_ExprSingle : ( p_FLWORExpr | p_QuantifiedExpr | p_TypeswitchExpr | p_IfExpr | p_TryCatchExpr | {...}? => p_EvalExpr | {...}? => p_InsertExpr | {...}? => p_DeleteExpr | {...}? => p_RenameExpr | {...}? => p_ReplaceExpr | {...}? => p_TransformExpr | {...}? => p_BlockExpr | {...}? => p_AssignmentExpr | {...}? => p_ExitExpr | {...}? => p_WhileExpr | p_OrExpr );
+ // $ANTLR start "p_ExprSingle"
+ p_ExprSingle: function() {
+ var retval = new XQueryParser.p_ExprSingle_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_FLWORExpr90 = null;
+ var p_QuantifiedExpr91 = null;
+ var p_TypeswitchExpr92 = null;
+ var p_IfExpr93 = null;
+ var p_TryCatchExpr94 = null;
+ var p_EvalExpr95 = null;
+ var p_InsertExpr96 = null;
+ var p_DeleteExpr97 = null;
+ var p_RenameExpr98 = null;
+ var p_ReplaceExpr99 = null;
+ var p_TransformExpr100 = null;
+ var p_BlockExpr101 = null;
+ var p_AssignmentExpr102 = null;
+ var p_ExitExpr103 = null;
+ var p_WhileExpr104 = null;
+ var p_OrExpr105 = null;
+
+
+ try {
+ // XQueryParser.g:385:9: ( p_FLWORExpr | p_QuantifiedExpr | p_TypeswitchExpr | p_IfExpr | p_TryCatchExpr | {...}? => p_EvalExpr | {...}? => p_InsertExpr | {...}? => p_DeleteExpr | {...}? => p_RenameExpr | {...}? => p_ReplaceExpr | {...}? => p_TransformExpr | {...}? => p_BlockExpr | {...}? => p_AssignmentExpr | {...}? => p_ExitExpr | {...}? => p_WhileExpr | p_OrExpr )
+ var alt49=16;
+ alt49 = this.dfa49.predict(this.input);
+ switch (alt49) {
+ case 1 :
+ // XQueryParser.g:385:11: p_FLWORExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_FLWORExpr_in_p_ExprSingle3507);
+ p_FLWORExpr90=this.p_FLWORExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_FLWORExpr90.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:386:11: p_QuantifiedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QuantifiedExpr_in_p_ExprSingle3519);
+ p_QuantifiedExpr91=this.p_QuantifiedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QuantifiedExpr91.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:387:11: p_TypeswitchExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeswitchExpr_in_p_ExprSingle3531);
+ p_TypeswitchExpr92=this.p_TypeswitchExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeswitchExpr92.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:388:11: p_IfExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IfExpr_in_p_ExprSingle3543);
+ p_IfExpr93=this.p_IfExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IfExpr93.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:389:11: p_TryCatchExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TryCatchExpr_in_p_ExprSingle3555);
+ p_TryCatchExpr94=this.p_TryCatchExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TryCatchExpr94.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:390:11: {...}? => p_EvalExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_EvalExpr_in_p_ExprSingle3570);
+ p_EvalExpr95=this.p_EvalExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_EvalExpr95.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:391:11: {...}? => p_InsertExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_InsertExpr_in_p_ExprSingle3585);
+ p_InsertExpr96=this.p_InsertExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InsertExpr96.getTree());
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:392:11: {...}? => p_DeleteExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_DeleteExpr_in_p_ExprSingle3600);
+ p_DeleteExpr97=this.p_DeleteExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DeleteExpr97.getTree());
+
+
+ break;
+ case 9 :
+ // XQueryParser.g:393:11: {...}? => p_RenameExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_RenameExpr_in_p_ExprSingle3615);
+ p_RenameExpr98=this.p_RenameExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RenameExpr98.getTree());
+
+
+ break;
+ case 10 :
+ // XQueryParser.g:394:11: {...}? => p_ReplaceExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ReplaceExpr_in_p_ExprSingle3630);
+ p_ReplaceExpr99=this.p_ReplaceExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ReplaceExpr99.getTree());
+
+
+ break;
+ case 11 :
+ // XQueryParser.g:395:11: {...}? => p_TransformExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_TransformExpr_in_p_ExprSingle3645);
+ p_TransformExpr100=this.p_TransformExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TransformExpr100.getTree());
+
+
+ break;
+ case 12 :
+ // XQueryParser.g:396:11: {...}? => p_BlockExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_BlockExpr_in_p_ExprSingle3660);
+ p_BlockExpr101=this.p_BlockExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_BlockExpr101.getTree());
+
+
+ break;
+ case 13 :
+ // XQueryParser.g:397:11: {...}? => p_AssignmentExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AssignmentExpr_in_p_ExprSingle3675);
+ p_AssignmentExpr102=this.p_AssignmentExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AssignmentExpr102.getTree());
+
+
+ break;
+ case 14 :
+ // XQueryParser.g:398:11: {...}? => p_ExitExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExitExpr_in_p_ExprSingle3690);
+ p_ExitExpr103=this.p_ExitExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExitExpr103.getTree());
+
+
+ break;
+ case 15 :
+ // XQueryParser.g:399:11: {...}? => p_WhileExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_WhileExpr_in_p_ExprSingle3705);
+ p_WhileExpr104=this.p_WhileExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WhileExpr104.getTree());
+
+
+ break;
+ case 16 :
+ // XQueryParser.g:400:11: p_OrExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_OrExpr_in_p_ExprSingle3717);
+ p_OrExpr105=this.p_OrExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrExpr105.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FLWORExpr_return: (function() {
+ XQueryParser.p_FLWORExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FLWORExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:404:1: p_FLWORExpr : p_InitialClause ( p_IntermediateClause )* p_ReturnClause ;
+ // $ANTLR start "p_FLWORExpr"
+ p_FLWORExpr: function() {
+ var retval = new XQueryParser.p_FLWORExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_InitialClause106 = null;
+ var p_IntermediateClause107 = null;
+ var p_ReturnClause108 = null;
+
+
+ try {
+ // XQueryParser.g:405:9: ( p_InitialClause ( p_IntermediateClause )* p_ReturnClause )
+ // XQueryParser.g:405:11: p_InitialClause ( p_IntermediateClause )* p_ReturnClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_InitialClause_in_p_FLWORExpr3743);
+ p_InitialClause106=this.p_InitialClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InitialClause106.getTree());
+ // XQueryParser.g:405:27: ( p_IntermediateClause )*
+ loop50:
+ do {
+ var alt50=2;
+ var LA50_0 = this.input.LA(1);
+
+ if ( (LA50_0==FOR||LA50_0==ORDER||LA50_0==STABLE||LA50_0==WHERE||LA50_0==COUNT||LA50_0==GROUP||LA50_0==LETDOLLAR) ) {
+ alt50=1;
+ }
+
+
+ switch (alt50) {
+ case 1 :
+ // XQueryParser.g:405:27: p_IntermediateClause
+ this.pushFollow(XQueryParser.FOLLOW_p_IntermediateClause_in_p_FLWORExpr3745);
+ p_IntermediateClause107=this.p_IntermediateClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IntermediateClause107.getTree());
+
+
+ break;
+
+ default :
+ break loop50;
+ }
+ } while (true);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ReturnClause_in_p_FLWORExpr3748);
+ p_ReturnClause108=this.p_ReturnClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ReturnClause108.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_InitialClause_return: (function() {
+ XQueryParser.p_InitialClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_InitialClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:409:1: p_InitialClause : ( p_ForClause | p_LetClause | p_WindowClause );
+ // $ANTLR start "p_InitialClause"
+ p_InitialClause: function() {
+ var retval = new XQueryParser.p_InitialClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ForClause109 = null;
+ var p_LetClause110 = null;
+ var p_WindowClause111 = null;
+
+
+ try {
+ // XQueryParser.g:410:9: ( p_ForClause | p_LetClause | p_WindowClause )
+ var alt51=3;
+ var LA51_0 = this.input.LA(1);
+
+ if ( (LA51_0==FOR) ) {
+ var LA51_1 = this.input.LA(2);
+
+ if ( (LA51_1==DOLLAR) ) {
+ alt51=1;
+ }
+ else if ( (LA51_1==SLIDING||LA51_1==TUMBLING) ) {
+ alt51=3;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 51, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA51_0==LETDOLLAR) ) {
+ alt51=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 51, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt51) {
+ case 1 :
+ // XQueryParser.g:410:11: p_ForClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ForClause_in_p_InitialClause3774);
+ p_ForClause109=this.p_ForClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ForClause109.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:410:25: p_LetClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_LetClause_in_p_InitialClause3778);
+ p_LetClause110=this.p_LetClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_LetClause110.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:410:39: p_WindowClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowClause_in_p_InitialClause3782);
+ p_WindowClause111=this.p_WindowClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowClause111.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IntermediateClause_return: (function() {
+ XQueryParser.p_IntermediateClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IntermediateClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:414:1: p_IntermediateClause : ( p_InitialClause | p_WhereClause | p_GroupByClause | p_OrderByClause | p_CountClause );
+ // $ANTLR start "p_IntermediateClause"
+ p_IntermediateClause: function() {
+ var retval = new XQueryParser.p_IntermediateClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_InitialClause112 = null;
+ var p_WhereClause113 = null;
+ var p_GroupByClause114 = null;
+ var p_OrderByClause115 = null;
+ var p_CountClause116 = null;
+
+
+ try {
+ // XQueryParser.g:415:9: ( p_InitialClause | p_WhereClause | p_GroupByClause | p_OrderByClause | p_CountClause )
+ var alt52=5;
+ switch ( this.input.LA(1) ) {
+ case FOR:
+ case LETDOLLAR:
+ alt52=1;
+ break;
+ case WHERE:
+ alt52=2;
+ break;
+ case GROUP:
+ alt52=3;
+ break;
+ case ORDER:
+ case STABLE:
+ alt52=4;
+ break;
+ case COUNT:
+ alt52=5;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 52, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt52) {
+ case 1 :
+ // XQueryParser.g:415:11: p_InitialClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_InitialClause_in_p_IntermediateClause3808);
+ p_InitialClause112=this.p_InitialClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InitialClause112.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:415:29: p_WhereClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_WhereClause_in_p_IntermediateClause3812);
+ p_WhereClause113=this.p_WhereClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WhereClause113.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:415:45: p_GroupByClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_GroupByClause_in_p_IntermediateClause3816);
+ p_GroupByClause114=this.p_GroupByClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_GroupByClause114.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:415:63: p_OrderByClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderByClause_in_p_IntermediateClause3820);
+ p_OrderByClause115=this.p_OrderByClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderByClause115.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:415:81: p_CountClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CountClause_in_p_IntermediateClause3824);
+ p_CountClause116=this.p_CountClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CountClause116.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ForClause_return: (function() {
+ XQueryParser.p_ForClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ForClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:419:1: p_ForClause : k+= FOR DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle )* ;
+ // $ANTLR start "p_ForClause"
+ p_ForClause: function() {
+ var retval = new XQueryParser.p_ForClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR117 = null;
+ var COMMA122 = null;
+ var DOLLAR123 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName118 = null;
+ var p_TypeDeclaration119 = null;
+ var p_PositionalVar120 = null;
+ var p_ExprSingle121 = null;
+ var p_VarName124 = null;
+ var p_TypeDeclaration125 = null;
+ var p_PositionalVar126 = null;
+ var p_ExprSingle127 = null;
+
+ var DOLLAR117_tree=null;
+ var COMMA122_tree=null;
+ var DOLLAR123_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:420:9: (k+= FOR DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle )* )
+ // XQueryParser.g:420:11: k+= FOR DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle )*
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,FOR,XQueryParser.FOLLOW_FOR_in_p_ForClause3852); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR117=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ForClause3854); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR117_tree = this.adaptor.create(DOLLAR117);
+ this.adaptor.addChild(root_0, DOLLAR117_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_ForClause3856);
+ p_VarName118=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName118.getTree());
+ // XQueryParser.g:420:35: ( p_TypeDeclaration )?
+ var alt53=2;
+ var LA53_0 = this.input.LA(1);
+
+ if ( (LA53_0==AS) ) {
+ alt53=1;
+ }
+ switch (alt53) {
+ case 1 :
+ // XQueryParser.g:420:35: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_ForClause3858);
+ p_TypeDeclaration119=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration119.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:420:54: ( p_PositionalVar )?
+ var alt54=2;
+ var LA54_0 = this.input.LA(1);
+
+ if ( (LA54_0==AT) ) {
+ alt54=1;
+ }
+ switch (alt54) {
+ case 1 :
+ // XQueryParser.g:420:54: p_PositionalVar
+ this.pushFollow(XQueryParser.FOLLOW_p_PositionalVar_in_p_ForClause3861);
+ p_PositionalVar120=this.p_PositionalVar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PositionalVar120.getTree());
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_ForClause3866); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ForClause3868);
+ p_ExprSingle121=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle121.getTree());
+ // XQueryParser.g:420:90: ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle )*
+ loop57:
+ do {
+ var alt57=2;
+ var LA57_0 = this.input.LA(1);
+
+ if ( (LA57_0==COMMA) ) {
+ alt57=1;
+ }
+
+
+ switch (alt57) {
+ case 1 :
+ // XQueryParser.g:420:91: COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle
+ COMMA122=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_ForClause3871); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA122_tree = this.adaptor.create(COMMA122);
+ this.adaptor.addChild(root_0, COMMA122_tree);
+ }
+ DOLLAR123=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ForClause3873); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR123_tree = this.adaptor.create(DOLLAR123);
+ this.adaptor.addChild(root_0, DOLLAR123_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_ForClause3875);
+ p_VarName124=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName124.getTree());
+ // XQueryParser.g:420:114: ( p_TypeDeclaration )?
+ var alt55=2;
+ var LA55_0 = this.input.LA(1);
+
+ if ( (LA55_0==AS) ) {
+ alt55=1;
+ }
+ switch (alt55) {
+ case 1 :
+ // XQueryParser.g:420:114: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_ForClause3877);
+ p_TypeDeclaration125=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration125.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:420:133: ( p_PositionalVar )?
+ var alt56=2;
+ var LA56_0 = this.input.LA(1);
+
+ if ( (LA56_0==AT) ) {
+ alt56=1;
+ }
+ switch (alt56) {
+ case 1 :
+ // XQueryParser.g:420:133: p_PositionalVar
+ this.pushFollow(XQueryParser.FOLLOW_p_PositionalVar_in_p_ForClause3880);
+ p_PositionalVar126=this.p_PositionalVar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PositionalVar126.getTree());
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_ForClause3885); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ForClause3887);
+ p_ExprSingle127=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle127.getTree());
+
+
+ break;
+
+ default :
+ break loop57;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PositionalVar_return: (function() {
+ XQueryParser.p_PositionalVar_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PositionalVar_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:424:1: p_PositionalVar : ka= AT DOLLAR p_VarName ;
+ // $ANTLR start "p_PositionalVar"
+ p_PositionalVar: function() {
+ var retval = new XQueryParser.p_PositionalVar_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ka = null;
+ var DOLLAR128 = null;
+ var p_VarName129 = null;
+
+ var ka_tree=null;
+ var DOLLAR128_tree=null;
+
+ try {
+ // XQueryParser.g:425:9: (ka= AT DOLLAR p_VarName )
+ // XQueryParser.g:425:11: ka= AT DOLLAR p_VarName
+ root_0 = this.adaptor.nil();
+
+ ka=this.match(this.input,AT,XQueryParser.FOLLOW_AT_in_p_PositionalVar3918); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ DOLLAR128=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_PositionalVar3920); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR128_tree = this.adaptor.create(DOLLAR128);
+ this.adaptor.addChild(root_0, DOLLAR128_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_PositionalVar3922);
+ p_VarName129=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName129.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_LetClause_return: (function() {
+ XQueryParser.p_LetClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_LetClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:429:1: p_LetClause : kl= LETDOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle )* ;
+ // $ANTLR start "p_LetClause"
+ p_LetClause: function() {
+ var retval = new XQueryParser.p_LetClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kl = null;
+ var BIND132 = null;
+ var COMMA134 = null;
+ var DOLLAR135 = null;
+ var BIND138 = null;
+ var p_VarName130 = null;
+ var p_TypeDeclaration131 = null;
+ var p_ExprSingle133 = null;
+ var p_VarName136 = null;
+ var p_TypeDeclaration137 = null;
+ var p_ExprSingle139 = null;
+
+ var kl_tree=null;
+ var BIND132_tree=null;
+ var COMMA134_tree=null;
+ var DOLLAR135_tree=null;
+ var BIND138_tree=null;
+
+ try {
+ // XQueryParser.g:430:9: (kl= LETDOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle )* )
+ // XQueryParser.g:430:11: kl= LETDOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle )*
+ root_0 = this.adaptor.nil();
+
+ kl=this.match(this.input,LETDOLLAR,XQueryParser.FOLLOW_LETDOLLAR_in_p_LetClause3950); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kl_tree = this.adaptor.create(kl);
+ this.adaptor.addChild(root_0, kl_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_LetClause3952);
+ p_VarName130=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName130.getTree());
+ // XQueryParser.g:430:34: ( p_TypeDeclaration )?
+ var alt58=2;
+ var LA58_0 = this.input.LA(1);
+
+ if ( (LA58_0==AS) ) {
+ alt58=1;
+ }
+ switch (alt58) {
+ case 1 :
+ // XQueryParser.g:430:34: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_LetClause3954);
+ p_TypeDeclaration131=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration131.getTree());
+
+
+ break;
+
+ }
+
+ BIND132=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_p_LetClause3957); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND132_tree = this.adaptor.create(BIND132);
+ this.adaptor.addChild(root_0, BIND132_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_LetClause3959);
+ p_ExprSingle133=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle133.getTree());
+ // XQueryParser.g:430:71: ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle )*
+ loop60:
+ do {
+ var alt60=2;
+ var LA60_0 = this.input.LA(1);
+
+ if ( (LA60_0==COMMA) ) {
+ alt60=1;
+ }
+
+
+ switch (alt60) {
+ case 1 :
+ // XQueryParser.g:430:72: COMMA DOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle
+ COMMA134=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_LetClause3962); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA134_tree = this.adaptor.create(COMMA134);
+ this.adaptor.addChild(root_0, COMMA134_tree);
+ }
+ DOLLAR135=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_LetClause3964); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR135_tree = this.adaptor.create(DOLLAR135);
+ this.adaptor.addChild(root_0, DOLLAR135_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_LetClause3966);
+ p_VarName136=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName136.getTree());
+ // XQueryParser.g:430:95: ( p_TypeDeclaration )?
+ var alt59=2;
+ var LA59_0 = this.input.LA(1);
+
+ if ( (LA59_0==AS) ) {
+ alt59=1;
+ }
+ switch (alt59) {
+ case 1 :
+ // XQueryParser.g:430:95: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_LetClause3968);
+ p_TypeDeclaration137=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration137.getTree());
+
+
+ break;
+
+ }
+
+ BIND138=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_p_LetClause3971); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND138_tree = this.adaptor.create(BIND138);
+ this.adaptor.addChild(root_0, BIND138_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_LetClause3973);
+ p_ExprSingle139=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle139.getTree());
+
+
+ break;
+
+ default :
+ break loop60;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WindowClause_return: (function() {
+ XQueryParser.p_WindowClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WindowClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:434:1: p_WindowClause : kf= FOR ( p_TumblingWindowClause | p_SlidingWindowClause ) ;
+ // $ANTLR start "p_WindowClause"
+ p_WindowClause: function() {
+ var retval = new XQueryParser.p_WindowClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kf = null;
+ var p_TumblingWindowClause140 = null;
+ var p_SlidingWindowClause141 = null;
+
+ var kf_tree=null;
+
+ try {
+ // XQueryParser.g:435:9: (kf= FOR ( p_TumblingWindowClause | p_SlidingWindowClause ) )
+ // XQueryParser.g:435:11: kf= FOR ( p_TumblingWindowClause | p_SlidingWindowClause )
+ root_0 = this.adaptor.nil();
+
+ kf=this.match(this.input,FOR,XQueryParser.FOLLOW_FOR_in_p_WindowClause4003); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kf_tree = this.adaptor.create(kf);
+ this.adaptor.addChild(root_0, kf_tree);
+ }
+ // XQueryParser.g:435:18: ( p_TumblingWindowClause | p_SlidingWindowClause )
+ var alt61=2;
+ var LA61_0 = this.input.LA(1);
+
+ if ( (LA61_0==TUMBLING) ) {
+ alt61=1;
+ }
+ else if ( (LA61_0==SLIDING) ) {
+ alt61=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 61, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt61) {
+ case 1 :
+ // XQueryParser.g:435:19: p_TumblingWindowClause
+ this.pushFollow(XQueryParser.FOLLOW_p_TumblingWindowClause_in_p_WindowClause4006);
+ p_TumblingWindowClause140=this.p_TumblingWindowClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TumblingWindowClause140.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:435:44: p_SlidingWindowClause
+ this.pushFollow(XQueryParser.FOLLOW_p_SlidingWindowClause_in_p_WindowClause4010);
+ p_SlidingWindowClause141=this.p_SlidingWindowClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SlidingWindowClause141.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TumblingWindowClause_return: (function() {
+ XQueryParser.p_TumblingWindowClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TumblingWindowClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:439:1: p_TumblingWindowClause : k+= TUMBLING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )? ;
+ // $ANTLR start "p_TumblingWindowClause"
+ p_TumblingWindowClause: function() {
+ var retval = new XQueryParser.p_TumblingWindowClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR142 = null;
+ var IN145 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName143 = null;
+ var p_TypeDeclaration144 = null;
+ var p_ExprSingle146 = null;
+ var p_WindowStartCondition147 = null;
+ var p_WindowEndCondition148 = null;
+
+ var DOLLAR142_tree=null;
+ var IN145_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:440:9: (k+= TUMBLING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )? )
+ // XQueryParser.g:440:11: k+= TUMBLING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )?
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,TUMBLING,XQueryParser.FOLLOW_TUMBLING_in_p_TumblingWindowClause4047); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,WINDOW,XQueryParser.FOLLOW_WINDOW_in_p_TumblingWindowClause4051); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR142=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_TumblingWindowClause4053); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR142_tree = this.adaptor.create(DOLLAR142);
+ this.adaptor.addChild(root_0, DOLLAR142_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_TumblingWindowClause4055);
+ p_VarName143=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName143.getTree());
+ // XQueryParser.g:440:50: ( p_TypeDeclaration )?
+ var alt62=2;
+ var LA62_0 = this.input.LA(1);
+
+ if ( (LA62_0==AS) ) {
+ alt62=1;
+ }
+ switch (alt62) {
+ case 1 :
+ // XQueryParser.g:440:50: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_TumblingWindowClause4057);
+ p_TypeDeclaration144=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration144.getTree());
+
+
+ break;
+
+ }
+
+ IN145=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_TumblingWindowClause4060); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ IN145_tree = this.adaptor.create(IN145);
+ this.adaptor.addChild(root_0, IN145_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TumblingWindowClause4062);
+ p_ExprSingle146=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle146.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowStartCondition_in_p_TumblingWindowClause4064);
+ p_WindowStartCondition147=this.p_WindowStartCondition();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowStartCondition147.getTree());
+ // XQueryParser.g:440:108: ( p_WindowEndCondition )?
+ var alt63=2;
+ var LA63_0 = this.input.LA(1);
+
+ if ( (LA63_0==END||LA63_0==ONLY) ) {
+ alt63=1;
+ }
+ switch (alt63) {
+ case 1 :
+ // XQueryParser.g:440:108: p_WindowEndCondition
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowEndCondition_in_p_TumblingWindowClause4066);
+ p_WindowEndCondition148=this.p_WindowEndCondition();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowEndCondition148.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SlidingWindowClause_return: (function() {
+ XQueryParser.p_SlidingWindowClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SlidingWindowClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:444:1: p_SlidingWindowClause : k+= SLIDING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )? ;
+ // $ANTLR start "p_SlidingWindowClause"
+ p_SlidingWindowClause: function() {
+ var retval = new XQueryParser.p_SlidingWindowClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR149 = null;
+ var IN152 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName150 = null;
+ var p_TypeDeclaration151 = null;
+ var p_ExprSingle153 = null;
+ var p_WindowStartCondition154 = null;
+ var p_WindowEndCondition155 = null;
+
+ var DOLLAR149_tree=null;
+ var IN152_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:445:9: (k+= SLIDING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )? )
+ // XQueryParser.g:445:11: k+= SLIDING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )?
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,SLIDING,XQueryParser.FOLLOW_SLIDING_in_p_SlidingWindowClause4096); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,WINDOW,XQueryParser.FOLLOW_WINDOW_in_p_SlidingWindowClause4100); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR149=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_SlidingWindowClause4102); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR149_tree = this.adaptor.create(DOLLAR149);
+ this.adaptor.addChild(root_0, DOLLAR149_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_SlidingWindowClause4104);
+ p_VarName150=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName150.getTree());
+ // XQueryParser.g:445:49: ( p_TypeDeclaration )?
+ var alt64=2;
+ var LA64_0 = this.input.LA(1);
+
+ if ( (LA64_0==AS) ) {
+ alt64=1;
+ }
+ switch (alt64) {
+ case 1 :
+ // XQueryParser.g:445:49: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_SlidingWindowClause4106);
+ p_TypeDeclaration151=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration151.getTree());
+
+
+ break;
+
+ }
+
+ IN152=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_SlidingWindowClause4109); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ IN152_tree = this.adaptor.create(IN152);
+ this.adaptor.addChild(root_0, IN152_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_SlidingWindowClause4111);
+ p_ExprSingle153=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle153.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowStartCondition_in_p_SlidingWindowClause4113);
+ p_WindowStartCondition154=this.p_WindowStartCondition();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowStartCondition154.getTree());
+ // XQueryParser.g:445:107: ( p_WindowEndCondition )?
+ var alt65=2;
+ var LA65_0 = this.input.LA(1);
+
+ if ( (LA65_0==END||LA65_0==ONLY) ) {
+ alt65=1;
+ }
+ switch (alt65) {
+ case 1 :
+ // XQueryParser.g:445:107: p_WindowEndCondition
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowEndCondition_in_p_SlidingWindowClause4115);
+ p_WindowEndCondition155=this.p_WindowEndCondition();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowEndCondition155.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WindowStartCondition_return: (function() {
+ XQueryParser.p_WindowStartCondition_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WindowStartCondition_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:449:1: p_WindowStartCondition : k+= START p_WindowVars k+= WHEN p_ExprSingle ;
+ // $ANTLR start "p_WindowStartCondition"
+ p_WindowStartCondition: function() {
+ var retval = new XQueryParser.p_WindowStartCondition_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_WindowVars156 = null;
+ var p_ExprSingle157 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:450:9: (k+= START p_WindowVars k+= WHEN p_ExprSingle )
+ // XQueryParser.g:450:11: k+= START p_WindowVars k+= WHEN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,START,XQueryParser.FOLLOW_START_in_p_WindowStartCondition4145); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowVars_in_p_WindowStartCondition4147);
+ p_WindowVars156=this.p_WindowVars();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowVars156.getTree());
+ k=this.match(this.input,WHEN,XQueryParser.FOLLOW_WHEN_in_p_WindowStartCondition4151); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_WindowStartCondition4153);
+ p_ExprSingle157=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle157.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WindowEndCondition_return: (function() {
+ XQueryParser.p_WindowEndCondition_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WindowEndCondition_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:454:1: p_WindowEndCondition : (k+= ONLY )? k+= END p_WindowVars k+= WHEN p_ExprSingle ;
+ // $ANTLR start "p_WindowEndCondition"
+ p_WindowEndCondition: function() {
+ var retval = new XQueryParser.p_WindowEndCondition_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_WindowVars158 = null;
+ var p_ExprSingle159 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:455:9: ( (k+= ONLY )? k+= END p_WindowVars k+= WHEN p_ExprSingle )
+ // XQueryParser.g:455:11: (k+= ONLY )? k+= END p_WindowVars k+= WHEN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:455:12: (k+= ONLY )?
+ var alt66=2;
+ var LA66_0 = this.input.LA(1);
+
+ if ( (LA66_0==ONLY) ) {
+ alt66=1;
+ }
+ switch (alt66) {
+ case 1 :
+ // XQueryParser.g:455:12: k+= ONLY
+ k=this.match(this.input,ONLY,XQueryParser.FOLLOW_ONLY_in_p_WindowEndCondition4182); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,END,XQueryParser.FOLLOW_END_in_p_WindowEndCondition4187); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowVars_in_p_WindowEndCondition4189);
+ p_WindowVars158=this.p_WindowVars();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowVars158.getTree());
+ k=this.match(this.input,WHEN,XQueryParser.FOLLOW_WHEN_in_p_WindowEndCondition4193); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_WindowEndCondition4195);
+ p_ExprSingle159=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle159.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WindowVars_return: (function() {
+ XQueryParser.p_WindowVars_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WindowVars_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:459:1: p_WindowVars : ( DOLLAR p_QName )? ( p_PositionalVar )? (k+= PREVIOUS DOLLAR p_QName )? (k+= NEXT DOLLAR p_QName )? ;
+ // $ANTLR start "p_WindowVars"
+ p_WindowVars: function() {
+ var retval = new XQueryParser.p_WindowVars_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR160 = null;
+ var DOLLAR163 = null;
+ var DOLLAR165 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName161 = null;
+ var p_PositionalVar162 = null;
+ var p_QName164 = null;
+ var p_QName166 = null;
+
+ var DOLLAR160_tree=null;
+ var DOLLAR163_tree=null;
+ var DOLLAR165_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:460:9: ( ( DOLLAR p_QName )? ( p_PositionalVar )? (k+= PREVIOUS DOLLAR p_QName )? (k+= NEXT DOLLAR p_QName )? )
+ // XQueryParser.g:460:11: ( DOLLAR p_QName )? ( p_PositionalVar )? (k+= PREVIOUS DOLLAR p_QName )? (k+= NEXT DOLLAR p_QName )?
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:460:11: ( DOLLAR p_QName )?
+ var alt67=2;
+ var LA67_0 = this.input.LA(1);
+
+ if ( (LA67_0==DOLLAR) ) {
+ alt67=1;
+ }
+ switch (alt67) {
+ case 1 :
+ // XQueryParser.g:460:12: DOLLAR p_QName
+ DOLLAR160=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_WindowVars4223); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR160_tree = this.adaptor.create(DOLLAR160);
+ this.adaptor.addChild(root_0, DOLLAR160_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_WindowVars4225);
+ p_QName161=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName161.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:460:29: ( p_PositionalVar )?
+ var alt68=2;
+ var LA68_0 = this.input.LA(1);
+
+ if ( (LA68_0==AT) ) {
+ alt68=1;
+ }
+ switch (alt68) {
+ case 1 :
+ // XQueryParser.g:460:29: p_PositionalVar
+ this.pushFollow(XQueryParser.FOLLOW_p_PositionalVar_in_p_WindowVars4229);
+ p_PositionalVar162=this.p_PositionalVar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PositionalVar162.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:460:46: (k+= PREVIOUS DOLLAR p_QName )?
+ var alt69=2;
+ var LA69_0 = this.input.LA(1);
+
+ if ( (LA69_0==PREVIOUS) ) {
+ alt69=1;
+ }
+ switch (alt69) {
+ case 1 :
+ // XQueryParser.g:460:47: k+= PREVIOUS DOLLAR p_QName
+ k=this.match(this.input,PREVIOUS,XQueryParser.FOLLOW_PREVIOUS_in_p_WindowVars4235); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR163=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_WindowVars4237); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR163_tree = this.adaptor.create(DOLLAR163);
+ this.adaptor.addChild(root_0, DOLLAR163_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_WindowVars4239);
+ p_QName164=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName164.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:460:76: (k+= NEXT DOLLAR p_QName )?
+ var alt70=2;
+ var LA70_0 = this.input.LA(1);
+
+ if ( (LA70_0==NEXT) ) {
+ alt70=1;
+ }
+ switch (alt70) {
+ case 1 :
+ // XQueryParser.g:460:77: k+= NEXT DOLLAR p_QName
+ k=this.match(this.input,NEXT,XQueryParser.FOLLOW_NEXT_in_p_WindowVars4246); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR165=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_WindowVars4248); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR165_tree = this.adaptor.create(DOLLAR165);
+ this.adaptor.addChild(root_0, DOLLAR165_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_WindowVars4250);
+ p_QName166=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName166.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CountClause_return: (function() {
+ XQueryParser.p_CountClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CountClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:473:1: p_CountClause : kc+= COUNT DOLLAR p_VarName ;
+ // $ANTLR start "p_CountClause"
+ p_CountClause: function() {
+ var retval = new XQueryParser.p_CountClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR167 = null;
+ var kc = null;
+ var list_kc=null;
+ var p_VarName168 = null;
+
+ var DOLLAR167_tree=null;
+ var kc_tree=null;
+
+ try {
+ // XQueryParser.g:474:9: (kc+= COUNT DOLLAR p_VarName )
+ // XQueryParser.g:474:11: kc+= COUNT DOLLAR p_VarName
+ root_0 = this.adaptor.nil();
+
+ kc=this.match(this.input,COUNT,XQueryParser.FOLLOW_COUNT_in_p_CountClause4290); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ if (org.antlr.lang.isNull(list_kc)) list_kc = [];
+ list_kc.push(kc);
+
+ DOLLAR167=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_CountClause4292); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR167_tree = this.adaptor.create(DOLLAR167);
+ this.adaptor.addChild(root_0, DOLLAR167_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_CountClause4294);
+ p_VarName168=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName168.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WhereClause_return: (function() {
+ XQueryParser.p_WhereClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WhereClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:478:1: p_WhereClause : kw+= WHERE p_ExprSingle ;
+ // $ANTLR start "p_WhereClause"
+ p_WhereClause: function() {
+ var retval = new XQueryParser.p_WhereClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kw = null;
+ var list_kw=null;
+ var p_ExprSingle169 = null;
+
+ var kw_tree=null;
+
+ try {
+ // XQueryParser.g:479:9: (kw+= WHERE p_ExprSingle )
+ // XQueryParser.g:479:11: kw+= WHERE p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ kw=this.match(this.input,WHERE,XQueryParser.FOLLOW_WHERE_in_p_WhereClause4330); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kw_tree = this.adaptor.create(kw);
+ this.adaptor.addChild(root_0, kw_tree);
+ }
+ if (org.antlr.lang.isNull(list_kw)) list_kw = [];
+ list_kw.push(kw);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_WhereClause4332);
+ p_ExprSingle169=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle169.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_GroupByClause_return: (function() {
+ XQueryParser.p_GroupByClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_GroupByClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:483:1: p_GroupByClause : k+= GROUP k+= BY p_GroupingSpecList ;
+ // $ANTLR start "p_GroupByClause"
+ p_GroupByClause: function() {
+ var retval = new XQueryParser.p_GroupByClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_GroupingSpecList170 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:484:9: (k+= GROUP k+= BY p_GroupingSpecList )
+ // XQueryParser.g:484:13: k+= GROUP k+= BY p_GroupingSpecList
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,GROUP,XQueryParser.FOLLOW_GROUP_in_p_GroupByClause4362); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,BY,XQueryParser.FOLLOW_BY_in_p_GroupByClause4366); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_GroupingSpecList_in_p_GroupByClause4368);
+ p_GroupingSpecList170=this.p_GroupingSpecList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_GroupingSpecList170.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_GroupingSpecList_return: (function() {
+ XQueryParser.p_GroupingSpecList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_GroupingSpecList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:488:1: p_GroupingSpecList : p_GroupingSpec ( COMMA p_GroupingSpec )* ;
+ // $ANTLR start "p_GroupingSpecList"
+ p_GroupingSpecList: function() {
+ var retval = new XQueryParser.p_GroupingSpecList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA172 = null;
+ var p_GroupingSpec171 = null;
+ var p_GroupingSpec173 = null;
+
+ var COMMA172_tree=null;
+
+ try {
+ // XQueryParser.g:489:9: ( p_GroupingSpec ( COMMA p_GroupingSpec )* )
+ // XQueryParser.g:489:13: p_GroupingSpec ( COMMA p_GroupingSpec )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_GroupingSpec_in_p_GroupingSpecList4397);
+ p_GroupingSpec171=this.p_GroupingSpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_GroupingSpec171.getTree());
+ // XQueryParser.g:489:28: ( COMMA p_GroupingSpec )*
+ loop71:
+ do {
+ var alt71=2;
+ var LA71_0 = this.input.LA(1);
+
+ if ( (LA71_0==COMMA) ) {
+ alt71=1;
+ }
+
+
+ switch (alt71) {
+ case 1 :
+ // XQueryParser.g:489:29: COMMA p_GroupingSpec
+ COMMA172=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_GroupingSpecList4400); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA172_tree = this.adaptor.create(COMMA172);
+ this.adaptor.addChild(root_0, COMMA172_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_GroupingSpec_in_p_GroupingSpecList4402);
+ p_GroupingSpec173=this.p_GroupingSpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_GroupingSpec173.getTree());
+
+
+ break;
+
+ default :
+ break loop71;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_GroupingSpec_return: (function() {
+ XQueryParser.p_GroupingSpec_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_GroupingSpec_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:493:1: p_GroupingSpec : DOLLAR p_VarName (kc= COLLATION p_StringLiteral )? ;
+ // $ANTLR start "p_GroupingSpec"
+ p_GroupingSpec: function() {
+ var retval = new XQueryParser.p_GroupingSpec_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var DOLLAR174 = null;
+ var p_VarName175 = null;
+ var p_StringLiteral176 = null;
+
+ var kc_tree=null;
+ var DOLLAR174_tree=null;
+
+ try {
+ // XQueryParser.g:494:9: ( DOLLAR p_VarName (kc= COLLATION p_StringLiteral )? )
+ // XQueryParser.g:494:13: DOLLAR p_VarName (kc= COLLATION p_StringLiteral )?
+ root_0 = this.adaptor.nil();
+
+ DOLLAR174=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_GroupingSpec4432); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR174_tree = this.adaptor.create(DOLLAR174);
+ this.adaptor.addChild(root_0, DOLLAR174_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_GroupingSpec4434);
+ p_VarName175=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName175.getTree());
+ // XQueryParser.g:494:30: (kc= COLLATION p_StringLiteral )?
+ var alt72=2;
+ var LA72_0 = this.input.LA(1);
+
+ if ( (LA72_0==COLLATION) ) {
+ alt72=1;
+ }
+ switch (alt72) {
+ case 1 :
+ // XQueryParser.g:494:31: kc= COLLATION p_StringLiteral
+ kc=this.match(this.input,COLLATION,XQueryParser.FOLLOW_COLLATION_in_p_GroupingSpec4439); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_GroupingSpec4441);
+ p_StringLiteral176=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral176.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrderByClause_return: (function() {
+ XQueryParser.p_OrderByClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrderByClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:498:1: p_OrderByClause : ( (k+= ORDER k+= BY ) | (k+= STABLE k+= ORDER k+= BY ) ) p_OrderSpecList ;
+ // $ANTLR start "p_OrderByClause"
+ p_OrderByClause: function() {
+ var retval = new XQueryParser.p_OrderByClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_OrderSpecList177 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:499:9: ( ( (k+= ORDER k+= BY ) | (k+= STABLE k+= ORDER k+= BY ) ) p_OrderSpecList )
+ // XQueryParser.g:499:13: ( (k+= ORDER k+= BY ) | (k+= STABLE k+= ORDER k+= BY ) ) p_OrderSpecList
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:499:13: ( (k+= ORDER k+= BY ) | (k+= STABLE k+= ORDER k+= BY ) )
+ var alt73=2;
+ var LA73_0 = this.input.LA(1);
+
+ if ( (LA73_0==ORDER) ) {
+ alt73=1;
+ }
+ else if ( (LA73_0==STABLE) ) {
+ alt73=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 73, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt73) {
+ case 1 :
+ // XQueryParser.g:499:14: (k+= ORDER k+= BY )
+ // XQueryParser.g:499:14: (k+= ORDER k+= BY )
+ // XQueryParser.g:499:15: k+= ORDER k+= BY
+ k=this.match(this.input,ORDER,XQueryParser.FOLLOW_ORDER_in_p_OrderByClause4476); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,BY,XQueryParser.FOLLOW_BY_in_p_OrderByClause4480); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:499:33: (k+= STABLE k+= ORDER k+= BY )
+ // XQueryParser.g:499:33: (k+= STABLE k+= ORDER k+= BY )
+ // XQueryParser.g:499:34: k+= STABLE k+= ORDER k+= BY
+ k=this.match(this.input,STABLE,XQueryParser.FOLLOW_STABLE_in_p_OrderByClause4488); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,ORDER,XQueryParser.FOLLOW_ORDER_in_p_OrderByClause4492); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,BY,XQueryParser.FOLLOW_BY_in_p_OrderByClause4496); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderSpecList_in_p_OrderByClause4500);
+ p_OrderSpecList177=this.p_OrderSpecList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderSpecList177.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrderSpecList_return: (function() {
+ XQueryParser.p_OrderSpecList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrderSpecList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:503:1: p_OrderSpecList : p_OrderSpec ( COMMA p_OrderSpec )* ;
+ // $ANTLR start "p_OrderSpecList"
+ p_OrderSpecList: function() {
+ var retval = new XQueryParser.p_OrderSpecList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA179 = null;
+ var p_OrderSpec178 = null;
+ var p_OrderSpec180 = null;
+
+ var COMMA179_tree=null;
+
+ try {
+ // XQueryParser.g:504:9: ( p_OrderSpec ( COMMA p_OrderSpec )* )
+ // XQueryParser.g:504:13: p_OrderSpec ( COMMA p_OrderSpec )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderSpec_in_p_OrderSpecList4529);
+ p_OrderSpec178=this.p_OrderSpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderSpec178.getTree());
+ // XQueryParser.g:504:25: ( COMMA p_OrderSpec )*
+ loop74:
+ do {
+ var alt74=2;
+ var LA74_0 = this.input.LA(1);
+
+ if ( (LA74_0==COMMA) ) {
+ alt74=1;
+ }
+
+
+ switch (alt74) {
+ case 1 :
+ // XQueryParser.g:504:26: COMMA p_OrderSpec
+ COMMA179=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_OrderSpecList4532); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA179_tree = this.adaptor.create(COMMA179);
+ this.adaptor.addChild(root_0, COMMA179_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderSpec_in_p_OrderSpecList4534);
+ p_OrderSpec180=this.p_OrderSpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderSpec180.getTree());
+
+
+ break;
+
+ default :
+ break loop74;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrderSpec_return: (function() {
+ XQueryParser.p_OrderSpec_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrderSpec_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:508:1: p_OrderSpec : p_ExprSingle p_OrderModifier ;
+ // $ANTLR start "p_OrderSpec"
+ p_OrderSpec: function() {
+ var retval = new XQueryParser.p_OrderSpec_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ExprSingle181 = null;
+ var p_OrderModifier182 = null;
+
+
+ try {
+ // XQueryParser.g:509:9: ( p_ExprSingle p_OrderModifier )
+ // XQueryParser.g:509:13: p_ExprSingle p_OrderModifier
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_OrderSpec4564);
+ p_ExprSingle181=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle181.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderModifier_in_p_OrderSpec4566);
+ p_OrderModifier182=this.p_OrderModifier();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderModifier182.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrderModifier_return: (function() {
+ XQueryParser.p_OrderModifier_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrderModifier_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:513:1: p_OrderModifier : (ka= ASCENDING | k+= DESCENDING )? (k+= EMPTY (k+= GREATEST | k+= LEAST ) )? (k+= COLLATION p_StringLiteral )? ;
+ // $ANTLR start "p_OrderModifier"
+ p_OrderModifier: function() {
+ var retval = new XQueryParser.p_OrderModifier_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ka = null;
+ var k = null;
+ var list_k=null;
+ var p_StringLiteral183 = null;
+
+ var ka_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:514:9: ( (ka= ASCENDING | k+= DESCENDING )? (k+= EMPTY (k+= GREATEST | k+= LEAST ) )? (k+= COLLATION p_StringLiteral )? )
+ // XQueryParser.g:514:11: (ka= ASCENDING | k+= DESCENDING )? (k+= EMPTY (k+= GREATEST | k+= LEAST ) )? (k+= COLLATION p_StringLiteral )?
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:514:11: (ka= ASCENDING | k+= DESCENDING )?
+ var alt75=3;
+ var LA75_0 = this.input.LA(1);
+
+ if ( (LA75_0==ASCENDING) ) {
+ alt75=1;
+ }
+ else if ( (LA75_0==DESCENDING) ) {
+ alt75=2;
+ }
+ switch (alt75) {
+ case 1 :
+ // XQueryParser.g:514:12: ka= ASCENDING
+ ka=this.match(this.input,ASCENDING,XQueryParser.FOLLOW_ASCENDING_in_p_OrderModifier4595); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:514:27: k+= DESCENDING
+ k=this.match(this.input,DESCENDING,XQueryParser.FOLLOW_DESCENDING_in_p_OrderModifier4601); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:514:43: (k+= EMPTY (k+= GREATEST | k+= LEAST ) )?
+ var alt77=2;
+ var LA77_0 = this.input.LA(1);
+
+ if ( (LA77_0==EMPTY) ) {
+ alt77=1;
+ }
+ switch (alt77) {
+ case 1 :
+ // XQueryParser.g:514:44: k+= EMPTY (k+= GREATEST | k+= LEAST )
+ k=this.match(this.input,EMPTY,XQueryParser.FOLLOW_EMPTY_in_p_OrderModifier4608); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:514:53: (k+= GREATEST | k+= LEAST )
+ var alt76=2;
+ var LA76_0 = this.input.LA(1);
+
+ if ( (LA76_0==GREATEST) ) {
+ alt76=1;
+ }
+ else if ( (LA76_0==LEAST) ) {
+ alt76=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 76, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt76) {
+ case 1 :
+ // XQueryParser.g:514:54: k+= GREATEST
+ k=this.match(this.input,GREATEST,XQueryParser.FOLLOW_GREATEST_in_p_OrderModifier4613); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:514:68: k+= LEAST
+ k=this.match(this.input,LEAST,XQueryParser.FOLLOW_LEAST_in_p_OrderModifier4619); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:514:80: (k+= COLLATION p_StringLiteral )?
+ var alt78=2;
+ var LA78_0 = this.input.LA(1);
+
+ if ( (LA78_0==COLLATION) ) {
+ alt78=1;
+ }
+ switch (alt78) {
+ case 1 :
+ // XQueryParser.g:514:81: k+= COLLATION p_StringLiteral
+ k=this.match(this.input,COLLATION,XQueryParser.FOLLOW_COLLATION_in_p_OrderModifier4627); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_OrderModifier4629);
+ p_StringLiteral183=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral183.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ReturnClause_return: (function() {
+ XQueryParser.p_ReturnClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ReturnClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:518:1: p_ReturnClause : kr= RETURN p_ExprSingle ;
+ // $ANTLR start "p_ReturnClause"
+ p_ReturnClause: function() {
+ var retval = new XQueryParser.p_ReturnClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kr = null;
+ var p_ExprSingle184 = null;
+
+ var kr_tree=null;
+
+ try {
+ // XQueryParser.g:519:9: (kr= RETURN p_ExprSingle )
+ // XQueryParser.g:519:11: kr= RETURN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ kr=this.match(this.input,RETURN,XQueryParser.FOLLOW_RETURN_in_p_ReturnClause4660); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kr_tree = this.adaptor.create(kr);
+ this.adaptor.addChild(root_0, kr_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ReturnClause4662);
+ p_ExprSingle184=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle184.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_QuantifiedExpr_return: (function() {
+ XQueryParser.p_QuantifiedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_QuantifiedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:523:1: p_QuantifiedExpr : (k+= SOME | k+= EVERY ) DOLLAR p_VarName ( p_TypeDeclaration )? k+= IN p_ExprSingle ( COMMA DOLLAR p_QName ( p_TypeDeclaration )? k+= IN p_ExprSingle )* k+= SATISFIES p_ExprSingle ;
+ // $ANTLR start "p_QuantifiedExpr"
+ p_QuantifiedExpr: function() {
+ var retval = new XQueryParser.p_QuantifiedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR185 = null;
+ var COMMA189 = null;
+ var DOLLAR190 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName186 = null;
+ var p_TypeDeclaration187 = null;
+ var p_ExprSingle188 = null;
+ var p_QName191 = null;
+ var p_TypeDeclaration192 = null;
+ var p_ExprSingle193 = null;
+ var p_ExprSingle194 = null;
+
+ var DOLLAR185_tree=null;
+ var COMMA189_tree=null;
+ var DOLLAR190_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:524:9: ( (k+= SOME | k+= EVERY ) DOLLAR p_VarName ( p_TypeDeclaration )? k+= IN p_ExprSingle ( COMMA DOLLAR p_QName ( p_TypeDeclaration )? k+= IN p_ExprSingle )* k+= SATISFIES p_ExprSingle )
+ // XQueryParser.g:524:13: (k+= SOME | k+= EVERY ) DOLLAR p_VarName ( p_TypeDeclaration )? k+= IN p_ExprSingle ( COMMA DOLLAR p_QName ( p_TypeDeclaration )? k+= IN p_ExprSingle )* k+= SATISFIES p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:524:13: (k+= SOME | k+= EVERY )
+ var alt79=2;
+ var LA79_0 = this.input.LA(1);
+
+ if ( (LA79_0==SOME) ) {
+ alt79=1;
+ }
+ else if ( (LA79_0==EVERY) ) {
+ alt79=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 79, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt79) {
+ case 1 :
+ // XQueryParser.g:524:14: k+= SOME
+ k=this.match(this.input,SOME,XQueryParser.FOLLOW_SOME_in_p_QuantifiedExpr4693); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:524:24: k+= EVERY
+ k=this.match(this.input,EVERY,XQueryParser.FOLLOW_EVERY_in_p_QuantifiedExpr4699); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ DOLLAR185=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_QuantifiedExpr4702); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR185_tree = this.adaptor.create(DOLLAR185);
+ this.adaptor.addChild(root_0, DOLLAR185_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_QuantifiedExpr4704);
+ p_VarName186=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName186.getTree());
+ // XQueryParser.g:524:51: ( p_TypeDeclaration )?
+ var alt80=2;
+ var LA80_0 = this.input.LA(1);
+
+ if ( (LA80_0==AS) ) {
+ alt80=1;
+ }
+ switch (alt80) {
+ case 1 :
+ // XQueryParser.g:524:51: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_QuantifiedExpr4706);
+ p_TypeDeclaration187=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration187.getTree());
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_QuantifiedExpr4711); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4713);
+ p_ExprSingle188=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle188.getTree());
+ // XQueryParser.g:524:89: ( COMMA DOLLAR p_QName ( p_TypeDeclaration )? k+= IN p_ExprSingle )*
+ loop82:
+ do {
+ var alt82=2;
+ var LA82_0 = this.input.LA(1);
+
+ if ( (LA82_0==COMMA) ) {
+ alt82=1;
+ }
+
+
+ switch (alt82) {
+ case 1 :
+ // XQueryParser.g:524:90: COMMA DOLLAR p_QName ( p_TypeDeclaration )? k+= IN p_ExprSingle
+ COMMA189=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_QuantifiedExpr4716); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA189_tree = this.adaptor.create(COMMA189);
+ this.adaptor.addChild(root_0, COMMA189_tree);
+ }
+ DOLLAR190=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_QuantifiedExpr4718); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR190_tree = this.adaptor.create(DOLLAR190);
+ this.adaptor.addChild(root_0, DOLLAR190_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_QuantifiedExpr4720);
+ p_QName191=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName191.getTree());
+ // XQueryParser.g:524:111: ( p_TypeDeclaration )?
+ var alt81=2;
+ var LA81_0 = this.input.LA(1);
+
+ if ( (LA81_0==AS) ) {
+ alt81=1;
+ }
+ switch (alt81) {
+ case 1 :
+ // XQueryParser.g:524:111: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_QuantifiedExpr4722);
+ p_TypeDeclaration192=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration192.getTree());
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_QuantifiedExpr4727); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4729);
+ p_ExprSingle193=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle193.getTree());
+
+
+ break;
+
+ default :
+ break loop82;
+ }
+ } while (true);
+
+ k=this.match(this.input,SATISFIES,XQueryParser.FOLLOW_SATISFIES_in_p_QuantifiedExpr4735); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4737);
+ p_ExprSingle194=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle194.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TypeswitchExpr_return: (function() {
+ XQueryParser.p_TypeswitchExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TypeswitchExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:528:1: p_TypeswitchExpr : k+= TYPESWITCH LPAREN pm_Expr RPAREN ( p_CaseClause )+ k+= DEFAULT ( DOLLAR p_VarName )? k+= RETURN p_ExprSingle ;
+ // $ANTLR start "p_TypeswitchExpr"
+ p_TypeswitchExpr: function() {
+ var retval = new XQueryParser.p_TypeswitchExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN195 = null;
+ var RPAREN197 = null;
+ var DOLLAR199 = null;
+ var k = null;
+ var list_k=null;
+ var pm_Expr196 = null;
+ var p_CaseClause198 = null;
+ var p_VarName200 = null;
+ var p_ExprSingle201 = null;
+
+ var LPAREN195_tree=null;
+ var RPAREN197_tree=null;
+ var DOLLAR199_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:529:9: (k+= TYPESWITCH LPAREN pm_Expr RPAREN ( p_CaseClause )+ k+= DEFAULT ( DOLLAR p_VarName )? k+= RETURN p_ExprSingle )
+ // XQueryParser.g:529:11: k+= TYPESWITCH LPAREN pm_Expr RPAREN ( p_CaseClause )+ k+= DEFAULT ( DOLLAR p_VarName )? k+= RETURN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,TYPESWITCH,XQueryParser.FOLLOW_TYPESWITCH_in_p_TypeswitchExpr4766); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ LPAREN195=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_TypeswitchExpr4768); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN195_tree = this.adaptor.create(LPAREN195);
+ this.adaptor.addChild(root_0, LPAREN195_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_TypeswitchExpr4770);
+ pm_Expr196=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr196.getTree());
+ RPAREN197=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_TypeswitchExpr4772); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN197_tree = this.adaptor.create(RPAREN197);
+ this.adaptor.addChild(root_0, RPAREN197_tree);
+ }
+ // XQueryParser.g:529:47: ( p_CaseClause )+
+ var cnt83=0;
+ loop83:
+ do {
+ var alt83=2;
+ var LA83_0 = this.input.LA(1);
+
+ if ( (LA83_0==CASE) ) {
+ alt83=1;
+ }
+
+
+ switch (alt83) {
+ case 1 :
+ // XQueryParser.g:529:47: p_CaseClause
+ this.pushFollow(XQueryParser.FOLLOW_p_CaseClause_in_p_TypeswitchExpr4774);
+ p_CaseClause198=this.p_CaseClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CaseClause198.getTree());
+
+
+ break;
+
+ default :
+ if ( cnt83 >= 1 ) {
+ break loop83;
+ }
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var eee = new org.antlr.runtime.EarlyExitException(83, this.input);
+ throw eee;
+ }
+ cnt83++;
+ } while (true);
+
+ k=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_p_TypeswitchExpr4779); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:529:72: ( DOLLAR p_VarName )?
+ var alt84=2;
+ var LA84_0 = this.input.LA(1);
+
+ if ( (LA84_0==DOLLAR) ) {
+ alt84=1;
+ }
+ switch (alt84) {
+ case 1 :
+ // XQueryParser.g:529:73: DOLLAR p_VarName
+ DOLLAR199=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_TypeswitchExpr4782); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR199_tree = this.adaptor.create(DOLLAR199);
+ this.adaptor.addChild(root_0, DOLLAR199_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_TypeswitchExpr4784);
+ p_VarName200=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName200.getTree());
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,RETURN,XQueryParser.FOLLOW_RETURN_in_p_TypeswitchExpr4790); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TypeswitchExpr4792);
+ p_ExprSingle201=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle201.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CaseClause_return: (function() {
+ XQueryParser.p_CaseClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CaseClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:533:1: p_CaseClause : k+= CASE ( DOLLAR p_VarName k+= AS )? p_SequenceType k+= RETURN p_ExprSingle ;
+ // $ANTLR start "p_CaseClause"
+ p_CaseClause: function() {
+ var retval = new XQueryParser.p_CaseClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR202 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName203 = null;
+ var p_SequenceType204 = null;
+ var p_ExprSingle205 = null;
+
+ var DOLLAR202_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:534:9: (k+= CASE ( DOLLAR p_VarName k+= AS )? p_SequenceType k+= RETURN p_ExprSingle )
+ // XQueryParser.g:534:11: k+= CASE ( DOLLAR p_VarName k+= AS )? p_SequenceType k+= RETURN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,CASE,XQueryParser.FOLLOW_CASE_in_p_CaseClause4821); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:534:19: ( DOLLAR p_VarName k+= AS )?
+ var alt85=2;
+ var LA85_0 = this.input.LA(1);
+
+ if ( (LA85_0==DOLLAR) ) {
+ alt85=1;
+ }
+ switch (alt85) {
+ case 1 :
+ // XQueryParser.g:534:20: DOLLAR p_VarName k+= AS
+ DOLLAR202=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_CaseClause4824); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR202_tree = this.adaptor.create(DOLLAR202);
+ this.adaptor.addChild(root_0, DOLLAR202_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_CaseClause4826);
+ p_VarName203=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName203.getTree());
+ k=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_CaseClause4830); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_SequenceType_in_p_CaseClause4834);
+ p_SequenceType204=this.p_SequenceType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SequenceType204.getTree());
+ k=this.match(this.input,RETURN,XQueryParser.FOLLOW_RETURN_in_p_CaseClause4838); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_CaseClause4840);
+ p_ExprSingle205=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle205.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IfExpr_return: (function() {
+ XQueryParser.p_IfExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IfExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:538:1: p_IfExpr : k+= IF LPAREN pm_Expr RPAREN k+= THEN p_ExprSingle k+= ELSE p_ExprSingle ;
+ // $ANTLR start "p_IfExpr"
+ p_IfExpr: function() {
+ var retval = new XQueryParser.p_IfExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN206 = null;
+ var RPAREN208 = null;
+ var k = null;
+ var list_k=null;
+ var pm_Expr207 = null;
+ var p_ExprSingle209 = null;
+ var p_ExprSingle210 = null;
+
+ var LPAREN206_tree=null;
+ var RPAREN208_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:539:9: (k+= IF LPAREN pm_Expr RPAREN k+= THEN p_ExprSingle k+= ELSE p_ExprSingle )
+ // XQueryParser.g:539:11: k+= IF LPAREN pm_Expr RPAREN k+= THEN p_ExprSingle k+= ELSE p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,IF,XQueryParser.FOLLOW_IF_in_p_IfExpr4869); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ LPAREN206=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_IfExpr4871); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN206_tree = this.adaptor.create(LPAREN206);
+ this.adaptor.addChild(root_0, LPAREN206_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_IfExpr4873);
+ pm_Expr207=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr207.getTree());
+ RPAREN208=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_IfExpr4875); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN208_tree = this.adaptor.create(RPAREN208);
+ this.adaptor.addChild(root_0, RPAREN208_tree);
+ }
+ k=this.match(this.input,THEN,XQueryParser.FOLLOW_THEN_in_p_IfExpr4879); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_IfExpr4881);
+ p_ExprSingle209=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle209.getTree());
+ k=this.match(this.input,ELSE,XQueryParser.FOLLOW_ELSE_in_p_IfExpr4885); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_IfExpr4887);
+ p_ExprSingle210=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle210.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrExpr_return: (function() {
+ XQueryParser.p_OrExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:543:1: p_OrExpr : p_AndExpr (k= OR p_AndExpr )* ;
+ // $ANTLR start "p_OrExpr"
+ p_OrExpr: function() {
+ var retval = new XQueryParser.p_OrExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var p_AndExpr211 = null;
+ var p_AndExpr212 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:544:9: ( p_AndExpr (k= OR p_AndExpr )* )
+ // XQueryParser.g:544:11: p_AndExpr (k= OR p_AndExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AndExpr_in_p_OrExpr4914);
+ p_AndExpr211=this.p_AndExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AndExpr211.getTree());
+ // XQueryParser.g:544:21: (k= OR p_AndExpr )*
+ loop86:
+ do {
+ var alt86=2;
+ var LA86_0 = this.input.LA(1);
+
+ if ( (LA86_0==OR) ) {
+ alt86=1;
+ }
+
+
+ switch (alt86) {
+ case 1 :
+ // XQueryParser.g:544:23: k= OR p_AndExpr
+ k=this.match(this.input,OR,XQueryParser.FOLLOW_OR_in_p_OrExpr4920); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AndExpr_in_p_OrExpr4923);
+ p_AndExpr212=this.p_AndExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AndExpr212.getTree());
+
+
+ break;
+
+ default :
+ break loop86;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AndExpr_return: (function() {
+ XQueryParser.p_AndExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AndExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:548:1: p_AndExpr : p_ComparisonExpr (k= AND p_ComparisonExpr )* ;
+ // $ANTLR start "p_AndExpr"
+ p_AndExpr: function() {
+ var retval = new XQueryParser.p_AndExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var p_ComparisonExpr213 = null;
+ var p_ComparisonExpr214 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:549:9: ( p_ComparisonExpr (k= AND p_ComparisonExpr )* )
+ // XQueryParser.g:549:13: p_ComparisonExpr (k= AND p_ComparisonExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ComparisonExpr_in_p_AndExpr4954);
+ p_ComparisonExpr213=this.p_ComparisonExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ComparisonExpr213.getTree());
+ // XQueryParser.g:549:30: (k= AND p_ComparisonExpr )*
+ loop87:
+ do {
+ var alt87=2;
+ var LA87_0 = this.input.LA(1);
+
+ if ( (LA87_0==AND) ) {
+ alt87=1;
+ }
+
+
+ switch (alt87) {
+ case 1 :
+ // XQueryParser.g:549:32: k= AND p_ComparisonExpr
+ k=this.match(this.input,AND,XQueryParser.FOLLOW_AND_in_p_AndExpr4960); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ComparisonExpr_in_p_AndExpr4963);
+ p_ComparisonExpr214=this.p_ComparisonExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ComparisonExpr214.getTree());
+
+
+ break;
+
+ default :
+ break loop87;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ComparisonExpr_return: (function() {
+ XQueryParser.p_ComparisonExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ComparisonExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:553:1: p_ComparisonExpr : p_RangeExpr ( ( p_ValueComp | p_GeneralComp | p_NodeComp ) p_RangeExpr )? ;
+ // $ANTLR start "p_ComparisonExpr"
+ p_ComparisonExpr: function() {
+ var retval = new XQueryParser.p_ComparisonExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_RangeExpr215 = null;
+ var p_ValueComp216 = null;
+ var p_GeneralComp217 = null;
+ var p_NodeComp218 = null;
+ var p_RangeExpr219 = null;
+
+
+ try {
+ // XQueryParser.g:554:9: ( p_RangeExpr ( ( p_ValueComp | p_GeneralComp | p_NodeComp ) p_RangeExpr )? )
+ // XQueryParser.g:554:13: p_RangeExpr ( ( p_ValueComp | p_GeneralComp | p_NodeComp ) p_RangeExpr )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_RangeExpr_in_p_ComparisonExpr4994);
+ p_RangeExpr215=this.p_RangeExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RangeExpr215.getTree());
+ // XQueryParser.g:554:25: ( ( p_ValueComp | p_GeneralComp | p_NodeComp ) p_RangeExpr )?
+ var alt89=2;
+ var LA89_0 = this.input.LA(1);
+
+ if ( (LA89_0==EQ||LA89_0==GE||LA89_0==GT||LA89_0==IS||LA89_0==LE||LA89_0==LT||LA89_0==NE||LA89_0==EQUAL||LA89_0==NOTEQUAL||(LA89_0>=SMALLER && LA89_0<=GREATER_GREATER)) ) {
+ alt89=1;
+ }
+ switch (alt89) {
+ case 1 :
+ // XQueryParser.g:554:27: ( p_ValueComp | p_GeneralComp | p_NodeComp ) p_RangeExpr
+ // XQueryParser.g:554:27: ( p_ValueComp | p_GeneralComp | p_NodeComp )
+ var alt88=3;
+ switch ( this.input.LA(1) ) {
+ case EQ:
+ case GE:
+ case GT:
+ case LE:
+ case LT:
+ case NE:
+ alt88=1;
+ break;
+ case EQUAL:
+ case NOTEQUAL:
+ case SMALLER:
+ case GREATER:
+ case SMALLEREQ:
+ case GREATEREQ:
+ alt88=2;
+ break;
+ case IS:
+ case SMALLER_SMALLER:
+ case GREATER_GREATER:
+ alt88=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 88, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt88) {
+ case 1 :
+ // XQueryParser.g:554:28: p_ValueComp
+ this.pushFollow(XQueryParser.FOLLOW_p_ValueComp_in_p_ComparisonExpr4999);
+ p_ValueComp216=this.p_ValueComp();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ValueComp216.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:554:42: p_GeneralComp
+ this.pushFollow(XQueryParser.FOLLOW_p_GeneralComp_in_p_ComparisonExpr5003);
+ p_GeneralComp217=this.p_GeneralComp();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_GeneralComp217.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:554:58: p_NodeComp
+ this.pushFollow(XQueryParser.FOLLOW_p_NodeComp_in_p_ComparisonExpr5007);
+ p_NodeComp218=this.p_NodeComp();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NodeComp218.getTree());
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_RangeExpr_in_p_ComparisonExpr5010);
+ p_RangeExpr219=this.p_RangeExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RangeExpr219.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_RangeExpr_return: (function() {
+ XQueryParser.p_RangeExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_RangeExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:558:1: p_RangeExpr : p_AdditiveExpr (k= TO p_AdditiveExpr )? ;
+ // $ANTLR start "p_RangeExpr"
+ p_RangeExpr: function() {
+ var retval = new XQueryParser.p_RangeExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var p_AdditiveExpr220 = null;
+ var p_AdditiveExpr221 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:559:9: ( p_AdditiveExpr (k= TO p_AdditiveExpr )? )
+ // XQueryParser.g:559:13: p_AdditiveExpr (k= TO p_AdditiveExpr )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AdditiveExpr_in_p_RangeExpr5041);
+ p_AdditiveExpr220=this.p_AdditiveExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AdditiveExpr220.getTree());
+ // XQueryParser.g:559:28: (k= TO p_AdditiveExpr )?
+ var alt90=2;
+ var LA90_0 = this.input.LA(1);
+
+ if ( (LA90_0==TO) ) {
+ alt90=1;
+ }
+ switch (alt90) {
+ case 1 :
+ // XQueryParser.g:559:30: k= TO p_AdditiveExpr
+ k=this.match(this.input,TO,XQueryParser.FOLLOW_TO_in_p_RangeExpr5047); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AdditiveExpr_in_p_RangeExpr5050);
+ p_AdditiveExpr221=this.p_AdditiveExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AdditiveExpr221.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AdditiveExpr_return: (function() {
+ XQueryParser.p_AdditiveExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AdditiveExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:563:1: p_AdditiveExpr : p_MultiplicativeExpr ( ( PLUS | MINUS ) p_MultiplicativeExpr )* ;
+ // $ANTLR start "p_AdditiveExpr"
+ p_AdditiveExpr: function() {
+ var retval = new XQueryParser.p_AdditiveExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set223 = null;
+ var p_MultiplicativeExpr222 = null;
+ var p_MultiplicativeExpr224 = null;
+
+ var set223_tree=null;
+
+ try {
+ // XQueryParser.g:564:9: ( p_MultiplicativeExpr ( ( PLUS | MINUS ) p_MultiplicativeExpr )* )
+ // XQueryParser.g:564:13: p_MultiplicativeExpr ( ( PLUS | MINUS ) p_MultiplicativeExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_MultiplicativeExpr_in_p_AdditiveExpr5081);
+ p_MultiplicativeExpr222=this.p_MultiplicativeExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_MultiplicativeExpr222.getTree());
+ // XQueryParser.g:564:34: ( ( PLUS | MINUS ) p_MultiplicativeExpr )*
+ loop91:
+ do {
+ var alt91=2;
+ var LA91_0 = this.input.LA(1);
+
+ if ( ((LA91_0>=PLUS && LA91_0<=MINUS)) ) {
+ alt91=1;
+ }
+
+
+ switch (alt91) {
+ case 1 :
+ // XQueryParser.g:564:36: ( PLUS | MINUS ) p_MultiplicativeExpr
+ set223=this.input.LT(1);
+ if ( (this.input.LA(1)>=PLUS && this.input.LA(1)<=MINUS) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set223));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_MultiplicativeExpr_in_p_AdditiveExpr5093);
+ p_MultiplicativeExpr224=this.p_MultiplicativeExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_MultiplicativeExpr224.getTree());
+
+
+ break;
+
+ default :
+ break loop91;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_MultiplicativeExpr_return: (function() {
+ XQueryParser.p_MultiplicativeExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_MultiplicativeExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:568:1: p_MultiplicativeExpr : p_UnionExpr ( ( STAR | kd= DIV | ki= IDIV | km= MOD ) p_UnionExpr )* ;
+ // $ANTLR start "p_MultiplicativeExpr"
+ p_MultiplicativeExpr: function() {
+ var retval = new XQueryParser.p_MultiplicativeExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kd = null;
+ var ki = null;
+ var km = null;
+ var STAR226 = null;
+ var p_UnionExpr225 = null;
+ var p_UnionExpr227 = null;
+
+ var kd_tree=null;
+ var ki_tree=null;
+ var km_tree=null;
+ var STAR226_tree=null;
+
+ try {
+ // XQueryParser.g:569:9: ( p_UnionExpr ( ( STAR | kd= DIV | ki= IDIV | km= MOD ) p_UnionExpr )* )
+ // XQueryParser.g:569:13: p_UnionExpr ( ( STAR | kd= DIV | ki= IDIV | km= MOD ) p_UnionExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_UnionExpr_in_p_MultiplicativeExpr5124);
+ p_UnionExpr225=this.p_UnionExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_UnionExpr225.getTree());
+ // XQueryParser.g:569:25: ( ( STAR | kd= DIV | ki= IDIV | km= MOD ) p_UnionExpr )*
+ loop93:
+ do {
+ var alt93=2;
+ var LA93_0 = this.input.LA(1);
+
+ if ( (LA93_0==DIV||LA93_0==IDIV||LA93_0==MOD||LA93_0==STAR) ) {
+ alt93=1;
+ }
+
+
+ switch (alt93) {
+ case 1 :
+ // XQueryParser.g:569:27: ( STAR | kd= DIV | ki= IDIV | km= MOD ) p_UnionExpr
+ // XQueryParser.g:569:27: ( STAR | kd= DIV | ki= IDIV | km= MOD )
+ var alt92=4;
+ switch ( this.input.LA(1) ) {
+ case STAR:
+ alt92=1;
+ break;
+ case DIV:
+ alt92=2;
+ break;
+ case IDIV:
+ alt92=3;
+ break;
+ case MOD:
+ alt92=4;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 92, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt92) {
+ case 1 :
+ // XQueryParser.g:569:28: STAR
+ STAR226=this.match(this.input,STAR,XQueryParser.FOLLOW_STAR_in_p_MultiplicativeExpr5129); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ STAR226_tree = this.adaptor.create(STAR226);
+ this.adaptor.addChild(root_0, STAR226_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:569:35: kd= DIV
+ kd=this.match(this.input,DIV,XQueryParser.FOLLOW_DIV_in_p_MultiplicativeExpr5135); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kd_tree = this.adaptor.create(kd);
+ this.adaptor.addChild(root_0, kd_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:569:44: ki= IDIV
+ ki=this.match(this.input,IDIV,XQueryParser.FOLLOW_IDIV_in_p_MultiplicativeExpr5141); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ki_tree = this.adaptor.create(ki);
+ this.adaptor.addChild(root_0, ki_tree);
+ }
+ if ( this.state.backtracking===0 ) {
+ }
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:569:57: km= MOD
+ km=this.match(this.input,MOD,XQueryParser.FOLLOW_MOD_in_p_MultiplicativeExpr5149); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ km_tree = this.adaptor.create(km);
+ this.adaptor.addChild(root_0, km_tree);
+ }
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_UnionExpr_in_p_MultiplicativeExpr5153);
+ p_UnionExpr227=this.p_UnionExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_UnionExpr227.getTree());
+
+
+ break;
+
+ default :
+ break loop93;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_UnionExpr_return: (function() {
+ XQueryParser.p_UnionExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_UnionExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:573:1: p_UnionExpr : p_IntersectExceptExpr ( (ku= UNION | VBAR ) p_IntersectExceptExpr )* ;
+ // $ANTLR start "p_UnionExpr"
+ p_UnionExpr: function() {
+ var retval = new XQueryParser.p_UnionExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ku = null;
+ var VBAR229 = null;
+ var p_IntersectExceptExpr228 = null;
+ var p_IntersectExceptExpr230 = null;
+
+ var ku_tree=null;
+ var VBAR229_tree=null;
+
+ try {
+ // XQueryParser.g:574:9: ( p_IntersectExceptExpr ( (ku= UNION | VBAR ) p_IntersectExceptExpr )* )
+ // XQueryParser.g:574:13: p_IntersectExceptExpr ( (ku= UNION | VBAR ) p_IntersectExceptExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IntersectExceptExpr_in_p_UnionExpr5184);
+ p_IntersectExceptExpr228=this.p_IntersectExceptExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IntersectExceptExpr228.getTree());
+ // XQueryParser.g:574:35: ( (ku= UNION | VBAR ) p_IntersectExceptExpr )*
+ loop95:
+ do {
+ var alt95=2;
+ var LA95_0 = this.input.LA(1);
+
+ if ( (LA95_0==UNION||LA95_0==VBAR) ) {
+ alt95=1;
+ }
+
+
+ switch (alt95) {
+ case 1 :
+ // XQueryParser.g:574:37: (ku= UNION | VBAR ) p_IntersectExceptExpr
+ // XQueryParser.g:574:37: (ku= UNION | VBAR )
+ var alt94=2;
+ var LA94_0 = this.input.LA(1);
+
+ if ( (LA94_0==UNION) ) {
+ alt94=1;
+ }
+ else if ( (LA94_0==VBAR) ) {
+ alt94=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 94, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt94) {
+ case 1 :
+ // XQueryParser.g:574:38: ku= UNION
+ ku=this.match(this.input,UNION,XQueryParser.FOLLOW_UNION_in_p_UnionExpr5191); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ku_tree = this.adaptor.create(ku);
+ this.adaptor.addChild(root_0, ku_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:574:49: VBAR
+ VBAR229=this.match(this.input,VBAR,XQueryParser.FOLLOW_VBAR_in_p_UnionExpr5195); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ VBAR229_tree = this.adaptor.create(VBAR229);
+ this.adaptor.addChild(root_0, VBAR229_tree);
+ }
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IntersectExceptExpr_in_p_UnionExpr5198);
+ p_IntersectExceptExpr230=this.p_IntersectExceptExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IntersectExceptExpr230.getTree());
+
+
+ break;
+
+ default :
+ break loop95;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IntersectExceptExpr_return: (function() {
+ XQueryParser.p_IntersectExceptExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IntersectExceptExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:578:1: p_IntersectExceptExpr : p_InstanceofExpr ( (k= INTERSECT | k= EXCEPT ) p_InstanceofExpr )* ;
+ // $ANTLR start "p_IntersectExceptExpr"
+ p_IntersectExceptExpr: function() {
+ var retval = new XQueryParser.p_IntersectExceptExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var p_InstanceofExpr231 = null;
+ var p_InstanceofExpr232 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:579:9: ( p_InstanceofExpr ( (k= INTERSECT | k= EXCEPT ) p_InstanceofExpr )* )
+ // XQueryParser.g:579:13: p_InstanceofExpr ( (k= INTERSECT | k= EXCEPT ) p_InstanceofExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_InstanceofExpr_in_p_IntersectExceptExpr5229);
+ p_InstanceofExpr231=this.p_InstanceofExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InstanceofExpr231.getTree());
+ // XQueryParser.g:579:30: ( (k= INTERSECT | k= EXCEPT ) p_InstanceofExpr )*
+ loop97:
+ do {
+ var alt97=2;
+ var LA97_0 = this.input.LA(1);
+
+ if ( (LA97_0==EXCEPT||LA97_0==INTERSECT) ) {
+ alt97=1;
+ }
+
+
+ switch (alt97) {
+ case 1 :
+ // XQueryParser.g:579:32: (k= INTERSECT | k= EXCEPT ) p_InstanceofExpr
+ // XQueryParser.g:579:32: (k= INTERSECT | k= EXCEPT )
+ var alt96=2;
+ var LA96_0 = this.input.LA(1);
+
+ if ( (LA96_0==INTERSECT) ) {
+ alt96=1;
+ }
+ else if ( (LA96_0==EXCEPT) ) {
+ alt96=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 96, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt96) {
+ case 1 :
+ // XQueryParser.g:579:33: k= INTERSECT
+ k=this.match(this.input,INTERSECT,XQueryParser.FOLLOW_INTERSECT_in_p_IntersectExceptExpr5236); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:579:47: k= EXCEPT
+ k=this.match(this.input,EXCEPT,XQueryParser.FOLLOW_EXCEPT_in_p_IntersectExceptExpr5242); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_InstanceofExpr_in_p_IntersectExceptExpr5246);
+ p_InstanceofExpr232=this.p_InstanceofExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InstanceofExpr232.getTree());
+
+
+ break;
+
+ default :
+ break loop97;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_InstanceofExpr_return: (function() {
+ XQueryParser.p_InstanceofExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_InstanceofExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:583:1: p_InstanceofExpr : p_TreatExpr (ki= INSTANCE ko= OF p_SequenceType )? ;
+ // $ANTLR start "p_InstanceofExpr"
+ p_InstanceofExpr: function() {
+ var retval = new XQueryParser.p_InstanceofExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ki = null;
+ var ko = null;
+ var p_TreatExpr233 = null;
+ var p_SequenceType234 = null;
+
+ var ki_tree=null;
+ var ko_tree=null;
+
+ try {
+ // XQueryParser.g:584:9: ( p_TreatExpr (ki= INSTANCE ko= OF p_SequenceType )? )
+ // XQueryParser.g:584:13: p_TreatExpr (ki= INSTANCE ko= OF p_SequenceType )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TreatExpr_in_p_InstanceofExpr5277);
+ p_TreatExpr233=this.p_TreatExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TreatExpr233.getTree());
+ // XQueryParser.g:584:25: (ki= INSTANCE ko= OF p_SequenceType )?
+ var alt98=2;
+ var LA98_0 = this.input.LA(1);
+
+ if ( (LA98_0==INSTANCE) ) {
+ alt98=1;
+ }
+ switch (alt98) {
+ case 1 :
+ // XQueryParser.g:584:27: ki= INSTANCE ko= OF p_SequenceType
+ ki=this.match(this.input,INSTANCE,XQueryParser.FOLLOW_INSTANCE_in_p_InstanceofExpr5283); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ki_tree = this.adaptor.create(ki);
+ this.adaptor.addChild(root_0, ki_tree);
+ }
+ ko=this.match(this.input,OF,XQueryParser.FOLLOW_OF_in_p_InstanceofExpr5287); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ko_tree = this.adaptor.create(ko);
+ this.adaptor.addChild(root_0, ko_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_SequenceType_in_p_InstanceofExpr5289);
+ p_SequenceType234=this.p_SequenceType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SequenceType234.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TreatExpr_return: (function() {
+ XQueryParser.p_TreatExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TreatExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:588:1: p_TreatExpr : p_CastableExpr (kt= TREAT ka= AS p_SequenceType )? ;
+ // $ANTLR start "p_TreatExpr"
+ p_TreatExpr: function() {
+ var retval = new XQueryParser.p_TreatExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kt = null;
+ var ka = null;
+ var p_CastableExpr235 = null;
+ var p_SequenceType236 = null;
+
+ var kt_tree=null;
+ var ka_tree=null;
+
+ try {
+ // XQueryParser.g:589:9: ( p_CastableExpr (kt= TREAT ka= AS p_SequenceType )? )
+ // XQueryParser.g:589:13: p_CastableExpr (kt= TREAT ka= AS p_SequenceType )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CastableExpr_in_p_TreatExpr5319);
+ p_CastableExpr235=this.p_CastableExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CastableExpr235.getTree());
+ // XQueryParser.g:589:28: (kt= TREAT ka= AS p_SequenceType )?
+ var alt99=2;
+ var LA99_0 = this.input.LA(1);
+
+ if ( (LA99_0==TREAT) ) {
+ alt99=1;
+ }
+ switch (alt99) {
+ case 1 :
+ // XQueryParser.g:589:30: kt= TREAT ka= AS p_SequenceType
+ kt=this.match(this.input,TREAT,XQueryParser.FOLLOW_TREAT_in_p_TreatExpr5325); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kt_tree = this.adaptor.create(kt);
+ this.adaptor.addChild(root_0, kt_tree);
+ }
+ ka=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_TreatExpr5329); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_SequenceType_in_p_TreatExpr5331);
+ p_SequenceType236=this.p_SequenceType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SequenceType236.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CastableExpr_return: (function() {
+ XQueryParser.p_CastableExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CastableExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:593:1: p_CastableExpr : p_CastExpr (kc= CASTABLE ka= AS p_SingleType )? ;
+ // $ANTLR start "p_CastableExpr"
+ p_CastableExpr: function() {
+ var retval = new XQueryParser.p_CastableExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var ka = null;
+ var p_CastExpr237 = null;
+ var p_SingleType238 = null;
+
+ var kc_tree=null;
+ var ka_tree=null;
+
+ try {
+ // XQueryParser.g:594:9: ( p_CastExpr (kc= CASTABLE ka= AS p_SingleType )? )
+ // XQueryParser.g:594:13: p_CastExpr (kc= CASTABLE ka= AS p_SingleType )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CastExpr_in_p_CastableExpr5370);
+ p_CastExpr237=this.p_CastExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CastExpr237.getTree());
+ // XQueryParser.g:594:24: (kc= CASTABLE ka= AS p_SingleType )?
+ var alt100=2;
+ var LA100_0 = this.input.LA(1);
+
+ if ( (LA100_0==CASTABLE) ) {
+ alt100=1;
+ }
+ switch (alt100) {
+ case 1 :
+ // XQueryParser.g:594:26: kc= CASTABLE ka= AS p_SingleType
+ kc=this.match(this.input,CASTABLE,XQueryParser.FOLLOW_CASTABLE_in_p_CastableExpr5376); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ ka=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_CastableExpr5380); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_SingleType_in_p_CastableExpr5382);
+ p_SingleType238=this.p_SingleType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SingleType238.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CastExpr_return: (function() {
+ XQueryParser.p_CastExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CastExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:598:1: p_CastExpr : p_UnaryExpr (kc= CAST ka= AS p_SingleType )? ;
+ // $ANTLR start "p_CastExpr"
+ p_CastExpr: function() {
+ var retval = new XQueryParser.p_CastExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var ka = null;
+ var p_UnaryExpr239 = null;
+ var p_SingleType240 = null;
+
+ var kc_tree=null;
+ var ka_tree=null;
+
+ try {
+ // XQueryParser.g:599:9: ( p_UnaryExpr (kc= CAST ka= AS p_SingleType )? )
+ // XQueryParser.g:599:13: p_UnaryExpr (kc= CAST ka= AS p_SingleType )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_UnaryExpr_in_p_CastExpr5421);
+ p_UnaryExpr239=this.p_UnaryExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_UnaryExpr239.getTree());
+ // XQueryParser.g:599:25: (kc= CAST ka= AS p_SingleType )?
+ var alt101=2;
+ var LA101_0 = this.input.LA(1);
+
+ if ( (LA101_0==CAST) ) {
+ alt101=1;
+ }
+ switch (alt101) {
+ case 1 :
+ // XQueryParser.g:599:27: kc= CAST ka= AS p_SingleType
+ kc=this.match(this.input,CAST,XQueryParser.FOLLOW_CAST_in_p_CastExpr5427); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ ka=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_CastExpr5431); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_SingleType_in_p_CastExpr5433);
+ p_SingleType240=this.p_SingleType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SingleType240.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_UnaryExpr_return: (function() {
+ XQueryParser.p_UnaryExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_UnaryExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:603:1: p_UnaryExpr : ( PLUS | MINUS )* p_ValueExpr -> ^( UnaryExpr ( PLUS )* p_ValueExpr ) ;
+ // $ANTLR start "p_UnaryExpr"
+ p_UnaryExpr: function() {
+ var retval = new XQueryParser.p_UnaryExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var PLUS241 = null;
+ var MINUS242 = null;
+ var p_ValueExpr243 = null;
+
+ var PLUS241_tree=null;
+ var MINUS242_tree=null;
+ var stream_PLUS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token PLUS");
+ var stream_MINUS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token MINUS");
+ var stream_p_ValueExpr=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ValueExpr");
+ try {
+ // XQueryParser.g:604:9: ( ( PLUS | MINUS )* p_ValueExpr -> ^( UnaryExpr ( PLUS )* p_ValueExpr ) )
+ // XQueryParser.g:604:13: ( PLUS | MINUS )* p_ValueExpr
+ // XQueryParser.g:604:13: ( PLUS | MINUS )*
+ loop102:
+ do {
+ var alt102=3;
+ var LA102_0 = this.input.LA(1);
+
+ if ( (LA102_0==PLUS) ) {
+ alt102=1;
+ }
+ else if ( (LA102_0==MINUS) ) {
+ alt102=2;
+ }
+
+
+ switch (alt102) {
+ case 1 :
+ // XQueryParser.g:604:14: PLUS
+ PLUS241=this.match(this.input,PLUS,XQueryParser.FOLLOW_PLUS_in_p_UnaryExpr5465); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_PLUS.add(PLUS241);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:604:21: MINUS
+ MINUS242=this.match(this.input,MINUS,XQueryParser.FOLLOW_MINUS_in_p_UnaryExpr5469); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_MINUS.add(MINUS242);
+
+
+
+ break;
+
+ default :
+ break loop102;
+ }
+ } while (true);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ValueExpr_in_p_UnaryExpr5473);
+ p_ValueExpr243=this.p_ValueExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ValueExpr.add(p_ValueExpr243.getTree());
+
+
+ // AST REWRITE
+ // elements: PLUS, p_ValueExpr
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 605:17: -> ^( UnaryExpr ( PLUS )* p_ValueExpr )
+ {
+ // XQueryParser.g:605:20: ^( UnaryExpr ( PLUS )* p_ValueExpr )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(UnaryExpr, "UnaryExpr"), root_1);
+
+ // XQueryParser.g:605:32: ( PLUS )*
+ while ( stream_PLUS.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_PLUS.nextNode());
+
+ }
+ stream_PLUS.reset();
+ this.adaptor.addChild(root_1, stream_p_ValueExpr.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ValueExpr_return: (function() {
+ XQueryParser.p_ValueExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ValueExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:612:1: p_ValueExpr : ( p_ValidateExpr | p_PathExpr | p_ExtensionExpr );
+ // $ANTLR start "p_ValueExpr"
+ p_ValueExpr: function() {
+ var retval = new XQueryParser.p_ValueExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ValidateExpr244 = null;
+ var p_PathExpr245 = null;
+ var p_ExtensionExpr246 = null;
+
+
+ try {
+ // XQueryParser.g:613:9: ( p_ValidateExpr | p_PathExpr | p_ExtensionExpr )
+ var alt103=3;
+ alt103 = this.dfa103.predict(this.input);
+ switch (alt103) {
+ case 1 :
+ // XQueryParser.g:613:11: p_ValidateExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ValidateExpr_in_p_ValueExpr5529);
+ p_ValidateExpr244=this.p_ValidateExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ValidateExpr244.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:614:11: p_PathExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PathExpr_in_p_ValueExpr5541);
+ p_PathExpr245=this.p_PathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PathExpr245.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:615:11: p_ExtensionExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExtensionExpr_in_p_ValueExpr5553);
+ p_ExtensionExpr246=this.p_ExtensionExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExtensionExpr246.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_GeneralComp_return: (function() {
+ XQueryParser.p_GeneralComp_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_GeneralComp_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:619:1: p_GeneralComp : ( EQUAL | NOTEQUAL | SMALLER | SMALLEREQ | GREATER | GREATEREQ );
+ // $ANTLR start "p_GeneralComp"
+ p_GeneralComp: function() {
+ var retval = new XQueryParser.p_GeneralComp_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set247 = null;
+
+ var set247_tree=null;
+
+ try {
+ // XQueryParser.g:620:9: ( EQUAL | NOTEQUAL | SMALLER | SMALLEREQ | GREATER | GREATEREQ )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set247=this.input.LT(1);
+ if ( this.input.LA(1)==EQUAL||this.input.LA(1)==NOTEQUAL||(this.input.LA(1)>=SMALLER && this.input.LA(1)<=GREATEREQ) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set247));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ValueComp_return: (function() {
+ XQueryParser.p_ValueComp_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ValueComp_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:624:1: p_ValueComp : (k= EQ | k= NE | k= LT | k= LE | k= GT | k= GE ) ;
+ // $ANTLR start "p_ValueComp"
+ p_ValueComp: function() {
+ var retval = new XQueryParser.p_ValueComp_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:625:9: ( (k= EQ | k= NE | k= LT | k= LE | k= GT | k= GE ) )
+ // XQueryParser.g:625:13: (k= EQ | k= NE | k= LT | k= LE | k= GT | k= GE )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:625:13: (k= EQ | k= NE | k= LT | k= LE | k= GT | k= GE )
+ var alt104=6;
+ switch ( this.input.LA(1) ) {
+ case EQ:
+ alt104=1;
+ break;
+ case NE:
+ alt104=2;
+ break;
+ case LT:
+ alt104=3;
+ break;
+ case LE:
+ alt104=4;
+ break;
+ case GT:
+ alt104=5;
+ break;
+ case GE:
+ alt104=6;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 104, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt104) {
+ case 1 :
+ // XQueryParser.g:625:14: k= EQ
+ k=this.match(this.input,EQ,XQueryParser.FOLLOW_EQ_in_p_ValueComp5632); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:625:21: k= NE
+ k=this.match(this.input,NE,XQueryParser.FOLLOW_NE_in_p_ValueComp5638); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:625:28: k= LT
+ k=this.match(this.input,LT,XQueryParser.FOLLOW_LT_in_p_ValueComp5644); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:625:35: k= LE
+ k=this.match(this.input,LE,XQueryParser.FOLLOW_LE_in_p_ValueComp5650); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:625:42: k= GT
+ k=this.match(this.input,GT,XQueryParser.FOLLOW_GT_in_p_ValueComp5656); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:625:49: k= GE
+ k=this.match(this.input,GE,XQueryParser.FOLLOW_GE_in_p_ValueComp5662); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NodeComp_return: (function() {
+ XQueryParser.p_NodeComp_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NodeComp_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:629:1: p_NodeComp : (ki= IS | SMALLER_SMALLER | GREATER_GREATER );
+ // $ANTLR start "p_NodeComp"
+ p_NodeComp: function() {
+ var retval = new XQueryParser.p_NodeComp_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ki = null;
+ var SMALLER_SMALLER248 = null;
+ var GREATER_GREATER249 = null;
+
+ var ki_tree=null;
+ var SMALLER_SMALLER248_tree=null;
+ var GREATER_GREATER249_tree=null;
+
+ try {
+ // XQueryParser.g:630:9: (ki= IS | SMALLER_SMALLER | GREATER_GREATER )
+ var alt105=3;
+ switch ( this.input.LA(1) ) {
+ case IS:
+ alt105=1;
+ break;
+ case SMALLER_SMALLER:
+ alt105=2;
+ break;
+ case GREATER_GREATER:
+ alt105=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 105, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt105) {
+ case 1 :
+ // XQueryParser.g:630:13: ki= IS
+ root_0 = this.adaptor.nil();
+
+ ki=this.match(this.input,IS,XQueryParser.FOLLOW_IS_in_p_NodeComp5694); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ki_tree = this.adaptor.create(ki);
+ this.adaptor.addChild(root_0, ki_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:630:21: SMALLER_SMALLER
+ root_0 = this.adaptor.nil();
+
+ SMALLER_SMALLER248=this.match(this.input,SMALLER_SMALLER,XQueryParser.FOLLOW_SMALLER_SMALLER_in_p_NodeComp5698); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SMALLER_SMALLER248_tree = this.adaptor.create(SMALLER_SMALLER248);
+ this.adaptor.addChild(root_0, SMALLER_SMALLER248_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:630:39: GREATER_GREATER
+ root_0 = this.adaptor.nil();
+
+ GREATER_GREATER249=this.match(this.input,GREATER_GREATER,XQueryParser.FOLLOW_GREATER_GREATER_in_p_NodeComp5702); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ GREATER_GREATER249_tree = this.adaptor.create(GREATER_GREATER249);
+ this.adaptor.addChild(root_0, GREATER_GREATER249_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ValidateExpr_return: (function() {
+ XQueryParser.p_ValidateExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ValidateExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:634:1: p_ValidateExpr : kv= VALIDATE ( p_ValidationMode )? LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_ValidateExpr"
+ p_ValidateExpr: function() {
+ var retval = new XQueryParser.p_ValidateExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kv = null;
+ var LBRACKET251 = null;
+ var RBRACKET253 = null;
+ var p_ValidationMode250 = null;
+ var pm_Expr252 = null;
+
+ var kv_tree=null;
+ var LBRACKET251_tree=null;
+ var RBRACKET253_tree=null;
+
+ try {
+ // XQueryParser.g:635:9: (kv= VALIDATE ( p_ValidationMode )? LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:635:13: kv= VALIDATE ( p_ValidationMode )? LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ kv=this.match(this.input,VALIDATE,XQueryParser.FOLLOW_VALIDATE_in_p_ValidateExpr5732); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kv_tree = this.adaptor.create(kv);
+ this.adaptor.addChild(root_0, kv_tree);
+ }
+ // XQueryParser.g:635:25: ( p_ValidationMode )?
+ var alt106=2;
+ var LA106_0 = this.input.LA(1);
+
+ if ( (LA106_0==AS||LA106_0==LAX||LA106_0==STRICT) ) {
+ alt106=1;
+ }
+ switch (alt106) {
+ case 1 :
+ // XQueryParser.g:635:25: p_ValidationMode
+ this.pushFollow(XQueryParser.FOLLOW_p_ValidationMode_in_p_ValidateExpr5734);
+ p_ValidationMode250=this.p_ValidationMode();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ValidationMode250.getTree());
+
+
+ break;
+
+ }
+
+ LBRACKET251=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_ValidateExpr5737); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET251_tree = this.adaptor.create(LBRACKET251);
+ this.adaptor.addChild(root_0, LBRACKET251_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_ValidateExpr5739);
+ pm_Expr252=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr252.getTree());
+ RBRACKET253=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_ValidateExpr5741); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET253_tree = this.adaptor.create(RBRACKET253);
+ this.adaptor.addChild(root_0, RBRACKET253_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ValidationMode_return: (function() {
+ XQueryParser.p_ValidationMode_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ValidationMode_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:639:1: p_ValidationMode : (k= LAX | k= STRICT | (k= AS p_QName ) ) ;
+ // $ANTLR start "p_ValidationMode"
+ p_ValidationMode: function() {
+ var retval = new XQueryParser.p_ValidationMode_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var p_QName254 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:640:9: ( (k= LAX | k= STRICT | (k= AS p_QName ) ) )
+ // XQueryParser.g:640:13: (k= LAX | k= STRICT | (k= AS p_QName ) )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:640:13: (k= LAX | k= STRICT | (k= AS p_QName ) )
+ var alt107=3;
+ switch ( this.input.LA(1) ) {
+ case LAX:
+ alt107=1;
+ break;
+ case STRICT:
+ alt107=2;
+ break;
+ case AS:
+ alt107=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 107, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt107) {
+ case 1 :
+ // XQueryParser.g:640:14: k= LAX
+ k=this.match(this.input,LAX,XQueryParser.FOLLOW_LAX_in_p_ValidationMode5772); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:640:22: k= STRICT
+ k=this.match(this.input,STRICT,XQueryParser.FOLLOW_STRICT_in_p_ValidationMode5778); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:640:33: (k= AS p_QName )
+ // XQueryParser.g:640:33: (k= AS p_QName )
+ // XQueryParser.g:640:34: k= AS p_QName
+ k=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_ValidationMode5785); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ValidationMode5787);
+ p_QName254=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName254.getTree());
+
+
+
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ExtensionExpr_return: (function() {
+ XQueryParser.p_ExtensionExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ExtensionExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:644:1: p_ExtensionExpr : ( L_Pragma )+ LBRACKET ( pm_Expr )? RBRACKET ;
+ // $ANTLR start "p_ExtensionExpr"
+ p_ExtensionExpr: function() {
+ var retval = new XQueryParser.p_ExtensionExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_Pragma255 = null;
+ var LBRACKET256 = null;
+ var RBRACKET258 = null;
+ var pm_Expr257 = null;
+
+ var L_Pragma255_tree=null;
+ var LBRACKET256_tree=null;
+ var RBRACKET258_tree=null;
+
+ try {
+ // XQueryParser.g:645:9: ( ( L_Pragma )+ LBRACKET ( pm_Expr )? RBRACKET )
+ // XQueryParser.g:645:13: ( L_Pragma )+ LBRACKET ( pm_Expr )? RBRACKET
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:645:13: ( L_Pragma )+
+ var cnt108=0;
+ loop108:
+ do {
+ var alt108=2;
+ var LA108_0 = this.input.LA(1);
+
+ if ( (LA108_0==L_Pragma) ) {
+ alt108=1;
+ }
+
+
+ switch (alt108) {
+ case 1 :
+ // XQueryParser.g:645:13: L_Pragma
+ L_Pragma255=this.match(this.input,L_Pragma,XQueryParser.FOLLOW_L_Pragma_in_p_ExtensionExpr5818); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ L_Pragma255_tree = this.adaptor.create(L_Pragma255);
+ this.adaptor.addChild(root_0, L_Pragma255_tree);
+ }
+
+
+ break;
+
+ default :
+ if ( cnt108 >= 1 ) {
+ break loop108;
+ }
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var eee = new org.antlr.runtime.EarlyExitException(108, this.input);
+ throw eee;
+ }
+ cnt108++;
+ } while (true);
+
+ LBRACKET256=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_ExtensionExpr5821); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET256_tree = this.adaptor.create(LBRACKET256);
+ this.adaptor.addChild(root_0, LBRACKET256_tree);
+ }
+ // XQueryParser.g:645:32: ( pm_Expr )?
+ var alt109=2;
+ var LA109_0 = this.input.LA(1);
+
+ if ( ((LA109_0>=ANCESTOR && LA109_0<=EXIT)||(LA109_0>=SEQUENTIAL && LA109_0<=MAINTAINED)||(LA109_0>=MUTABLE && LA109_0<=LPAREN)||LA109_0==DOLLAR||(LA109_0>=STAR && LA109_0<=SMALLER)||(LA109_0>=SLASH && LA109_0<=DOT_DOT)||LA109_0==ATTR_SIGN||(LA109_0>=APOS && LA109_0<=QUOT)||LA109_0==L_NCName||(LA109_0>=L_Pragma && LA109_0<=L_DoubleLiteral)||(LA109_0>=LETDOLLAR && LA109_0<=EXPLICITLY)) ) {
+ alt109=1;
+ }
+ switch (alt109) {
+ case 1 :
+ // XQueryParser.g:645:32: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_ExtensionExpr5823);
+ pm_Expr257=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr257.getTree());
+
+
+ break;
+
+ }
+
+ RBRACKET258=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_ExtensionExpr5826); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET258_tree = this.adaptor.create(RBRACKET258);
+ this.adaptor.addChild(root_0, RBRACKET258_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PathExpr_return: (function() {
+ XQueryParser.p_PathExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PathExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:656:1: p_PathExpr : ( ( SLASH p_RelativePathExpr )=> ( SLASH p_RelativePathExpr ) | SLASH | SLASH_SLASH p_RelativePathExpr | p_RelativePathExpr );
+ // $ANTLR start "p_PathExpr"
+ p_PathExpr: function() {
+ var retval = new XQueryParser.p_PathExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SLASH259 = null;
+ var SLASH261 = null;
+ var SLASH_SLASH262 = null;
+ var p_RelativePathExpr260 = null;
+ var p_RelativePathExpr263 = null;
+ var p_RelativePathExpr264 = null;
+
+ var SLASH259_tree=null;
+ var SLASH261_tree=null;
+ var SLASH_SLASH262_tree=null;
+
+ try {
+ // XQueryParser.g:657:9: ( ( SLASH p_RelativePathExpr )=> ( SLASH p_RelativePathExpr ) | SLASH | SLASH_SLASH p_RelativePathExpr | p_RelativePathExpr )
+ var alt110=4;
+ alt110 = this.dfa110.predict(this.input);
+ switch (alt110) {
+ case 1 :
+ // XQueryParser.g:657:11: ( SLASH p_RelativePathExpr )=> ( SLASH p_RelativePathExpr )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:657:41: ( SLASH p_RelativePathExpr )
+ // XQueryParser.g:657:42: SLASH p_RelativePathExpr
+ SLASH259=this.match(this.input,SLASH,XQueryParser.FOLLOW_SLASH_in_p_PathExpr5868); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SLASH259_tree = this.adaptor.create(SLASH259);
+ this.adaptor.addChild(root_0, SLASH259_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_RelativePathExpr_in_p_PathExpr5870);
+ p_RelativePathExpr260=this.p_RelativePathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RelativePathExpr260.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:658:11: SLASH
+ root_0 = this.adaptor.nil();
+
+ SLASH261=this.match(this.input,SLASH,XQueryParser.FOLLOW_SLASH_in_p_PathExpr5883); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SLASH261_tree = this.adaptor.create(SLASH261);
+ this.adaptor.addChild(root_0, SLASH261_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:659:11: SLASH_SLASH p_RelativePathExpr
+ root_0 = this.adaptor.nil();
+
+ SLASH_SLASH262=this.match(this.input,SLASH_SLASH,XQueryParser.FOLLOW_SLASH_SLASH_in_p_PathExpr5895); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SLASH_SLASH262_tree = this.adaptor.create(SLASH_SLASH262);
+ this.adaptor.addChild(root_0, SLASH_SLASH262_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_RelativePathExpr_in_p_PathExpr5897);
+ p_RelativePathExpr263=this.p_RelativePathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RelativePathExpr263.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:660:11: p_RelativePathExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_RelativePathExpr_in_p_PathExpr5909);
+ p_RelativePathExpr264=this.p_RelativePathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RelativePathExpr264.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_RelativePathExpr_return: (function() {
+ XQueryParser.p_RelativePathExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_RelativePathExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:664:1: p_RelativePathExpr : p_StepExpr ( ( SLASH | SLASH_SLASH ) p_StepExpr )* ;
+ // $ANTLR start "p_RelativePathExpr"
+ p_RelativePathExpr: function() {
+ var retval = new XQueryParser.p_RelativePathExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set266 = null;
+ var p_StepExpr265 = null;
+ var p_StepExpr267 = null;
+
+ var set266_tree=null;
+
+ try {
+ // XQueryParser.g:665:9: ( p_StepExpr ( ( SLASH | SLASH_SLASH ) p_StepExpr )* )
+ // XQueryParser.g:665:11: p_StepExpr ( ( SLASH | SLASH_SLASH ) p_StepExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StepExpr_in_p_RelativePathExpr5937);
+ p_StepExpr265=this.p_StepExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StepExpr265.getTree());
+ // XQueryParser.g:665:22: ( ( SLASH | SLASH_SLASH ) p_StepExpr )*
+ loop111:
+ do {
+ var alt111=2;
+ var LA111_0 = this.input.LA(1);
+
+ if ( ((LA111_0>=SLASH && LA111_0<=SLASH_SLASH)) ) {
+ alt111=1;
+ }
+
+
+ switch (alt111) {
+ case 1 :
+ // XQueryParser.g:665:23: ( SLASH | SLASH_SLASH ) p_StepExpr
+ set266=this.input.LT(1);
+ if ( (this.input.LA(1)>=SLASH && this.input.LA(1)<=SLASH_SLASH) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set266));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StepExpr_in_p_RelativePathExpr5948);
+ p_StepExpr267=this.p_StepExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StepExpr267.getTree());
+
+
+ break;
+
+ default :
+ break loop111;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_StepExpr_return: (function() {
+ XQueryParser.p_StepExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_StepExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:669:1: p_StepExpr : ( p_AxisStep | p_FilterExpr );
+ // $ANTLR start "p_StepExpr"
+ p_StepExpr: function() {
+ var retval = new XQueryParser.p_StepExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_AxisStep268 = null;
+ var p_FilterExpr269 = null;
+
+
+ try {
+ // XQueryParser.g:670:9: ( p_AxisStep | p_FilterExpr )
+ var alt112=2;
+ alt112 = this.dfa112.predict(this.input);
+ switch (alt112) {
+ case 1 :
+ // XQueryParser.g:670:11: p_AxisStep
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AxisStep_in_p_StepExpr5976);
+ p_AxisStep268=this.p_AxisStep();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AxisStep268.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:671:11: p_FilterExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_FilterExpr_in_p_StepExpr5988);
+ p_FilterExpr269=this.p_FilterExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_FilterExpr269.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AxisStep_return: (function() {
+ XQueryParser.p_AxisStep_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AxisStep_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:675:1: p_AxisStep : ( p_ReverseStep | p_ForwardStep ) p_PredicateList ;
+ // $ANTLR start "p_AxisStep"
+ p_AxisStep: function() {
+ var retval = new XQueryParser.p_AxisStep_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ReverseStep270 = null;
+ var p_ForwardStep271 = null;
+ var p_PredicateList272 = null;
+
+
+ try {
+ // XQueryParser.g:676:9: ( ( p_ReverseStep | p_ForwardStep ) p_PredicateList )
+ // XQueryParser.g:676:11: ( p_ReverseStep | p_ForwardStep ) p_PredicateList
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:676:11: ( p_ReverseStep | p_ForwardStep )
+ var alt113=2;
+ switch ( this.input.LA(1) ) {
+ case PARENT:
+ var LA113_1 = this.input.LA(2);
+
+ if ( (LA113_1==COLON_COLON) ) {
+ alt113=1;
+ }
+ else if ( (LA113_1==EOF||(LA113_1>=AND && LA113_1<=ASCENDING)||(LA113_1>=BY && LA113_1<=CASTABLE)||LA113_1==COLLATION||LA113_1==DEFAULT||(LA113_1>=DESCENDING && LA113_1<=DIV)||(LA113_1>=ELSE && LA113_1<=EMPTY)||LA113_1==EQ||LA113_1==EXCEPT||LA113_1==FOR||LA113_1==GE||(LA113_1>=GT && LA113_1<=IDIV)||(LA113_1>=INSTANCE && LA113_1<=IS)||LA113_1==LE||(LA113_1>=LT && LA113_1<=MOD)||LA113_1==NE||(LA113_1>=OR && LA113_1<=ORDER)||(LA113_1>=RETURN && LA113_1<=SATISFIES)||LA113_1==STABLE||(LA113_1>=TO && LA113_1<=TREAT)||LA113_1==UNION||LA113_1==WHERE||LA113_1==COUNT||(LA113_1>=END && LA113_1<=GROUP)||LA113_1==ONLY||LA113_1==START||(LA113_1>=AFTER && LA113_1<=BEFORE)||LA113_1==INTO||LA113_1==MODIFY||LA113_1==WITH||LA113_1==RPAREN||(LA113_1>=RBRACKET && LA113_1<=EQUAL)||LA113_1==NOTEQUAL||LA113_1==COMMA||(LA113_1>=STAR && LA113_1<=SLASH_SLASH)||LA113_1==COLON||(LA113_1>=SEMICOLON && LA113_1<=VBAR)||LA113_1==LETDOLLAR) ) {
+ alt113=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 1, this.input);
+
+ throw nvae;
+ }
+ break;
+ case ANCESTOR:
+ var LA113_2 = this.input.LA(2);
+
+ if ( (LA113_2==COLON_COLON) ) {
+ alt113=1;
+ }
+ else if ( (LA113_2==EOF||(LA113_2>=AND && LA113_2<=ASCENDING)||(LA113_2>=BY && LA113_2<=CASTABLE)||LA113_2==COLLATION||LA113_2==DEFAULT||(LA113_2>=DESCENDING && LA113_2<=DIV)||(LA113_2>=ELSE && LA113_2<=EMPTY)||LA113_2==EQ||LA113_2==EXCEPT||LA113_2==FOR||LA113_2==GE||(LA113_2>=GT && LA113_2<=IDIV)||(LA113_2>=INSTANCE && LA113_2<=IS)||LA113_2==LE||(LA113_2>=LT && LA113_2<=MOD)||LA113_2==NE||(LA113_2>=OR && LA113_2<=ORDER)||(LA113_2>=RETURN && LA113_2<=SATISFIES)||LA113_2==STABLE||(LA113_2>=TO && LA113_2<=TREAT)||LA113_2==UNION||LA113_2==WHERE||LA113_2==COUNT||(LA113_2>=END && LA113_2<=GROUP)||LA113_2==ONLY||LA113_2==START||(LA113_2>=AFTER && LA113_2<=BEFORE)||LA113_2==INTO||LA113_2==MODIFY||LA113_2==WITH||LA113_2==RPAREN||(LA113_2>=RBRACKET && LA113_2<=EQUAL)||LA113_2==NOTEQUAL||LA113_2==COMMA||(LA113_2>=STAR && LA113_2<=SLASH_SLASH)||LA113_2==COLON||(LA113_2>=SEMICOLON && LA113_2<=VBAR)||LA113_2==LETDOLLAR) ) {
+ alt113=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 2, this.input);
+
+ throw nvae;
+ }
+ break;
+ case PRECEDING_SIBLING:
+ var LA113_3 = this.input.LA(2);
+
+ if ( (LA113_3==COLON_COLON) ) {
+ alt113=1;
+ }
+ else if ( (LA113_3==EOF||(LA113_3>=AND && LA113_3<=ASCENDING)||(LA113_3>=BY && LA113_3<=CASTABLE)||LA113_3==COLLATION||LA113_3==DEFAULT||(LA113_3>=DESCENDING && LA113_3<=DIV)||(LA113_3>=ELSE && LA113_3<=EMPTY)||LA113_3==EQ||LA113_3==EXCEPT||LA113_3==FOR||LA113_3==GE||(LA113_3>=GT && LA113_3<=IDIV)||(LA113_3>=INSTANCE && LA113_3<=IS)||LA113_3==LE||(LA113_3>=LT && LA113_3<=MOD)||LA113_3==NE||(LA113_3>=OR && LA113_3<=ORDER)||(LA113_3>=RETURN && LA113_3<=SATISFIES)||LA113_3==STABLE||(LA113_3>=TO && LA113_3<=TREAT)||LA113_3==UNION||LA113_3==WHERE||LA113_3==COUNT||(LA113_3>=END && LA113_3<=GROUP)||LA113_3==ONLY||LA113_3==START||(LA113_3>=AFTER && LA113_3<=BEFORE)||LA113_3==INTO||LA113_3==MODIFY||LA113_3==WITH||LA113_3==RPAREN||(LA113_3>=RBRACKET && LA113_3<=EQUAL)||LA113_3==NOTEQUAL||LA113_3==COMMA||(LA113_3>=STAR && LA113_3<=SLASH_SLASH)||LA113_3==COLON||(LA113_3>=SEMICOLON && LA113_3<=VBAR)||LA113_3==LETDOLLAR) ) {
+ alt113=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 3, this.input);
+
+ throw nvae;
+ }
+ break;
+ case PRECEDING:
+ var LA113_4 = this.input.LA(2);
+
+ if ( (LA113_4==COLON_COLON) ) {
+ alt113=1;
+ }
+ else if ( (LA113_4==EOF||(LA113_4>=AND && LA113_4<=ASCENDING)||(LA113_4>=BY && LA113_4<=CASTABLE)||LA113_4==COLLATION||LA113_4==DEFAULT||(LA113_4>=DESCENDING && LA113_4<=DIV)||(LA113_4>=ELSE && LA113_4<=EMPTY)||LA113_4==EQ||LA113_4==EXCEPT||LA113_4==FOR||LA113_4==GE||(LA113_4>=GT && LA113_4<=IDIV)||(LA113_4>=INSTANCE && LA113_4<=IS)||LA113_4==LE||(LA113_4>=LT && LA113_4<=MOD)||LA113_4==NE||(LA113_4>=OR && LA113_4<=ORDER)||(LA113_4>=RETURN && LA113_4<=SATISFIES)||LA113_4==STABLE||(LA113_4>=TO && LA113_4<=TREAT)||LA113_4==UNION||LA113_4==WHERE||LA113_4==COUNT||(LA113_4>=END && LA113_4<=GROUP)||LA113_4==ONLY||LA113_4==START||(LA113_4>=AFTER && LA113_4<=BEFORE)||LA113_4==INTO||LA113_4==MODIFY||LA113_4==WITH||LA113_4==RPAREN||(LA113_4>=RBRACKET && LA113_4<=EQUAL)||LA113_4==NOTEQUAL||LA113_4==COMMA||(LA113_4>=STAR && LA113_4<=SLASH_SLASH)||LA113_4==COLON||(LA113_4>=SEMICOLON && LA113_4<=VBAR)||LA113_4==LETDOLLAR) ) {
+ alt113=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 4, this.input);
+
+ throw nvae;
+ }
+ break;
+ case ANCESTOR_OR_SELF:
+ var LA113_5 = this.input.LA(2);
+
+ if ( (LA113_5==COLON_COLON) ) {
+ alt113=1;
+ }
+ else if ( (LA113_5==EOF||(LA113_5>=AND && LA113_5<=ASCENDING)||(LA113_5>=BY && LA113_5<=CASTABLE)||LA113_5==COLLATION||LA113_5==DEFAULT||(LA113_5>=DESCENDING && LA113_5<=DIV)||(LA113_5>=ELSE && LA113_5<=EMPTY)||LA113_5==EQ||LA113_5==EXCEPT||LA113_5==FOR||LA113_5==GE||(LA113_5>=GT && LA113_5<=IDIV)||(LA113_5>=INSTANCE && LA113_5<=IS)||LA113_5==LE||(LA113_5>=LT && LA113_5<=MOD)||LA113_5==NE||(LA113_5>=OR && LA113_5<=ORDER)||(LA113_5>=RETURN && LA113_5<=SATISFIES)||LA113_5==STABLE||(LA113_5>=TO && LA113_5<=TREAT)||LA113_5==UNION||LA113_5==WHERE||LA113_5==COUNT||(LA113_5>=END && LA113_5<=GROUP)||LA113_5==ONLY||LA113_5==START||(LA113_5>=AFTER && LA113_5<=BEFORE)||LA113_5==INTO||LA113_5==MODIFY||LA113_5==WITH||LA113_5==RPAREN||(LA113_5>=RBRACKET && LA113_5<=EQUAL)||LA113_5==NOTEQUAL||LA113_5==COMMA||(LA113_5>=STAR && LA113_5<=SLASH_SLASH)||LA113_5==COLON||(LA113_5>=SEMICOLON && LA113_5<=VBAR)||LA113_5==LETDOLLAR) ) {
+ alt113=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 5, this.input);
+
+ throw nvae;
+ }
+ break;
+ case DOT_DOT:
+ alt113=1;
+ break;
+ case AND:
+ case AS:
+ case ASCENDING:
+ case AT:
+ case ATTRIBUTE:
+ case BASE_URI:
+ case BOUNDARY_SPACE:
+ case BY:
+ case CASE:
+ case CAST:
+ case CASTABLE:
+ case CHILD:
+ case COLLATION:
+ case COMMENT:
+ case CONSTRUCTION:
+ case COPY_NAMESPACES:
+ case DECLARE:
+ case DEFAULT:
+ case DESCENDANT:
+ case DESCENDANT_OR_SELF:
+ case DESCENDING:
+ case DIV:
+ case DOCUMENT:
+ case DOCUMENT_NODE:
+ case ELEMENT:
+ case ELSE:
+ case EMPTY:
+ case EMPTY_SEQUENCE:
+ case ENCODING:
+ case EQ:
+ case EVERY:
+ case EXCEPT:
+ case EXTERNAL:
+ case FOLLOWING:
+ case FOLLOWING_SIBLING:
+ case FOR:
+ case FUNCTION:
+ case GE:
+ case GREATEST:
+ case GT:
+ case IDIV:
+ case IF:
+ case IMPORT:
+ case IN:
+ case INHERIT:
+ case INSTANCE:
+ case INTERSECT:
+ case IS:
+ case ITEM:
+ case LAX:
+ case LE:
+ case LEAST:
+ case LET:
+ case LT:
+ case MOD:
+ case MODULE:
+ case NAMESPACE:
+ case NE:
+ case NO_INHERIT:
+ case NO_PRESERVE:
+ case NODE:
+ case OF:
+ case OPTION:
+ case OR:
+ case ORDER:
+ case ORDERED:
+ case ORDERING:
+ case PRESERVE:
+ case PROCESSING_INSTRUCTION:
+ case RETURN:
+ case SATISFIES:
+ case SCHEMA:
+ case SCHEMA_ATTRIBUTE:
+ case SCHEMA_ELEMENT:
+ case SELF:
+ case SOME:
+ case STABLE:
+ case STRICT:
+ case STRIP:
+ case TEXT:
+ case THEN:
+ case TO:
+ case TREAT:
+ case TYPESWITCH:
+ case UNION:
+ case UNORDERED:
+ case VALIDATE:
+ case VARIABLE:
+ case VERSION:
+ case WHERE:
+ case XQUERY:
+ case CATCH:
+ case CONTEXT:
+ case COUNT:
+ case DECIMAL_FORMAT:
+ case DECIMAL_SEPARATOR:
+ case DIGIT:
+ case END:
+ case GROUP:
+ case GROUPING_SEPARATOR:
+ case INFINITY:
+ case MINUS_SIGN:
+ case NAMESPACE_NODE:
+ case NAN:
+ case NEXT:
+ case ONLY:
+ case OUTER:
+ case PATTERN_SEPARATOR:
+ case PERCENT:
+ case PER_MILLE:
+ case PREVIOUS:
+ case SLIDING:
+ case START:
+ case TRY:
+ case TUMBLING:
+ case WHEN:
+ case WINDOW:
+ case ZERO_DIGIT:
+ case AFTER:
+ case BEFORE:
+ case COPY:
+ case DELETE:
+ case FIRST:
+ case INSERT:
+ case INTO:
+ case LAST:
+ case MODIFY:
+ case NODES:
+ case RENAME:
+ case REPLACE:
+ case REVALIDATION:
+ case SKIP:
+ case UPDATING:
+ case VALUE:
+ case WITH:
+ case BLOCK:
+ case CONSTANT:
+ case EXIT:
+ case SEQUENTIAL:
+ case SET:
+ case SIMPLE:
+ case WHILE:
+ case EVAL:
+ case USING:
+ case APPEND_ONLY:
+ case AUTOMATICALLY:
+ case CHECK:
+ case COLLECTION:
+ case CONSTRAINT:
+ case CONST:
+ case EQUALITY:
+ case FOREACH:
+ case FOREIGN:
+ case FROM:
+ case INDEX:
+ case INTEGRITY:
+ case KEY:
+ case MAINTAINED:
+ case MUTABLE:
+ case NON:
+ case ON:
+ case QUEUE:
+ case RANGE:
+ case READ_ONLY:
+ case UNIQUE:
+ case BINARY:
+ case PRIVATE:
+ case AMP_ER:
+ case APOS_ER:
+ case QUOT_ER:
+ case STAR:
+ case ATTR_SIGN:
+ case L_NCName:
+ case EXPLICITLY:
+ alt113=2;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt113) {
+ case 1 :
+ // XQueryParser.g:676:12: p_ReverseStep
+ this.pushFollow(XQueryParser.FOLLOW_p_ReverseStep_in_p_AxisStep6015);
+ p_ReverseStep270=this.p_ReverseStep();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ReverseStep270.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:676:28: p_ForwardStep
+ this.pushFollow(XQueryParser.FOLLOW_p_ForwardStep_in_p_AxisStep6019);
+ p_ForwardStep271=this.p_ForwardStep();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ForwardStep271.getTree());
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PredicateList_in_p_AxisStep6022);
+ p_PredicateList272=this.p_PredicateList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PredicateList272.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ForwardStep_return: (function() {
+ XQueryParser.p_ForwardStep_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ForwardStep_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:680:1: p_ForwardStep : ( ( p_ForwardAxis p_NodeTest ) | p_AbbrevForwardStep );
+ // $ANTLR start "p_ForwardStep"
+ p_ForwardStep: function() {
+ var retval = new XQueryParser.p_ForwardStep_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ForwardAxis273 = null;
+ var p_NodeTest274 = null;
+ var p_AbbrevForwardStep275 = null;
+
+
+ try {
+ // XQueryParser.g:681:9: ( ( p_ForwardAxis p_NodeTest ) | p_AbbrevForwardStep )
+ var alt114=2;
+ alt114 = this.dfa114.predict(this.input);
+ switch (alt114) {
+ case 1 :
+ // XQueryParser.g:681:11: ( p_ForwardAxis p_NodeTest )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:681:11: ( p_ForwardAxis p_NodeTest )
+ // XQueryParser.g:681:12: p_ForwardAxis p_NodeTest
+ this.pushFollow(XQueryParser.FOLLOW_p_ForwardAxis_in_p_ForwardStep6049);
+ p_ForwardAxis273=this.p_ForwardAxis();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ForwardAxis273.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_NodeTest_in_p_ForwardStep6051);
+ p_NodeTest274=this.p_NodeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NodeTest274.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:681:40: p_AbbrevForwardStep
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AbbrevForwardStep_in_p_ForwardStep6056);
+ p_AbbrevForwardStep275=this.p_AbbrevForwardStep();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AbbrevForwardStep275.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ForwardAxis_return: (function() {
+ XQueryParser.p_ForwardAxis_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ForwardAxis_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:685:1: p_ForwardAxis : ( CHILD COLON_COLON | DESCENDANT COLON_COLON | ATTRIBUTE COLON_COLON | SELF COLON_COLON | DESCENDANT_OR_SELF COLON_COLON | FOLLOWING_SIBLING COLON_COLON | FOLLOWING COLON_COLON );
+ // $ANTLR start "p_ForwardAxis"
+ p_ForwardAxis: function() {
+ var retval = new XQueryParser.p_ForwardAxis_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var CHILD276 = null;
+ var COLON_COLON277 = null;
+ var DESCENDANT278 = null;
+ var COLON_COLON279 = null;
+ var ATTRIBUTE280 = null;
+ var COLON_COLON281 = null;
+ var SELF282 = null;
+ var COLON_COLON283 = null;
+ var DESCENDANT_OR_SELF284 = null;
+ var COLON_COLON285 = null;
+ var FOLLOWING_SIBLING286 = null;
+ var COLON_COLON287 = null;
+ var FOLLOWING288 = null;
+ var COLON_COLON289 = null;
+
+ var CHILD276_tree=null;
+ var COLON_COLON277_tree=null;
+ var DESCENDANT278_tree=null;
+ var COLON_COLON279_tree=null;
+ var ATTRIBUTE280_tree=null;
+ var COLON_COLON281_tree=null;
+ var SELF282_tree=null;
+ var COLON_COLON283_tree=null;
+ var DESCENDANT_OR_SELF284_tree=null;
+ var COLON_COLON285_tree=null;
+ var FOLLOWING_SIBLING286_tree=null;
+ var COLON_COLON287_tree=null;
+ var FOLLOWING288_tree=null;
+ var COLON_COLON289_tree=null;
+
+ try {
+ // XQueryParser.g:686:9: ( CHILD COLON_COLON | DESCENDANT COLON_COLON | ATTRIBUTE COLON_COLON | SELF COLON_COLON | DESCENDANT_OR_SELF COLON_COLON | FOLLOWING_SIBLING COLON_COLON | FOLLOWING COLON_COLON )
+ var alt115=7;
+ switch ( this.input.LA(1) ) {
+ case CHILD:
+ alt115=1;
+ break;
+ case DESCENDANT:
+ alt115=2;
+ break;
+ case ATTRIBUTE:
+ alt115=3;
+ break;
+ case SELF:
+ alt115=4;
+ break;
+ case DESCENDANT_OR_SELF:
+ alt115=5;
+ break;
+ case FOLLOWING_SIBLING:
+ alt115=6;
+ break;
+ case FOLLOWING:
+ alt115=7;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 115, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt115) {
+ case 1 :
+ // XQueryParser.g:686:11: CHILD COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ CHILD276=this.match(this.input,CHILD,XQueryParser.FOLLOW_CHILD_in_p_ForwardAxis6082); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ CHILD276_tree = this.adaptor.create(CHILD276);
+ this.adaptor.addChild(root_0, CHILD276_tree);
+ }
+ COLON_COLON277=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6084); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON277_tree = this.adaptor.create(COLON_COLON277);
+ this.adaptor.addChild(root_0, COLON_COLON277_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:687:11: DESCENDANT COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ DESCENDANT278=this.match(this.input,DESCENDANT,XQueryParser.FOLLOW_DESCENDANT_in_p_ForwardAxis6096); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DESCENDANT278_tree = this.adaptor.create(DESCENDANT278);
+ this.adaptor.addChild(root_0, DESCENDANT278_tree);
+ }
+ COLON_COLON279=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6098); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON279_tree = this.adaptor.create(COLON_COLON279);
+ this.adaptor.addChild(root_0, COLON_COLON279_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:688:11: ATTRIBUTE COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ ATTRIBUTE280=this.match(this.input,ATTRIBUTE,XQueryParser.FOLLOW_ATTRIBUTE_in_p_ForwardAxis6110); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ATTRIBUTE280_tree = this.adaptor.create(ATTRIBUTE280);
+ this.adaptor.addChild(root_0, ATTRIBUTE280_tree);
+ }
+ COLON_COLON281=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6112); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON281_tree = this.adaptor.create(COLON_COLON281);
+ this.adaptor.addChild(root_0, COLON_COLON281_tree);
+ }
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:689:11: SELF COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ SELF282=this.match(this.input,SELF,XQueryParser.FOLLOW_SELF_in_p_ForwardAxis6124); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SELF282_tree = this.adaptor.create(SELF282);
+ this.adaptor.addChild(root_0, SELF282_tree);
+ }
+ COLON_COLON283=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6126); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON283_tree = this.adaptor.create(COLON_COLON283);
+ this.adaptor.addChild(root_0, COLON_COLON283_tree);
+ }
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:690:11: DESCENDANT_OR_SELF COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ DESCENDANT_OR_SELF284=this.match(this.input,DESCENDANT_OR_SELF,XQueryParser.FOLLOW_DESCENDANT_OR_SELF_in_p_ForwardAxis6138); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DESCENDANT_OR_SELF284_tree = this.adaptor.create(DESCENDANT_OR_SELF284);
+ this.adaptor.addChild(root_0, DESCENDANT_OR_SELF284_tree);
+ }
+ COLON_COLON285=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6140); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON285_tree = this.adaptor.create(COLON_COLON285);
+ this.adaptor.addChild(root_0, COLON_COLON285_tree);
+ }
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:691:11: FOLLOWING_SIBLING COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ FOLLOWING_SIBLING286=this.match(this.input,FOLLOWING_SIBLING,XQueryParser.FOLLOW_FOLLOWING_SIBLING_in_p_ForwardAxis6152); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ FOLLOWING_SIBLING286_tree = this.adaptor.create(FOLLOWING_SIBLING286);
+ this.adaptor.addChild(root_0, FOLLOWING_SIBLING286_tree);
+ }
+ COLON_COLON287=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6154); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON287_tree = this.adaptor.create(COLON_COLON287);
+ this.adaptor.addChild(root_0, COLON_COLON287_tree);
+ }
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:692:11: FOLLOWING COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ FOLLOWING288=this.match(this.input,FOLLOWING,XQueryParser.FOLLOW_FOLLOWING_in_p_ForwardAxis6166); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ FOLLOWING288_tree = this.adaptor.create(FOLLOWING288);
+ this.adaptor.addChild(root_0, FOLLOWING288_tree);
+ }
+ COLON_COLON289=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6168); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON289_tree = this.adaptor.create(COLON_COLON289);
+ this.adaptor.addChild(root_0, COLON_COLON289_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AbbrevForwardStep_return: (function() {
+ XQueryParser.p_AbbrevForwardStep_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AbbrevForwardStep_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:696:1: p_AbbrevForwardStep : ( ATTR_SIGN )? p_NodeTest ;
+ // $ANTLR start "p_AbbrevForwardStep"
+ p_AbbrevForwardStep: function() {
+ var retval = new XQueryParser.p_AbbrevForwardStep_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ATTR_SIGN290 = null;
+ var p_NodeTest291 = null;
+
+ var ATTR_SIGN290_tree=null;
+
+ try {
+ // XQueryParser.g:697:9: ( ( ATTR_SIGN )? p_NodeTest )
+ // XQueryParser.g:697:11: ( ATTR_SIGN )? p_NodeTest
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:697:11: ( ATTR_SIGN )?
+ var alt116=2;
+ var LA116_0 = this.input.LA(1);
+
+ if ( (LA116_0==ATTR_SIGN) ) {
+ alt116=1;
+ }
+ switch (alt116) {
+ case 1 :
+ // XQueryParser.g:697:11: ATTR_SIGN
+ ATTR_SIGN290=this.match(this.input,ATTR_SIGN,XQueryParser.FOLLOW_ATTR_SIGN_in_p_AbbrevForwardStep6194); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ATTR_SIGN290_tree = this.adaptor.create(ATTR_SIGN290);
+ this.adaptor.addChild(root_0, ATTR_SIGN290_tree);
+ }
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NodeTest_in_p_AbbrevForwardStep6197);
+ p_NodeTest291=this.p_NodeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NodeTest291.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ReverseStep_return: (function() {
+ XQueryParser.p_ReverseStep_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ReverseStep_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:701:1: p_ReverseStep : ( ( p_ReverseAxis p_NodeTest ) | p_AbbrevReverseStep );
+ // $ANTLR start "p_ReverseStep"
+ p_ReverseStep: function() {
+ var retval = new XQueryParser.p_ReverseStep_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ReverseAxis292 = null;
+ var p_NodeTest293 = null;
+ var p_AbbrevReverseStep294 = null;
+
+
+ try {
+ // XQueryParser.g:702:9: ( ( p_ReverseAxis p_NodeTest ) | p_AbbrevReverseStep )
+ var alt117=2;
+ var LA117_0 = this.input.LA(1);
+
+ if ( ((LA117_0>=ANCESTOR && LA117_0<=ANCESTOR_OR_SELF)||(LA117_0>=PARENT && LA117_0<=PRECEDING_SIBLING)) ) {
+ alt117=1;
+ }
+ else if ( (LA117_0==DOT_DOT) ) {
+ alt117=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 117, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt117) {
+ case 1 :
+ // XQueryParser.g:702:11: ( p_ReverseAxis p_NodeTest )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:702:11: ( p_ReverseAxis p_NodeTest )
+ // XQueryParser.g:702:12: p_ReverseAxis p_NodeTest
+ this.pushFollow(XQueryParser.FOLLOW_p_ReverseAxis_in_p_ReverseStep6224);
+ p_ReverseAxis292=this.p_ReverseAxis();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ReverseAxis292.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_NodeTest_in_p_ReverseStep6226);
+ p_NodeTest293=this.p_NodeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NodeTest293.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:702:40: p_AbbrevReverseStep
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AbbrevReverseStep_in_p_ReverseStep6231);
+ p_AbbrevReverseStep294=this.p_AbbrevReverseStep();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AbbrevReverseStep294.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ReverseAxis_return: (function() {
+ XQueryParser.p_ReverseAxis_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ReverseAxis_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:706:1: p_ReverseAxis : ( PARENT COLON_COLON | ANCESTOR COLON_COLON | PRECEDING_SIBLING COLON_COLON | PRECEDING COLON_COLON | ANCESTOR_OR_SELF COLON_COLON );
+ // $ANTLR start "p_ReverseAxis"
+ p_ReverseAxis: function() {
+ var retval = new XQueryParser.p_ReverseAxis_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var PARENT295 = null;
+ var COLON_COLON296 = null;
+ var ANCESTOR297 = null;
+ var COLON_COLON298 = null;
+ var PRECEDING_SIBLING299 = null;
+ var COLON_COLON300 = null;
+ var PRECEDING301 = null;
+ var COLON_COLON302 = null;
+ var ANCESTOR_OR_SELF303 = null;
+ var COLON_COLON304 = null;
+
+ var PARENT295_tree=null;
+ var COLON_COLON296_tree=null;
+ var ANCESTOR297_tree=null;
+ var COLON_COLON298_tree=null;
+ var PRECEDING_SIBLING299_tree=null;
+ var COLON_COLON300_tree=null;
+ var PRECEDING301_tree=null;
+ var COLON_COLON302_tree=null;
+ var ANCESTOR_OR_SELF303_tree=null;
+ var COLON_COLON304_tree=null;
+
+ try {
+ // XQueryParser.g:707:9: ( PARENT COLON_COLON | ANCESTOR COLON_COLON | PRECEDING_SIBLING COLON_COLON | PRECEDING COLON_COLON | ANCESTOR_OR_SELF COLON_COLON )
+ var alt118=5;
+ switch ( this.input.LA(1) ) {
+ case PARENT:
+ alt118=1;
+ break;
+ case ANCESTOR:
+ alt118=2;
+ break;
+ case PRECEDING_SIBLING:
+ alt118=3;
+ break;
+ case PRECEDING:
+ alt118=4;
+ break;
+ case ANCESTOR_OR_SELF:
+ alt118=5;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 118, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt118) {
+ case 1 :
+ // XQueryParser.g:707:11: PARENT COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ PARENT295=this.match(this.input,PARENT,XQueryParser.FOLLOW_PARENT_in_p_ReverseAxis6257); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ PARENT295_tree = this.adaptor.create(PARENT295);
+ this.adaptor.addChild(root_0, PARENT295_tree);
+ }
+ COLON_COLON296=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ReverseAxis6259); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON296_tree = this.adaptor.create(COLON_COLON296);
+ this.adaptor.addChild(root_0, COLON_COLON296_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:708:11: ANCESTOR COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ ANCESTOR297=this.match(this.input,ANCESTOR,XQueryParser.FOLLOW_ANCESTOR_in_p_ReverseAxis6271); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ANCESTOR297_tree = this.adaptor.create(ANCESTOR297);
+ this.adaptor.addChild(root_0, ANCESTOR297_tree);
+ }
+ COLON_COLON298=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ReverseAxis6273); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON298_tree = this.adaptor.create(COLON_COLON298);
+ this.adaptor.addChild(root_0, COLON_COLON298_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:709:11: PRECEDING_SIBLING COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ PRECEDING_SIBLING299=this.match(this.input,PRECEDING_SIBLING,XQueryParser.FOLLOW_PRECEDING_SIBLING_in_p_ReverseAxis6285); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ PRECEDING_SIBLING299_tree = this.adaptor.create(PRECEDING_SIBLING299);
+ this.adaptor.addChild(root_0, PRECEDING_SIBLING299_tree);
+ }
+ COLON_COLON300=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ReverseAxis6287); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON300_tree = this.adaptor.create(COLON_COLON300);
+ this.adaptor.addChild(root_0, COLON_COLON300_tree);
+ }
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:710:11: PRECEDING COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ PRECEDING301=this.match(this.input,PRECEDING,XQueryParser.FOLLOW_PRECEDING_in_p_ReverseAxis6299); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ PRECEDING301_tree = this.adaptor.create(PRECEDING301);
+ this.adaptor.addChild(root_0, PRECEDING301_tree);
+ }
+ COLON_COLON302=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ReverseAxis6301); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON302_tree = this.adaptor.create(COLON_COLON302);
+ this.adaptor.addChild(root_0, COLON_COLON302_tree);
+ }
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:711:11: ANCESTOR_OR_SELF COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ ANCESTOR_OR_SELF303=this.match(this.input,ANCESTOR_OR_SELF,XQueryParser.FOLLOW_ANCESTOR_OR_SELF_in_p_ReverseAxis6313); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ANCESTOR_OR_SELF303_tree = this.adaptor.create(ANCESTOR_OR_SELF303);
+ this.adaptor.addChild(root_0, ANCESTOR_OR_SELF303_tree);
+ }
+ COLON_COLON304=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ReverseAxis6315); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON304_tree = this.adaptor.create(COLON_COLON304);
+ this.adaptor.addChild(root_0, COLON_COLON304_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AbbrevReverseStep_return: (function() {
+ XQueryParser.p_AbbrevReverseStep_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AbbrevReverseStep_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:715:1: p_AbbrevReverseStep : DOT_DOT ;
+ // $ANTLR start "p_AbbrevReverseStep"
+ p_AbbrevReverseStep: function() {
+ var retval = new XQueryParser.p_AbbrevReverseStep_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOT_DOT305 = null;
+
+ var DOT_DOT305_tree=null;
+
+ try {
+ // XQueryParser.g:716:9: ( DOT_DOT )
+ // XQueryParser.g:716:11: DOT_DOT
+ root_0 = this.adaptor.nil();
+
+ DOT_DOT305=this.match(this.input,DOT_DOT,XQueryParser.FOLLOW_DOT_DOT_in_p_AbbrevReverseStep6341); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOT_DOT305_tree = this.adaptor.create(DOT_DOT305);
+ this.adaptor.addChild(root_0, DOT_DOT305_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NodeTest_return: (function() {
+ XQueryParser.p_NodeTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NodeTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:720:1: p_NodeTest : ( p_KindTest | p_NameTest );
+ // $ANTLR start "p_NodeTest"
+ p_NodeTest: function() {
+ var retval = new XQueryParser.p_NodeTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_KindTest306 = null;
+ var p_NameTest307 = null;
+
+
+ try {
+ // XQueryParser.g:721:9: ( p_KindTest | p_NameTest )
+ var alt119=2;
+ alt119 = this.dfa119.predict(this.input);
+ switch (alt119) {
+ case 1 :
+ // XQueryParser.g:721:11: p_KindTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_KindTest_in_p_NodeTest6367);
+ p_KindTest306=this.p_KindTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_KindTest306.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:721:24: p_NameTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NameTest_in_p_NodeTest6371);
+ p_NameTest307=this.p_NameTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NameTest307.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NameTest_return: (function() {
+ XQueryParser.p_NameTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NameTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:725:1: p_NameTest : ( p_QName | p_Wildcard );
+ // $ANTLR start "p_NameTest"
+ p_NameTest: function() {
+ var retval = new XQueryParser.p_NameTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName308 = null;
+ var p_Wildcard309 = null;
+
+
+ try {
+ // XQueryParser.g:726:9: ( p_QName | p_Wildcard )
+ var alt120=2;
+ var LA120_0 = this.input.LA(1);
+
+ if ( ((LA120_0>=ANCESTOR && LA120_0<=EXIT)||(LA120_0>=SEQUENTIAL && LA120_0<=MAINTAINED)||(LA120_0>=MUTABLE && LA120_0<=QUOT_ER)||LA120_0==L_NCName||LA120_0==EXPLICITLY) ) {
+ var LA120_1 = this.input.LA(2);
+
+ if ( (LA120_1==COLON) ) {
+ var LA120_3 = this.input.LA(3);
+
+ if ( (LA120_3==STAR) ) {
+ alt120=2;
+ }
+ else if ( ((LA120_3>=ANCESTOR && LA120_3<=EXIT)||(LA120_3>=SEQUENTIAL && LA120_3<=MAINTAINED)||(LA120_3>=MUTABLE && LA120_3<=QUOT_ER)||LA120_3==L_NCName||LA120_3==EXPLICITLY) ) {
+ alt120=1;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 120, 3, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA120_1==EOF||(LA120_1>=AND && LA120_1<=ASCENDING)||(LA120_1>=BY && LA120_1<=CASTABLE)||LA120_1==COLLATION||LA120_1==DEFAULT||(LA120_1>=DESCENDING && LA120_1<=DIV)||(LA120_1>=ELSE && LA120_1<=EMPTY)||LA120_1==EQ||LA120_1==EXCEPT||LA120_1==FOR||LA120_1==GE||(LA120_1>=GT && LA120_1<=IDIV)||(LA120_1>=INSTANCE && LA120_1<=IS)||LA120_1==LE||(LA120_1>=LT && LA120_1<=MOD)||LA120_1==NE||(LA120_1>=OR && LA120_1<=ORDER)||(LA120_1>=RETURN && LA120_1<=SATISFIES)||LA120_1==STABLE||(LA120_1>=TO && LA120_1<=TREAT)||LA120_1==UNION||LA120_1==WHERE||LA120_1==COUNT||(LA120_1>=END && LA120_1<=GROUP)||LA120_1==ONLY||LA120_1==START||(LA120_1>=AFTER && LA120_1<=BEFORE)||LA120_1==INTO||LA120_1==MODIFY||LA120_1==WITH||(LA120_1>=LPAREN && LA120_1<=RPAREN)||(LA120_1>=LBRACKET && LA120_1<=EQUAL)||LA120_1==NOTEQUAL||LA120_1==COMMA||(LA120_1>=STAR && LA120_1<=SLASH_SLASH)||(LA120_1>=SEMICOLON && LA120_1<=VBAR)||LA120_1==LETDOLLAR) ) {
+ alt120=1;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 120, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA120_0==STAR) ) {
+ alt120=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 120, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt120) {
+ case 1 :
+ // XQueryParser.g:726:11: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_NameTest6397);
+ p_QName308=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName308.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:726:21: p_Wildcard
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_Wildcard_in_p_NameTest6401);
+ p_Wildcard309=this.p_Wildcard();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Wildcard309.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Wildcard_return: (function() {
+ XQueryParser.p_Wildcard_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Wildcard_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:730:1: p_Wildcard : ( STAR ( COLON p_NCName )? | ( p_NCName COLON STAR ) );
+ // $ANTLR start "p_Wildcard"
+ p_Wildcard: function() {
+ var retval = new XQueryParser.p_Wildcard_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var STAR310 = null;
+ var COLON311 = null;
+ var COLON314 = null;
+ var STAR315 = null;
+ var p_NCName312 = null;
+ var p_NCName313 = null;
+
+ var STAR310_tree=null;
+ var COLON311_tree=null;
+ var COLON314_tree=null;
+ var STAR315_tree=null;
+
+ try {
+ // XQueryParser.g:731:9: ( STAR ( COLON p_NCName )? | ( p_NCName COLON STAR ) )
+ var alt122=2;
+ var LA122_0 = this.input.LA(1);
+
+ if ( (LA122_0==STAR) ) {
+ alt122=1;
+ }
+ else if ( ((LA122_0>=ANCESTOR && LA122_0<=EXIT)||(LA122_0>=SEQUENTIAL && LA122_0<=MAINTAINED)||(LA122_0>=MUTABLE && LA122_0<=QUOT_ER)||LA122_0==L_NCName||LA122_0==EXPLICITLY) ) {
+ alt122=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 122, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt122) {
+ case 1 :
+ // XQueryParser.g:731:11: STAR ( COLON p_NCName )?
+ root_0 = this.adaptor.nil();
+
+ STAR310=this.match(this.input,STAR,XQueryParser.FOLLOW_STAR_in_p_Wildcard6427); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ STAR310_tree = this.adaptor.create(STAR310);
+ this.adaptor.addChild(root_0, STAR310_tree);
+ }
+ // XQueryParser.g:731:16: ( COLON p_NCName )?
+ var alt121=2;
+ var LA121_0 = this.input.LA(1);
+
+ if ( (LA121_0==COLON) ) {
+ alt121=1;
+ }
+ switch (alt121) {
+ case 1 :
+ // XQueryParser.g:731:17: COLON p_NCName
+ COLON311=this.match(this.input,COLON,XQueryParser.FOLLOW_COLON_in_p_Wildcard6430); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON311_tree = this.adaptor.create(COLON311);
+ this.adaptor.addChild(root_0, COLON311_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_Wildcard6432);
+ p_NCName312=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName312.getTree());
+
+
+ break;
+
+ }
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:731:36: ( p_NCName COLON STAR )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:731:36: ( p_NCName COLON STAR )
+ // XQueryParser.g:731:37: p_NCName COLON STAR
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_Wildcard6439);
+ p_NCName313=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName313.getTree());
+ COLON314=this.match(this.input,COLON,XQueryParser.FOLLOW_COLON_in_p_Wildcard6441); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON314_tree = this.adaptor.create(COLON314);
+ this.adaptor.addChild(root_0, COLON314_tree);
+ }
+ STAR315=this.match(this.input,STAR,XQueryParser.FOLLOW_STAR_in_p_Wildcard6443); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ STAR315_tree = this.adaptor.create(STAR315);
+ this.adaptor.addChild(root_0, STAR315_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FilterExpr_return: (function() {
+ XQueryParser.p_FilterExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FilterExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:736:1: p_FilterExpr : p_PrimaryExpr p_PredicateList ;
+ // $ANTLR start "p_FilterExpr"
+ p_FilterExpr: function() {
+ var retval = new XQueryParser.p_FilterExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_PrimaryExpr316 = null;
+ var p_PredicateList317 = null;
+
+
+ try {
+ // XQueryParser.g:737:9: ( p_PrimaryExpr p_PredicateList )
+ // XQueryParser.g:737:13: p_PrimaryExpr p_PredicateList
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PrimaryExpr_in_p_FilterExpr6479);
+ p_PrimaryExpr316=this.p_PrimaryExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PrimaryExpr316.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_PredicateList_in_p_FilterExpr6481);
+ p_PredicateList317=this.p_PredicateList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PredicateList317.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PredicateList_return: (function() {
+ XQueryParser.p_PredicateList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PredicateList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:741:1: p_PredicateList : ( p_Predicate )* ;
+ // $ANTLR start "p_PredicateList"
+ p_PredicateList: function() {
+ var retval = new XQueryParser.p_PredicateList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_Predicate318 = null;
+
+
+ try {
+ // XQueryParser.g:742:9: ( ( p_Predicate )* )
+ // XQueryParser.g:742:13: ( p_Predicate )*
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:742:13: ( p_Predicate )*
+ loop123:
+ do {
+ var alt123=2;
+ var LA123_0 = this.input.LA(1);
+
+ if ( (LA123_0==LSQUARE) ) {
+ alt123=1;
+ }
+
+
+ switch (alt123) {
+ case 1 :
+ // XQueryParser.g:742:13: p_Predicate
+ this.pushFollow(XQueryParser.FOLLOW_p_Predicate_in_p_PredicateList6509);
+ p_Predicate318=this.p_Predicate();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Predicate318.getTree());
+
+
+ break;
+
+ default :
+ break loop123;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Predicate_return: (function() {
+ XQueryParser.p_Predicate_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Predicate_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:746:1: p_Predicate : LSQUARE pm_Expr RSQUARE ;
+ // $ANTLR start "p_Predicate"
+ p_Predicate: function() {
+ var retval = new XQueryParser.p_Predicate_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LSQUARE319 = null;
+ var RSQUARE321 = null;
+ var pm_Expr320 = null;
+
+ var LSQUARE319_tree=null;
+ var RSQUARE321_tree=null;
+
+ try {
+ // XQueryParser.g:747:9: ( LSQUARE pm_Expr RSQUARE )
+ // XQueryParser.g:747:13: LSQUARE pm_Expr RSQUARE
+ root_0 = this.adaptor.nil();
+
+ LSQUARE319=this.match(this.input,LSQUARE,XQueryParser.FOLLOW_LSQUARE_in_p_Predicate6538); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LSQUARE319_tree = this.adaptor.create(LSQUARE319);
+ this.adaptor.addChild(root_0, LSQUARE319_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_Predicate6540);
+ pm_Expr320=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr320.getTree());
+ RSQUARE321=this.match(this.input,RSQUARE,XQueryParser.FOLLOW_RSQUARE_in_p_Predicate6542); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RSQUARE321_tree = this.adaptor.create(RSQUARE321);
+ this.adaptor.addChild(root_0, RSQUARE321_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PrimaryExpr_return: (function() {
+ XQueryParser.p_PrimaryExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PrimaryExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:751:1: p_PrimaryExpr : ( p_Literal | p_VarRef | p_ParenthesizedExpr | p_ContextItemExpr | p_FunctionCall | p_OrderedExpr | p_UnorderedExpr | p_Constructor );
+ // $ANTLR start "p_PrimaryExpr"
+ p_PrimaryExpr: function() {
+ var retval = new XQueryParser.p_PrimaryExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_Literal322 = null;
+ var p_VarRef323 = null;
+ var p_ParenthesizedExpr324 = null;
+ var p_ContextItemExpr325 = null;
+ var p_FunctionCall326 = null;
+ var p_OrderedExpr327 = null;
+ var p_UnorderedExpr328 = null;
+ var p_Constructor329 = null;
+
+
+ try {
+ // XQueryParser.g:752:9: ( p_Literal | p_VarRef | p_ParenthesizedExpr | p_ContextItemExpr | p_FunctionCall | p_OrderedExpr | p_UnorderedExpr | p_Constructor )
+ var alt124=8;
+ alt124 = this.dfa124.predict(this.input);
+ switch (alt124) {
+ case 1 :
+ // XQueryParser.g:752:13: p_Literal
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_Literal_in_p_PrimaryExpr6570);
+ p_Literal322=this.p_Literal();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Literal322.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:753:11: p_VarRef
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_VarRef_in_p_PrimaryExpr6582);
+ p_VarRef323=this.p_VarRef();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarRef323.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:754:11: p_ParenthesizedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ParenthesizedExpr_in_p_PrimaryExpr6594);
+ p_ParenthesizedExpr324=this.p_ParenthesizedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ParenthesizedExpr324.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:755:11: p_ContextItemExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ContextItemExpr_in_p_PrimaryExpr6606);
+ p_ContextItemExpr325=this.p_ContextItemExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ContextItemExpr325.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:756:11: p_FunctionCall
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_FunctionCall_in_p_PrimaryExpr6618);
+ p_FunctionCall326=this.p_FunctionCall();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_FunctionCall326.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:757:11: p_OrderedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderedExpr_in_p_PrimaryExpr6630);
+ p_OrderedExpr327=this.p_OrderedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderedExpr327.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:758:11: p_UnorderedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_UnorderedExpr_in_p_PrimaryExpr6642);
+ p_UnorderedExpr328=this.p_UnorderedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_UnorderedExpr328.getTree());
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:759:11: p_Constructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_Constructor_in_p_PrimaryExpr6654);
+ p_Constructor329=this.p_Constructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Constructor329.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Literal_return: (function() {
+ XQueryParser.p_Literal_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Literal_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:763:1: p_Literal : ( p_NumericLiteral | p_StringLiteral );
+ // $ANTLR start "p_Literal"
+ p_Literal: function() {
+ var retval = new XQueryParser.p_Literal_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_NumericLiteral330 = null;
+ var p_StringLiteral331 = null;
+
+
+ try {
+ // XQueryParser.g:764:9: ( p_NumericLiteral | p_StringLiteral )
+ var alt125=2;
+ var LA125_0 = this.input.LA(1);
+
+ if ( ((LA125_0>=L_IntegerLiteral && LA125_0<=L_DoubleLiteral)) ) {
+ alt125=1;
+ }
+ else if ( ((LA125_0>=APOS && LA125_0<=QUOT)) ) {
+ alt125=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 125, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt125) {
+ case 1 :
+ // XQueryParser.g:764:13: p_NumericLiteral
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NumericLiteral_in_p_Literal6682);
+ p_NumericLiteral330=this.p_NumericLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NumericLiteral330.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:764:32: p_StringLiteral
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_Literal6686);
+ p_StringLiteral331=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral331.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NumericLiteral_return: (function() {
+ XQueryParser.p_NumericLiteral_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NumericLiteral_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:768:1: p_NumericLiteral : ( L_IntegerLiteral | L_DecimalLiteral | L_DoubleLiteral );
+ // $ANTLR start "p_NumericLiteral"
+ p_NumericLiteral: function() {
+ var retval = new XQueryParser.p_NumericLiteral_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set332 = null;
+
+ var set332_tree=null;
+
+ try {
+ // XQueryParser.g:769:9: ( L_IntegerLiteral | L_DecimalLiteral | L_DoubleLiteral )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set332=this.input.LT(1);
+ if ( (this.input.LA(1)>=L_IntegerLiteral && this.input.LA(1)<=L_DoubleLiteral) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set332));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_VarRef_return: (function() {
+ XQueryParser.p_VarRef_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_VarRef_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:773:1: p_VarRef : DOLLAR p_VarName ;
+ // $ANTLR start "p_VarRef"
+ p_VarRef: function() {
+ var retval = new XQueryParser.p_VarRef_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR333 = null;
+ var p_VarName334 = null;
+
+ var DOLLAR333_tree=null;
+
+ try {
+ // XQueryParser.g:774:9: ( DOLLAR p_VarName )
+ // XQueryParser.g:774:13: DOLLAR p_VarName
+ root_0 = this.adaptor.nil();
+
+ DOLLAR333=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_VarRef6758); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR333_tree = this.adaptor.create(DOLLAR333);
+ this.adaptor.addChild(root_0, DOLLAR333_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_VarRef6760);
+ p_VarName334=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName334.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_VarName_return: (function() {
+ XQueryParser.p_VarName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_VarName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:778:1: p_VarName : p_QName ;
+ // $ANTLR start "p_VarName"
+ p_VarName: function() {
+ var retval = new XQueryParser.p_VarName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName335 = null;
+
+
+ try {
+ // XQueryParser.g:779:9: ( p_QName )
+ // XQueryParser.g:779:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_VarName6788);
+ p_QName335=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName335.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ParenthesizedExpr_return: (function() {
+ XQueryParser.p_ParenthesizedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ParenthesizedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:783:1: p_ParenthesizedExpr : LPAREN ( pm_Expr )? RPAREN ;
+ // $ANTLR start "p_ParenthesizedExpr"
+ p_ParenthesizedExpr: function() {
+ var retval = new XQueryParser.p_ParenthesizedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN336 = null;
+ var RPAREN338 = null;
+ var pm_Expr337 = null;
+
+ var LPAREN336_tree=null;
+ var RPAREN338_tree=null;
+
+ try {
+ // XQueryParser.g:784:9: ( LPAREN ( pm_Expr )? RPAREN )
+ // XQueryParser.g:784:13: LPAREN ( pm_Expr )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ LPAREN336=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_ParenthesizedExpr6816); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN336_tree = this.adaptor.create(LPAREN336);
+ this.adaptor.addChild(root_0, LPAREN336_tree);
+ }
+ // XQueryParser.g:784:20: ( pm_Expr )?
+ var alt126=2;
+ var LA126_0 = this.input.LA(1);
+
+ if ( ((LA126_0>=ANCESTOR && LA126_0<=EXIT)||(LA126_0>=SEQUENTIAL && LA126_0<=MAINTAINED)||(LA126_0>=MUTABLE && LA126_0<=LPAREN)||LA126_0==DOLLAR||(LA126_0>=STAR && LA126_0<=SMALLER)||(LA126_0>=SLASH && LA126_0<=DOT_DOT)||LA126_0==ATTR_SIGN||(LA126_0>=APOS && LA126_0<=QUOT)||LA126_0==L_NCName||(LA126_0>=L_Pragma && LA126_0<=L_DoubleLiteral)||(LA126_0>=LETDOLLAR && LA126_0<=EXPLICITLY)) ) {
+ alt126=1;
+ }
+ switch (alt126) {
+ case 1 :
+ // XQueryParser.g:784:20: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_ParenthesizedExpr6818);
+ pm_Expr337=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr337.getTree());
+
+
+ break;
+
+ }
+
+ RPAREN338=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_ParenthesizedExpr6821); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN338_tree = this.adaptor.create(RPAREN338);
+ this.adaptor.addChild(root_0, RPAREN338_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ContextItemExpr_return: (function() {
+ XQueryParser.p_ContextItemExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ContextItemExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:788:1: p_ContextItemExpr : DOT ;
+ // $ANTLR start "p_ContextItemExpr"
+ p_ContextItemExpr: function() {
+ var retval = new XQueryParser.p_ContextItemExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOT339 = null;
+
+ var DOT339_tree=null;
+
+ try {
+ // XQueryParser.g:789:9: ( DOT )
+ // XQueryParser.g:789:13: DOT
+ root_0 = this.adaptor.nil();
+
+ DOT339=this.match(this.input,DOT,XQueryParser.FOLLOW_DOT_in_p_ContextItemExpr6849); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOT339_tree = this.adaptor.create(DOT339);
+ this.adaptor.addChild(root_0, DOT339_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrderedExpr_return: (function() {
+ XQueryParser.p_OrderedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrderedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:793:1: p_OrderedExpr : k= ORDERED LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_OrderedExpr"
+ p_OrderedExpr: function() {
+ var retval = new XQueryParser.p_OrderedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET340 = null;
+ var RBRACKET342 = null;
+ var pm_Expr341 = null;
+
+ var k_tree=null;
+ var LBRACKET340_tree=null;
+ var RBRACKET342_tree=null;
+
+ try {
+ // XQueryParser.g:794:9: (k= ORDERED LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:794:13: k= ORDERED LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,ORDERED,XQueryParser.FOLLOW_ORDERED_in_p_OrderedExpr6879); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET340=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_OrderedExpr6882); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET340_tree = this.adaptor.create(LBRACKET340);
+ this.adaptor.addChild(root_0, LBRACKET340_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_OrderedExpr6884);
+ pm_Expr341=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr341.getTree());
+ RBRACKET342=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_OrderedExpr6886); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET342_tree = this.adaptor.create(RBRACKET342);
+ this.adaptor.addChild(root_0, RBRACKET342_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_UnorderedExpr_return: (function() {
+ XQueryParser.p_UnorderedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_UnorderedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:798:1: p_UnorderedExpr : k= UNORDERED LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_UnorderedExpr"
+ p_UnorderedExpr: function() {
+ var retval = new XQueryParser.p_UnorderedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET343 = null;
+ var RBRACKET345 = null;
+ var pm_Expr344 = null;
+
+ var k_tree=null;
+ var LBRACKET343_tree=null;
+ var RBRACKET345_tree=null;
+
+ try {
+ // XQueryParser.g:799:9: (k= UNORDERED LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:799:13: k= UNORDERED LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,UNORDERED,XQueryParser.FOLLOW_UNORDERED_in_p_UnorderedExpr6916); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET343=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_UnorderedExpr6919); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET343_tree = this.adaptor.create(LBRACKET343);
+ this.adaptor.addChild(root_0, LBRACKET343_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_UnorderedExpr6921);
+ pm_Expr344=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr344.getTree());
+ RBRACKET345=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_UnorderedExpr6923); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET345_tree = this.adaptor.create(RBRACKET345);
+ this.adaptor.addChild(root_0, RBRACKET345_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FunctionCall_return: (function() {
+ XQueryParser.p_FunctionCall_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FunctionCall_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:804:1: p_FunctionCall : p_FQName LPAREN ( p_ExprSingle ( COMMA p_ExprSingle )* )? RPAREN ;
+ // $ANTLR start "p_FunctionCall"
+ p_FunctionCall: function() {
+ var retval = new XQueryParser.p_FunctionCall_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN347 = null;
+ var COMMA349 = null;
+ var RPAREN351 = null;
+ var p_FQName346 = null;
+ var p_ExprSingle348 = null;
+ var p_ExprSingle350 = null;
+
+ var LPAREN347_tree=null;
+ var COMMA349_tree=null;
+ var RPAREN351_tree=null;
+
+ try {
+ // XQueryParser.g:805:9: ( p_FQName LPAREN ( p_ExprSingle ( COMMA p_ExprSingle )* )? RPAREN )
+ // XQueryParser.g:805:13: p_FQName LPAREN ( p_ExprSingle ( COMMA p_ExprSingle )* )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_FQName_in_p_FunctionCall6952);
+ p_FQName346=this.p_FQName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_FQName346.getTree());
+ LPAREN347=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_FunctionCall6954); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN347_tree = this.adaptor.create(LPAREN347);
+ this.adaptor.addChild(root_0, LPAREN347_tree);
+ }
+ // XQueryParser.g:805:29: ( p_ExprSingle ( COMMA p_ExprSingle )* )?
+ var alt128=2;
+ var LA128_0 = this.input.LA(1);
+
+ if ( ((LA128_0>=ANCESTOR && LA128_0<=EXIT)||(LA128_0>=SEQUENTIAL && LA128_0<=MAINTAINED)||(LA128_0>=MUTABLE && LA128_0<=LPAREN)||LA128_0==DOLLAR||(LA128_0>=STAR && LA128_0<=SMALLER)||(LA128_0>=SLASH && LA128_0<=DOT_DOT)||LA128_0==ATTR_SIGN||(LA128_0>=APOS && LA128_0<=QUOT)||LA128_0==L_NCName||(LA128_0>=L_Pragma && LA128_0<=L_DoubleLiteral)||(LA128_0>=LETDOLLAR && LA128_0<=EXPLICITLY)) ) {
+ alt128=1;
+ }
+ switch (alt128) {
+ case 1 :
+ // XQueryParser.g:805:30: p_ExprSingle ( COMMA p_ExprSingle )*
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_FunctionCall6957);
+ p_ExprSingle348=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle348.getTree());
+ // XQueryParser.g:805:43: ( COMMA p_ExprSingle )*
+ loop127:
+ do {
+ var alt127=2;
+ var LA127_0 = this.input.LA(1);
+
+ if ( (LA127_0==COMMA) ) {
+ alt127=1;
+ }
+
+
+ switch (alt127) {
+ case 1 :
+ // XQueryParser.g:805:44: COMMA p_ExprSingle
+ COMMA349=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_FunctionCall6960); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA349_tree = this.adaptor.create(COMMA349);
+ this.adaptor.addChild(root_0, COMMA349_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_FunctionCall6962);
+ p_ExprSingle350=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle350.getTree());
+
+
+ break;
+
+ default :
+ break loop127;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+ RPAREN351=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_FunctionCall6968); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN351_tree = this.adaptor.create(RPAREN351);
+ this.adaptor.addChild(root_0, RPAREN351_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Constructor_return: (function() {
+ XQueryParser.p_Constructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Constructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:809:1: p_Constructor : ( p_DirectConstructor | p_ComputedConstructor );
+ // $ANTLR start "p_Constructor"
+ p_Constructor: function() {
+ var retval = new XQueryParser.p_Constructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_DirectConstructor352 = null;
+ var p_ComputedConstructor353 = null;
+
+
+ try {
+ // XQueryParser.g:810:9: ( p_DirectConstructor | p_ComputedConstructor )
+ var alt129=2;
+ var LA129_0 = this.input.LA(1);
+
+ if ( (LA129_0==SMALLER||(LA129_0>=L_DirCommentConstructor && LA129_0<=L_DirPIConstructor)) ) {
+ alt129=1;
+ }
+ else if ( (LA129_0==ATTRIBUTE||LA129_0==COMMENT||LA129_0==DOCUMENT||LA129_0==ELEMENT||LA129_0==NAMESPACE||LA129_0==PROCESSING_INSTRUCTION||LA129_0==TEXT) ) {
+ alt129=2;
+ }
+ else if ( (LA129_0==BINARY) && ((false))) {
+ alt129=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 129, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt129) {
+ case 1 :
+ // XQueryParser.g:810:13: p_DirectConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_DirectConstructor_in_p_Constructor7000);
+ p_DirectConstructor352=this.p_DirectConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DirectConstructor352.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:810:35: p_ComputedConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ComputedConstructor_in_p_Constructor7004);
+ p_ComputedConstructor353=this.p_ComputedConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ComputedConstructor353.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DirectConstructor_return: (function() {
+ XQueryParser.p_DirectConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DirectConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:814:1: p_DirectConstructor : ( p_DirElemConstructor | L_DirCommentConstructor | L_DirPIConstructor );
+ // $ANTLR start "p_DirectConstructor"
+ p_DirectConstructor: function() {
+ var retval = new XQueryParser.p_DirectConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_DirCommentConstructor355 = null;
+ var L_DirPIConstructor356 = null;
+ var p_DirElemConstructor354 = null;
+
+ var L_DirCommentConstructor355_tree=null;
+ var L_DirPIConstructor356_tree=null;
+
+ try {
+ // XQueryParser.g:815:9: ( p_DirElemConstructor | L_DirCommentConstructor | L_DirPIConstructor )
+ var alt130=3;
+ switch ( this.input.LA(1) ) {
+ case SMALLER:
+ alt130=1;
+ break;
+ case L_DirCommentConstructor:
+ alt130=2;
+ break;
+ case L_DirPIConstructor:
+ alt130=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 130, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt130) {
+ case 1 :
+ // XQueryParser.g:815:13: p_DirElemConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_DirElemConstructor_in_p_DirectConstructor7032);
+ p_DirElemConstructor354=this.p_DirElemConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DirElemConstructor354.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:816:11: L_DirCommentConstructor
+ root_0 = this.adaptor.nil();
+
+ L_DirCommentConstructor355=this.match(this.input,L_DirCommentConstructor,XQueryParser.FOLLOW_L_DirCommentConstructor_in_p_DirectConstructor7044); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ L_DirCommentConstructor355_tree = this.adaptor.create(L_DirCommentConstructor355);
+ this.adaptor.addChild(root_0, L_DirCommentConstructor355_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:817:11: L_DirPIConstructor
+ root_0 = this.adaptor.nil();
+
+ L_DirPIConstructor356=this.match(this.input,L_DirPIConstructor,XQueryParser.FOLLOW_L_DirPIConstructor_in_p_DirectConstructor7056); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ L_DirPIConstructor356_tree = this.adaptor.create(L_DirPIConstructor356);
+ this.adaptor.addChild(root_0, L_DirPIConstructor356_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DirElemConstructor_return: (function() {
+ XQueryParser.p_DirElemConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DirElemConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:821:1: p_DirElemConstructor : SMALLER p_QName p_DirAttributeList ( EMPTY_CLOSE_TAG | ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER ) ) -> ^( DirElemConstructor ^( DirAttributeList ( p_DirAttributeList )* ) ^( DirElemContent ( pm_DirElemContent )* ) ) ;
+ // $ANTLR start "p_DirElemConstructor"
+ p_DirElemConstructor: function() {
+ var retval = new XQueryParser.p_DirElemConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SMALLER357 = null;
+ var EMPTY_CLOSE_TAG360 = null;
+ var GREATER361 = null;
+ var CLOSE_TAG363 = null;
+ var S365 = null;
+ var GREATER366 = null;
+ var p_QName358 = null;
+ var p_DirAttributeList359 = null;
+ var pm_DirElemContent362 = null;
+ var p_QName364 = null;
+
+ var SMALLER357_tree=null;
+ var EMPTY_CLOSE_TAG360_tree=null;
+ var GREATER361_tree=null;
+ var CLOSE_TAG363_tree=null;
+ var S365_tree=null;
+ var GREATER366_tree=null;
+ var stream_CLOSE_TAG=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token CLOSE_TAG");
+ var stream_GREATER=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token GREATER");
+ var stream_S=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token S");
+ var stream_EMPTY_CLOSE_TAG=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EMPTY_CLOSE_TAG");
+ var stream_SMALLER=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SMALLER");
+ var stream_p_DirAttributeList=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_DirAttributeList");
+ var stream_pm_DirElemContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_DirElemContent");
+ var stream_p_QName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QName");
+ try {
+ // XQueryParser.g:822:9: ( SMALLER p_QName p_DirAttributeList ( EMPTY_CLOSE_TAG | ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER ) ) -> ^( DirElemConstructor ^( DirAttributeList ( p_DirAttributeList )* ) ^( DirElemContent ( pm_DirElemContent )* ) ) )
+ // XQueryParser.g:822:13: SMALLER p_QName p_DirAttributeList ( EMPTY_CLOSE_TAG | ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER ) )
+ SMALLER357=this.match(this.input,SMALLER,XQueryParser.FOLLOW_SMALLER_in_p_DirElemConstructor7084); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SMALLER.add(SMALLER357);
+
+ if ( this.state.backtracking===0 ) {
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_DirElemConstructor7100);
+ p_QName358=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(p_QName358.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_DirAttributeList_in_p_DirElemConstructor7102);
+ p_DirAttributeList359=this.p_DirAttributeList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_DirAttributeList.add(p_DirAttributeList359.getTree());
+ // XQueryParser.g:824:13: ( EMPTY_CLOSE_TAG | ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER ) )
+ var alt133=2;
+ var LA133_0 = this.input.LA(1);
+
+ if ( (LA133_0==EMPTY_CLOSE_TAG) ) {
+ alt133=1;
+ }
+ else if ( (LA133_0==GREATER) ) {
+ alt133=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 133, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt133) {
+ case 1 :
+ // XQueryParser.g:824:14: EMPTY_CLOSE_TAG
+ EMPTY_CLOSE_TAG360=this.match(this.input,EMPTY_CLOSE_TAG,XQueryParser.FOLLOW_EMPTY_CLOSE_TAG_in_p_DirElemConstructor7118); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EMPTY_CLOSE_TAG.add(EMPTY_CLOSE_TAG360);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:824:32: ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER )
+ // XQueryParser.g:824:32: ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER )
+ // XQueryParser.g:824:33: GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER
+ GREATER361=this.match(this.input,GREATER,XQueryParser.FOLLOW_GREATER_in_p_DirElemConstructor7123); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_GREATER.add(GREATER361);
+
+ // XQueryParser.g:824:41: ( pm_DirElemContent )*
+ loop131:
+ do {
+ var alt131=2;
+ var LA131_0 = this.input.LA(1);
+
+ if ( ((LA131_0>=L_ElementContentChar && LA131_0<=ESCAPE_RBRACKET)||LA131_0==LBRACKET||LA131_0==SMALLER||(LA131_0>=L_DirCommentConstructor && LA131_0<=L_DirPIConstructor)) ) {
+ alt131=1;
+ }
+
+
+ switch (alt131) {
+ case 1 :
+ // XQueryParser.g:824:41: pm_DirElemContent
+ this.pushFollow(XQueryParser.FOLLOW_pm_DirElemContent_in_p_DirElemConstructor7125);
+ pm_DirElemContent362=this.pm_DirElemContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_DirElemContent.add(pm_DirElemContent362.getTree());
+
+
+ break;
+
+ default :
+ break loop131;
+ }
+ } while (true);
+
+ CLOSE_TAG363=this.match(this.input,CLOSE_TAG,XQueryParser.FOLLOW_CLOSE_TAG_in_p_DirElemConstructor7128); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_CLOSE_TAG.add(CLOSE_TAG363);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_DirElemConstructor7130);
+ p_QName364=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(p_QName364.getTree());
+ // XQueryParser.g:824:78: ( S )?
+ var alt132=2;
+ var LA132_0 = this.input.LA(1);
+
+ if ( (LA132_0==S) ) {
+ alt132=1;
+ }
+ switch (alt132) {
+ case 1 :
+ // XQueryParser.g:824:78: S
+ S365=this.match(this.input,S,XQueryParser.FOLLOW_S_in_p_DirElemConstructor7132); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_S.add(S365);
+
+
+
+ break;
+
+ }
+
+ GREATER366=this.match(this.input,GREATER,XQueryParser.FOLLOW_GREATER_in_p_DirElemConstructor7135); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_GREATER.add(GREATER366);
+
+
+
+
+
+
+ break;
+
+ }
+
+
+
+ // AST REWRITE
+ // elements: p_DirAttributeList, pm_DirElemContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 825:17: -> ^( DirElemConstructor ^( DirAttributeList ( p_DirAttributeList )* ) ^( DirElemContent ( pm_DirElemContent )* ) )
+ {
+ // XQueryParser.g:825:20: ^( DirElemConstructor ^( DirAttributeList ( p_DirAttributeList )* ) ^( DirElemContent ( pm_DirElemContent )* ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(DirElemConstructor, "DirElemConstructor"), root_1);
+
+ // XQueryParser.g:825:41: ^( DirAttributeList ( p_DirAttributeList )* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(DirAttributeList, "DirAttributeList"), root_2);
+
+ // XQueryParser.g:825:60: ( p_DirAttributeList )*
+ while ( stream_p_DirAttributeList.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_p_DirAttributeList.nextTree());
+
+ }
+ stream_p_DirAttributeList.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:825:81: ^( DirElemContent ( pm_DirElemContent )* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(DirElemContent, "DirElemContent"), root_2);
+
+ // XQueryParser.g:825:98: ( pm_DirElemContent )*
+ while ( stream_pm_DirElemContent.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_pm_DirElemContent.nextTree());
+
+ }
+ stream_pm_DirElemContent.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DirAttributeList_return: (function() {
+ XQueryParser.p_DirAttributeList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DirAttributeList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:830:1: p_DirAttributeList : ( S ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )? )* ;
+ // $ANTLR start "p_DirAttributeList"
+ p_DirAttributeList: function() {
+ var retval = new XQueryParser.p_DirAttributeList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var S367 = null;
+ var S369 = null;
+ var EQUAL370 = null;
+ var S371 = null;
+ var p_QName368 = null;
+ var p_DirAttributeValue372 = null;
+
+ var S367_tree=null;
+ var S369_tree=null;
+ var EQUAL370_tree=null;
+ var S371_tree=null;
+
+ try {
+ // XQueryParser.g:831:9: ( ( S ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )? )* )
+ // XQueryParser.g:831:11: ( S ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )? )*
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:831:11: ( S ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )? )*
+ loop137:
+ do {
+ var alt137=2;
+ var LA137_0 = this.input.LA(1);
+
+ if ( (LA137_0==S) ) {
+ alt137=1;
+ }
+
+
+ switch (alt137) {
+ case 1 :
+ // XQueryParser.g:831:12: S ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )?
+ S367=this.match(this.input,S,XQueryParser.FOLLOW_S_in_p_DirAttributeList7212); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ S367_tree = this.adaptor.create(S367);
+ this.adaptor.addChild(root_0, S367_tree);
+ }
+ // XQueryParser.g:831:14: ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )?
+ var alt136=2;
+ var LA136_0 = this.input.LA(1);
+
+ if ( ((LA136_0>=ANCESTOR && LA136_0<=EXIT)||(LA136_0>=SEQUENTIAL && LA136_0<=MAINTAINED)||(LA136_0>=MUTABLE && LA136_0<=QUOT_ER)||LA136_0==L_NCName||LA136_0==EXPLICITLY) ) {
+ alt136=1;
+ }
+ switch (alt136) {
+ case 1 :
+ // XQueryParser.g:831:15: p_QName ( S )? EQUAL ( S )? p_DirAttributeValue
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_DirAttributeList7215);
+ p_QName368=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName368.getTree());
+ // XQueryParser.g:831:23: ( S )?
+ var alt134=2;
+ var LA134_0 = this.input.LA(1);
+
+ if ( (LA134_0==S) ) {
+ alt134=1;
+ }
+ switch (alt134) {
+ case 1 :
+ // XQueryParser.g:831:23: S
+ S369=this.match(this.input,S,XQueryParser.FOLLOW_S_in_p_DirAttributeList7217); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ S369_tree = this.adaptor.create(S369);
+ this.adaptor.addChild(root_0, S369_tree);
+ }
+
+
+ break;
+
+ }
+
+ EQUAL370=this.match(this.input,EQUAL,XQueryParser.FOLLOW_EQUAL_in_p_DirAttributeList7220); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ EQUAL370_tree = this.adaptor.create(EQUAL370);
+ this.adaptor.addChild(root_0, EQUAL370_tree);
+ }
+ // XQueryParser.g:831:32: ( S )?
+ var alt135=2;
+ var LA135_0 = this.input.LA(1);
+
+ if ( (LA135_0==S) ) {
+ alt135=1;
+ }
+ switch (alt135) {
+ case 1 :
+ // XQueryParser.g:831:32: S
+ S371=this.match(this.input,S,XQueryParser.FOLLOW_S_in_p_DirAttributeList7222); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ S371_tree = this.adaptor.create(S371);
+ this.adaptor.addChild(root_0, S371_tree);
+ }
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_DirAttributeValue_in_p_DirAttributeList7225);
+ p_DirAttributeValue372=this.p_DirAttributeValue();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DirAttributeValue372.getTree());
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ default :
+ break loop137;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DirAttributeValue_return: (function() {
+ XQueryParser.p_DirAttributeValue_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DirAttributeValue_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:835:1: p_DirAttributeValue : ( ( QUOT ( ESCAPE_QUOT | pm_QuotAttrValueContent )* QUOT ) -> ^( DirAttributeValue ( pm_QuotAttrValueContent )* ) | ( APOS ( ESCAPE_APOS | pm_AposAttrValueContent )* APOS ) -> ^( DirAttributeValue ( pm_AposAttrValueContent )* ) );
+ // $ANTLR start "p_DirAttributeValue"
+ p_DirAttributeValue: function() {
+ var retval = new XQueryParser.p_DirAttributeValue_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var QUOT373 = null;
+ var ESCAPE_QUOT374 = null;
+ var QUOT376 = null;
+ var APOS377 = null;
+ var ESCAPE_APOS378 = null;
+ var APOS380 = null;
+ var pm_QuotAttrValueContent375 = null;
+ var pm_AposAttrValueContent379 = null;
+
+ var QUOT373_tree=null;
+ var ESCAPE_QUOT374_tree=null;
+ var QUOT376_tree=null;
+ var APOS377_tree=null;
+ var ESCAPE_APOS378_tree=null;
+ var APOS380_tree=null;
+ var stream_ESCAPE_QUOT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token ESCAPE_QUOT");
+ var stream_APOS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token APOS");
+ var stream_ESCAPE_APOS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token ESCAPE_APOS");
+ var stream_QUOT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token QUOT");
+ var stream_pm_QuotAttrValueContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_QuotAttrValueContent");
+ var stream_pm_AposAttrValueContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_AposAttrValueContent");
+ try {
+ // XQueryParser.g:836:9: ( ( QUOT ( ESCAPE_QUOT | pm_QuotAttrValueContent )* QUOT ) -> ^( DirAttributeValue ( pm_QuotAttrValueContent )* ) | ( APOS ( ESCAPE_APOS | pm_AposAttrValueContent )* APOS ) -> ^( DirAttributeValue ( pm_AposAttrValueContent )* ) )
+ var alt140=2;
+ var LA140_0 = this.input.LA(1);
+
+ if ( (LA140_0==QUOT) ) {
+ alt140=1;
+ }
+ else if ( (LA140_0==APOS) ) {
+ alt140=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 140, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt140) {
+ case 1 :
+ // XQueryParser.g:836:11: ( QUOT ( ESCAPE_QUOT | pm_QuotAttrValueContent )* QUOT )
+ // XQueryParser.g:836:11: ( QUOT ( ESCAPE_QUOT | pm_QuotAttrValueContent )* QUOT )
+ // XQueryParser.g:836:12: QUOT ( ESCAPE_QUOT | pm_QuotAttrValueContent )* QUOT
+ QUOT373=this.match(this.input,QUOT,XQueryParser.FOLLOW_QUOT_in_p_DirAttributeValue7256); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_QUOT.add(QUOT373);
+
+ // XQueryParser.g:836:17: ( ESCAPE_QUOT | pm_QuotAttrValueContent )*
+ loop138:
+ do {
+ var alt138=3;
+ var LA138_0 = this.input.LA(1);
+
+ if ( (LA138_0==ESCAPE_QUOT) ) {
+ alt138=1;
+ }
+ else if ( (LA138_0==L_QuotAttrContentChar||(LA138_0>=L_PredefinedEntityRef && LA138_0<=ESCAPE_RBRACKET)||LA138_0==LBRACKET) ) {
+ alt138=2;
+ }
+
+
+ switch (alt138) {
+ case 1 :
+ // XQueryParser.g:836:18: ESCAPE_QUOT
+ ESCAPE_QUOT374=this.match(this.input,ESCAPE_QUOT,XQueryParser.FOLLOW_ESCAPE_QUOT_in_p_DirAttributeValue7259); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ESCAPE_QUOT.add(ESCAPE_QUOT374);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:836:32: pm_QuotAttrValueContent
+ this.pushFollow(XQueryParser.FOLLOW_pm_QuotAttrValueContent_in_p_DirAttributeValue7263);
+ pm_QuotAttrValueContent375=this.pm_QuotAttrValueContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_QuotAttrValueContent.add(pm_QuotAttrValueContent375.getTree());
+
+
+ break;
+
+ default :
+ break loop138;
+ }
+ } while (true);
+
+ QUOT376=this.match(this.input,QUOT,XQueryParser.FOLLOW_QUOT_in_p_DirAttributeValue7267); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_QUOT.add(QUOT376);
+
+
+
+
+
+
+ // AST REWRITE
+ // elements: pm_QuotAttrValueContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 837:17: -> ^( DirAttributeValue ( pm_QuotAttrValueContent )* )
+ {
+ // XQueryParser.g:837:20: ^( DirAttributeValue ( pm_QuotAttrValueContent )* )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(DirAttributeValue, "DirAttributeValue"), root_1);
+
+ // XQueryParser.g:837:40: ( pm_QuotAttrValueContent )*
+ while ( stream_pm_QuotAttrValueContent.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_pm_QuotAttrValueContent.nextTree());
+
+ }
+ stream_pm_QuotAttrValueContent.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:838:11: ( APOS ( ESCAPE_APOS | pm_AposAttrValueContent )* APOS )
+ // XQueryParser.g:838:11: ( APOS ( ESCAPE_APOS | pm_AposAttrValueContent )* APOS )
+ // XQueryParser.g:838:12: APOS ( ESCAPE_APOS | pm_AposAttrValueContent )* APOS
+ APOS377=this.match(this.input,APOS,XQueryParser.FOLLOW_APOS_in_p_DirAttributeValue7306); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_APOS.add(APOS377);
+
+ // XQueryParser.g:838:17: ( ESCAPE_APOS | pm_AposAttrValueContent )*
+ loop139:
+ do {
+ var alt139=3;
+ var LA139_0 = this.input.LA(1);
+
+ if ( (LA139_0==ESCAPE_APOS) ) {
+ alt139=1;
+ }
+ else if ( (LA139_0==L_AposAttrContentChar||(LA139_0>=L_PredefinedEntityRef && LA139_0<=ESCAPE_RBRACKET)||LA139_0==LBRACKET) ) {
+ alt139=2;
+ }
+
+
+ switch (alt139) {
+ case 1 :
+ // XQueryParser.g:838:18: ESCAPE_APOS
+ ESCAPE_APOS378=this.match(this.input,ESCAPE_APOS,XQueryParser.FOLLOW_ESCAPE_APOS_in_p_DirAttributeValue7309); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ESCAPE_APOS.add(ESCAPE_APOS378);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:838:32: pm_AposAttrValueContent
+ this.pushFollow(XQueryParser.FOLLOW_pm_AposAttrValueContent_in_p_DirAttributeValue7313);
+ pm_AposAttrValueContent379=this.pm_AposAttrValueContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_AposAttrValueContent.add(pm_AposAttrValueContent379.getTree());
+
+
+ break;
+
+ default :
+ break loop139;
+ }
+ } while (true);
+
+ APOS380=this.match(this.input,APOS,XQueryParser.FOLLOW_APOS_in_p_DirAttributeValue7317); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_APOS.add(APOS380);
+
+
+
+
+
+
+ // AST REWRITE
+ // elements: pm_AposAttrValueContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 839:17: -> ^( DirAttributeValue ( pm_AposAttrValueContent )* )
+ {
+ // XQueryParser.g:839:20: ^( DirAttributeValue ( pm_AposAttrValueContent )* )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(DirAttributeValue, "DirAttributeValue"), root_1);
+
+ // XQueryParser.g:839:40: ( pm_AposAttrValueContent )*
+ while ( stream_pm_AposAttrValueContent.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_pm_AposAttrValueContent.nextTree());
+
+ }
+ stream_pm_AposAttrValueContent.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_QuotAttrValueContent_return: (function() {
+ XQueryParser.pm_QuotAttrValueContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_QuotAttrValueContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:843:1: pm_QuotAttrValueContent : ( pg_QuotAttrContentChar | pg_CommonContent | p_ElemEnclosedExpr );
+ // $ANTLR start "pm_QuotAttrValueContent"
+ pm_QuotAttrValueContent: function() {
+ var retval = new XQueryParser.pm_QuotAttrValueContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pg_QuotAttrContentChar381 = null;
+ var pg_CommonContent382 = null;
+ var p_ElemEnclosedExpr383 = null;
+
+
+ try {
+ // XQueryParser.g:844:9: ( pg_QuotAttrContentChar | pg_CommonContent | p_ElemEnclosedExpr )
+ var alt141=3;
+ switch ( this.input.LA(1) ) {
+ case L_QuotAttrContentChar:
+ alt141=1;
+ break;
+ case L_PredefinedEntityRef:
+ case L_CharRef:
+ case ESCAPE_LBRACKET:
+ case ESCAPE_RBRACKET:
+ alt141=2;
+ break;
+ case LBRACKET:
+ alt141=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 141, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt141) {
+ case 1 :
+ // XQueryParser.g:844:11: pg_QuotAttrContentChar
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_QuotAttrContentChar_in_pm_QuotAttrValueContent7369);
+ pg_QuotAttrContentChar381=this.pg_QuotAttrContentChar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_QuotAttrContentChar381.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:844:36: pg_CommonContent
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_CommonContent_in_pm_QuotAttrValueContent7373);
+ pg_CommonContent382=this.pg_CommonContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_CommonContent382.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:844:55: p_ElemEnclosedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ElemEnclosedExpr_in_pm_QuotAttrValueContent7377);
+ p_ElemEnclosedExpr383=this.p_ElemEnclosedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElemEnclosedExpr383.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_QuotAttrContentChar_return: (function() {
+ XQueryParser.pg_QuotAttrContentChar_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_QuotAttrContentChar_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:851:1: pg_QuotAttrContentChar : L_QuotAttrContentChar -> ^( AttributeValueChar L_QuotAttrContentChar ) ;
+ // $ANTLR start "pg_QuotAttrContentChar"
+ pg_QuotAttrContentChar: function() {
+ var retval = new XQueryParser.pg_QuotAttrContentChar_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_QuotAttrContentChar384 = null;
+
+ var L_QuotAttrContentChar384_tree=null;
+ var stream_L_QuotAttrContentChar=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token L_QuotAttrContentChar");
+
+ try {
+ // XQueryParser.g:852:9: ( L_QuotAttrContentChar -> ^( AttributeValueChar L_QuotAttrContentChar ) )
+ // XQueryParser.g:852:11: L_QuotAttrContentChar
+ L_QuotAttrContentChar384=this.match(this.input,L_QuotAttrContentChar,XQueryParser.FOLLOW_L_QuotAttrContentChar_in_pg_QuotAttrContentChar7406); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_L_QuotAttrContentChar.add(L_QuotAttrContentChar384);
+
+
+
+ // AST REWRITE
+ // elements: L_QuotAttrContentChar
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 853:17: -> ^( AttributeValueChar L_QuotAttrContentChar )
+ {
+ // XQueryParser.g:853:20: ^( AttributeValueChar L_QuotAttrContentChar )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(AttributeValueChar, "AttributeValueChar"), root_1);
+
+ this.adaptor.addChild(root_1, stream_L_QuotAttrContentChar.nextNode());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_AposAttrValueContent_return: (function() {
+ XQueryParser.pm_AposAttrValueContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_AposAttrValueContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:858:1: pm_AposAttrValueContent : ( pg_AposAttrContentChar | pg_CommonContent | p_ElemEnclosedExpr );
+ // $ANTLR start "pm_AposAttrValueContent"
+ pm_AposAttrValueContent: function() {
+ var retval = new XQueryParser.pm_AposAttrValueContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pg_AposAttrContentChar385 = null;
+ var pg_CommonContent386 = null;
+ var p_ElemEnclosedExpr387 = null;
+
+
+ try {
+ // XQueryParser.g:859:9: ( pg_AposAttrContentChar | pg_CommonContent | p_ElemEnclosedExpr )
+ var alt142=3;
+ switch ( this.input.LA(1) ) {
+ case L_AposAttrContentChar:
+ alt142=1;
+ break;
+ case L_PredefinedEntityRef:
+ case L_CharRef:
+ case ESCAPE_LBRACKET:
+ case ESCAPE_RBRACKET:
+ alt142=2;
+ break;
+ case LBRACKET:
+ alt142=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 142, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt142) {
+ case 1 :
+ // XQueryParser.g:859:13: pg_AposAttrContentChar
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_AposAttrContentChar_in_pm_AposAttrValueContent7459);
+ pg_AposAttrContentChar385=this.pg_AposAttrContentChar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_AposAttrContentChar385.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:859:38: pg_CommonContent
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_CommonContent_in_pm_AposAttrValueContent7463);
+ pg_CommonContent386=this.pg_CommonContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_CommonContent386.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:859:57: p_ElemEnclosedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ElemEnclosedExpr_in_pm_AposAttrValueContent7467);
+ p_ElemEnclosedExpr387=this.p_ElemEnclosedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElemEnclosedExpr387.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_AposAttrContentChar_return: (function() {
+ XQueryParser.pg_AposAttrContentChar_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_AposAttrContentChar_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:866:1: pg_AposAttrContentChar : L_AposAttrContentChar -> ^( AttributeValueChar L_AposAttrContentChar ) ;
+ // $ANTLR start "pg_AposAttrContentChar"
+ pg_AposAttrContentChar: function() {
+ var retval = new XQueryParser.pg_AposAttrContentChar_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_AposAttrContentChar388 = null;
+
+ var L_AposAttrContentChar388_tree=null;
+ var stream_L_AposAttrContentChar=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token L_AposAttrContentChar");
+
+ try {
+ // XQueryParser.g:867:9: ( L_AposAttrContentChar -> ^( AttributeValueChar L_AposAttrContentChar ) )
+ // XQueryParser.g:867:11: L_AposAttrContentChar
+ L_AposAttrContentChar388=this.match(this.input,L_AposAttrContentChar,XQueryParser.FOLLOW_L_AposAttrContentChar_in_pg_AposAttrContentChar7496); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_L_AposAttrContentChar.add(L_AposAttrContentChar388);
+
+
+
+ // AST REWRITE
+ // elements: L_AposAttrContentChar
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 868:17: -> ^( AttributeValueChar L_AposAttrContentChar )
+ {
+ // XQueryParser.g:868:20: ^( AttributeValueChar L_AposAttrContentChar )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(AttributeValueChar, "AttributeValueChar"), root_1);
+
+ this.adaptor.addChild(root_1, stream_L_AposAttrContentChar.nextNode());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_DirElemContent_return: (function() {
+ XQueryParser.pm_DirElemContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_DirElemContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:873:1: pm_DirElemContent : ( p_DirectConstructor | L_CDataSection | p_ElemEnclosedExpr | pg_CommonContent | pg_ElementContentChar );
+ // $ANTLR start "pm_DirElemContent"
+ pm_DirElemContent: function() {
+ var retval = new XQueryParser.pm_DirElemContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_CDataSection390 = null;
+ var p_DirectConstructor389 = null;
+ var p_ElemEnclosedExpr391 = null;
+ var pg_CommonContent392 = null;
+ var pg_ElementContentChar393 = null;
+
+ var L_CDataSection390_tree=null;
+
+ try {
+ // XQueryParser.g:874:9: ( p_DirectConstructor | L_CDataSection | p_ElemEnclosedExpr | pg_CommonContent | pg_ElementContentChar )
+ var alt143=5;
+ switch ( this.input.LA(1) ) {
+ case SMALLER:
+ case L_DirCommentConstructor:
+ case L_DirPIConstructor:
+ alt143=1;
+ break;
+ case L_CDataSection:
+ alt143=2;
+ break;
+ case LBRACKET:
+ alt143=3;
+ break;
+ case L_PredefinedEntityRef:
+ case L_CharRef:
+ case ESCAPE_LBRACKET:
+ case ESCAPE_RBRACKET:
+ alt143=4;
+ break;
+ case L_ElementContentChar:
+ alt143=5;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 143, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt143) {
+ case 1 :
+ // XQueryParser.g:874:11: p_DirectConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_DirectConstructor_in_pm_DirElemContent7547);
+ p_DirectConstructor389=this.p_DirectConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DirectConstructor389.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:875:11: L_CDataSection
+ root_0 = this.adaptor.nil();
+
+ L_CDataSection390=this.match(this.input,L_CDataSection,XQueryParser.FOLLOW_L_CDataSection_in_pm_DirElemContent7559); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ L_CDataSection390_tree = this.adaptor.create(L_CDataSection390);
+ this.adaptor.addChild(root_0, L_CDataSection390_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:876:11: p_ElemEnclosedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ElemEnclosedExpr_in_pm_DirElemContent7571);
+ p_ElemEnclosedExpr391=this.p_ElemEnclosedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElemEnclosedExpr391.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:877:11: pg_CommonContent
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_CommonContent_in_pm_DirElemContent7583);
+ pg_CommonContent392=this.pg_CommonContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_CommonContent392.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:878:11: pg_ElementContentChar
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_ElementContentChar_in_pm_DirElemContent7595);
+ pg_ElementContentChar393=this.pg_ElementContentChar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_ElementContentChar393.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_ElementContentChar_return: (function() {
+ XQueryParser.pg_ElementContentChar_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_ElementContentChar_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:885:1: pg_ElementContentChar : L_ElementContentChar -> ^( ElementContentChar L_ElementContentChar ) ;
+ // $ANTLR start "pg_ElementContentChar"
+ pg_ElementContentChar: function() {
+ var retval = new XQueryParser.pg_ElementContentChar_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_ElementContentChar394 = null;
+
+ var L_ElementContentChar394_tree=null;
+ var stream_L_ElementContentChar=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token L_ElementContentChar");
+
+ try {
+ // XQueryParser.g:886:9: ( L_ElementContentChar -> ^( ElementContentChar L_ElementContentChar ) )
+ // XQueryParser.g:886:11: L_ElementContentChar
+ L_ElementContentChar394=this.match(this.input,L_ElementContentChar,XQueryParser.FOLLOW_L_ElementContentChar_in_pg_ElementContentChar7624); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_L_ElementContentChar.add(L_ElementContentChar394);
+
+
+
+ // AST REWRITE
+ // elements: L_ElementContentChar
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 887:17: -> ^( ElementContentChar L_ElementContentChar )
+ {
+ // XQueryParser.g:887:20: ^( ElementContentChar L_ElementContentChar )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(ElementContentChar, "ElementContentChar"), root_1);
+
+ this.adaptor.addChild(root_1, stream_L_ElementContentChar.nextNode());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_CommonContent_return: (function() {
+ XQueryParser.pg_CommonContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_CommonContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:895:1: pg_CommonContent : pm_CommonContent -> ^( CommonContent pm_CommonContent ) ;
+ // $ANTLR start "pg_CommonContent"
+ pg_CommonContent: function() {
+ var retval = new XQueryParser.pg_CommonContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_CommonContent395 = null;
+
+ var stream_pm_CommonContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_CommonContent");
+ try {
+ // XQueryParser.g:896:9: ( pm_CommonContent -> ^( CommonContent pm_CommonContent ) )
+ // XQueryParser.g:896:13: pm_CommonContent
+ this.pushFollow(XQueryParser.FOLLOW_pm_CommonContent_in_pg_CommonContent7680);
+ pm_CommonContent395=this.pm_CommonContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_CommonContent.add(pm_CommonContent395.getTree());
+
+
+ // AST REWRITE
+ // elements: pm_CommonContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 897:17: -> ^( CommonContent pm_CommonContent )
+ {
+ // XQueryParser.g:897:20: ^( CommonContent pm_CommonContent )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(CommonContent, "CommonContent"), root_1);
+
+ this.adaptor.addChild(root_1, stream_pm_CommonContent.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_CommonContent_return: (function() {
+ XQueryParser.pm_CommonContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_CommonContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:902:1: pm_CommonContent : ( L_PredefinedEntityRef | L_CharRef | ESCAPE_LBRACKET | ESCAPE_RBRACKET );
+ // $ANTLR start "pm_CommonContent"
+ pm_CommonContent: function() {
+ var retval = new XQueryParser.pm_CommonContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set396 = null;
+
+ var set396_tree=null;
+
+ try {
+ // XQueryParser.g:903:9: ( L_PredefinedEntityRef | L_CharRef | ESCAPE_LBRACKET | ESCAPE_RBRACKET )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set396=this.input.LT(1);
+ if ( (this.input.LA(1)>=L_PredefinedEntityRef && this.input.LA(1)<=ESCAPE_RBRACKET) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set396));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ElemEnclosedExpr_return: (function() {
+ XQueryParser.p_ElemEnclosedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ElemEnclosedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:910:1: p_ElemEnclosedExpr : LBRACKET ( pm_Expr ) RBRACKET ;
+ // $ANTLR start "p_ElemEnclosedExpr"
+ p_ElemEnclosedExpr: function() {
+ var retval = new XQueryParser.p_ElemEnclosedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LBRACKET397 = null;
+ var RBRACKET399 = null;
+ var pm_Expr398 = null;
+
+ var LBRACKET397_tree=null;
+ var RBRACKET399_tree=null;
+
+ try {
+ // XQueryParser.g:911:9: ( LBRACKET ( pm_Expr ) RBRACKET )
+ // XQueryParser.g:911:13: LBRACKET ( pm_Expr ) RBRACKET
+ root_0 = this.adaptor.nil();
+
+ LBRACKET397=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_ElemEnclosedExpr7776); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET397_tree = this.adaptor.create(LBRACKET397);
+ this.adaptor.addChild(root_0, LBRACKET397_tree);
+ }
+ // XQueryParser.g:912:13: ( pm_Expr )
+ // XQueryParser.g:912:14: pm_Expr
+ if ( this.state.backtracking===0 ) {
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_ElemEnclosedExpr7793);
+ pm_Expr398=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr398.getTree());
+ if ( this.state.backtracking===0 ) {
+ }
+
+
+
+ RBRACKET399=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_ElemEnclosedExpr7810); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET399_tree = this.adaptor.create(RBRACKET399);
+ this.adaptor.addChild(root_0, RBRACKET399_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ComputedConstructor_return: (function() {
+ XQueryParser.p_ComputedConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ComputedConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:936:1: p_ComputedConstructor : ( p_CompDocConstructor | p_CompElemConstructor | p_CompAttrConstructor | p_CompNamespaceConstructor | p_CompTextConstructor | p_CompCommentConstructor | p_CompPIConstructor | {...}? => p_CompBinaryConstructor );
+ // $ANTLR start "p_ComputedConstructor"
+ p_ComputedConstructor: function() {
+ var retval = new XQueryParser.p_ComputedConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_CompDocConstructor400 = null;
+ var p_CompElemConstructor401 = null;
+ var p_CompAttrConstructor402 = null;
+ var p_CompNamespaceConstructor403 = null;
+ var p_CompTextConstructor404 = null;
+ var p_CompCommentConstructor405 = null;
+ var p_CompPIConstructor406 = null;
+ var p_CompBinaryConstructor407 = null;
+
+
+ try {
+ // XQueryParser.g:937:9: ( p_CompDocConstructor | p_CompElemConstructor | p_CompAttrConstructor | p_CompNamespaceConstructor | p_CompTextConstructor | p_CompCommentConstructor | p_CompPIConstructor | {...}? => p_CompBinaryConstructor )
+ var alt144=8;
+ var LA144_0 = this.input.LA(1);
+
+ if ( (LA144_0==DOCUMENT) ) {
+ alt144=1;
+ }
+ else if ( (LA144_0==ELEMENT) ) {
+ alt144=2;
+ }
+ else if ( (LA144_0==ATTRIBUTE) ) {
+ alt144=3;
+ }
+ else if ( (LA144_0==NAMESPACE) ) {
+ alt144=4;
+ }
+ else if ( (LA144_0==TEXT) ) {
+ alt144=5;
+ }
+ else if ( (LA144_0==COMMENT) ) {
+ alt144=6;
+ }
+ else if ( (LA144_0==PROCESSING_INSTRUCTION) ) {
+ alt144=7;
+ }
+ else if ( (LA144_0==BINARY) && ((false))) {
+ alt144=8;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 144, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt144) {
+ case 1 :
+ // XQueryParser.g:937:13: p_CompDocConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompDocConstructor_in_p_ComputedConstructor7861);
+ p_CompDocConstructor400=this.p_CompDocConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompDocConstructor400.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:938:11: p_CompElemConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompElemConstructor_in_p_ComputedConstructor7873);
+ p_CompElemConstructor401=this.p_CompElemConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompElemConstructor401.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:939:11: p_CompAttrConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompAttrConstructor_in_p_ComputedConstructor7885);
+ p_CompAttrConstructor402=this.p_CompAttrConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompAttrConstructor402.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:940:11: p_CompNamespaceConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompNamespaceConstructor_in_p_ComputedConstructor7897);
+ p_CompNamespaceConstructor403=this.p_CompNamespaceConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompNamespaceConstructor403.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:941:11: p_CompTextConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompTextConstructor_in_p_ComputedConstructor7909);
+ p_CompTextConstructor404=this.p_CompTextConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompTextConstructor404.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:942:11: p_CompCommentConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompCommentConstructor_in_p_ComputedConstructor7921);
+ p_CompCommentConstructor405=this.p_CompCommentConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompCommentConstructor405.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:943:11: p_CompPIConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompPIConstructor_in_p_ComputedConstructor7933);
+ p_CompPIConstructor406=this.p_CompPIConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompPIConstructor406.getTree());
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:944:11: {...}? => p_CompBinaryConstructor
+ root_0 = this.adaptor.nil();
+
+ if ( !((false)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ComputedConstructor", "false");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_CompBinaryConstructor_in_p_ComputedConstructor7948);
+ p_CompBinaryConstructor407=this.p_CompBinaryConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompBinaryConstructor407.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompDocConstructor_return: (function() {
+ XQueryParser.p_CompDocConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompDocConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:948:1: p_CompDocConstructor : k= DOCUMENT LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_CompDocConstructor"
+ p_CompDocConstructor: function() {
+ var retval = new XQueryParser.p_CompDocConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET408 = null;
+ var RBRACKET410 = null;
+ var pm_Expr409 = null;
+
+ var k_tree=null;
+ var LBRACKET408_tree=null;
+ var RBRACKET410_tree=null;
+
+ try {
+ // XQueryParser.g:949:9: (k= DOCUMENT LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:949:13: k= DOCUMENT LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DOCUMENT,XQueryParser.FOLLOW_DOCUMENT_in_p_CompDocConstructor7982); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET408=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompDocConstructor7985); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET408_tree = this.adaptor.create(LBRACKET408);
+ this.adaptor.addChild(root_0, LBRACKET408_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompDocConstructor7987);
+ pm_Expr409=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr409.getTree());
+ RBRACKET410=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompDocConstructor7989); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET410_tree = this.adaptor.create(RBRACKET410);
+ this.adaptor.addChild(root_0, RBRACKET410_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompElemConstructor_return: (function() {
+ XQueryParser.p_CompElemConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompElemConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:953:1: p_CompElemConstructor : k= ELEMENT ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET ;
+ // $ANTLR start "p_CompElemConstructor"
+ p_CompElemConstructor: function() {
+ var retval = new XQueryParser.p_CompElemConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET412 = null;
+ var RBRACKET414 = null;
+ var LBRACKET415 = null;
+ var RBRACKET417 = null;
+ var p_QName411 = null;
+ var pm_Expr413 = null;
+ var pm_Expr416 = null;
+
+ var k_tree=null;
+ var LBRACKET412_tree=null;
+ var RBRACKET414_tree=null;
+ var LBRACKET415_tree=null;
+ var RBRACKET417_tree=null;
+
+ try {
+ // XQueryParser.g:954:9: (k= ELEMENT ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET )
+ // XQueryParser.g:954:13: k= ELEMENT ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,ELEMENT,XQueryParser.FOLLOW_ELEMENT_in_p_CompElemConstructor8030); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ // XQueryParser.g:954:24: ( p_QName | ( LBRACKET pm_Expr RBRACKET ) )
+ var alt145=2;
+ var LA145_0 = this.input.LA(1);
+
+ if ( ((LA145_0>=ANCESTOR && LA145_0<=EXIT)||(LA145_0>=SEQUENTIAL && LA145_0<=MAINTAINED)||(LA145_0>=MUTABLE && LA145_0<=QUOT_ER)||LA145_0==L_NCName||LA145_0==EXPLICITLY) ) {
+ alt145=1;
+ }
+ else if ( (LA145_0==LBRACKET) ) {
+ alt145=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 145, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt145) {
+ case 1 :
+ // XQueryParser.g:954:25: p_QName
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_CompElemConstructor8034);
+ p_QName411=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName411.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:954:35: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:954:35: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:954:36: LBRACKET pm_Expr RBRACKET
+ LBRACKET412=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompElemConstructor8039); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET412_tree = this.adaptor.create(LBRACKET412);
+ this.adaptor.addChild(root_0, LBRACKET412_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompElemConstructor8041);
+ pm_Expr413=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr413.getTree());
+ RBRACKET414=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompElemConstructor8043); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET414_tree = this.adaptor.create(RBRACKET414);
+ this.adaptor.addChild(root_0, RBRACKET414_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+
+ LBRACKET415=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompElemConstructor8047); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET415_tree = this.adaptor.create(LBRACKET415);
+ this.adaptor.addChild(root_0, LBRACKET415_tree);
+ }
+ // XQueryParser.g:954:73: ( pm_Expr )?
+ var alt146=2;
+ var LA146_0 = this.input.LA(1);
+
+ if ( ((LA146_0>=ANCESTOR && LA146_0<=EXIT)||(LA146_0>=SEQUENTIAL && LA146_0<=MAINTAINED)||(LA146_0>=MUTABLE && LA146_0<=LPAREN)||LA146_0==DOLLAR||(LA146_0>=STAR && LA146_0<=SMALLER)||(LA146_0>=SLASH && LA146_0<=DOT_DOT)||LA146_0==ATTR_SIGN||(LA146_0>=APOS && LA146_0<=QUOT)||LA146_0==L_NCName||(LA146_0>=L_Pragma && LA146_0<=L_DoubleLiteral)||(LA146_0>=LETDOLLAR && LA146_0<=EXPLICITLY)) ) {
+ alt146=1;
+ }
+ switch (alt146) {
+ case 1 :
+ // XQueryParser.g:954:73: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompElemConstructor8049);
+ pm_Expr416=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr416.getTree());
+
+
+ break;
+
+ }
+
+ RBRACKET417=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompElemConstructor8052); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET417_tree = this.adaptor.create(RBRACKET417);
+ this.adaptor.addChild(root_0, RBRACKET417_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompAttrConstructor_return: (function() {
+ XQueryParser.p_CompAttrConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompAttrConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:961:1: p_CompAttrConstructor : k= ATTRIBUTE ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET ;
+ // $ANTLR start "p_CompAttrConstructor"
+ p_CompAttrConstructor: function() {
+ var retval = new XQueryParser.p_CompAttrConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET419 = null;
+ var RBRACKET421 = null;
+ var LBRACKET422 = null;
+ var RBRACKET424 = null;
+ var p_QName418 = null;
+ var pm_Expr420 = null;
+ var pm_Expr423 = null;
+
+ var k_tree=null;
+ var LBRACKET419_tree=null;
+ var RBRACKET421_tree=null;
+ var LBRACKET422_tree=null;
+ var RBRACKET424_tree=null;
+
+ try {
+ // XQueryParser.g:962:9: (k= ATTRIBUTE ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET )
+ // XQueryParser.g:962:13: k= ATTRIBUTE ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,ATTRIBUTE,XQueryParser.FOLLOW_ATTRIBUTE_in_p_CompAttrConstructor8085); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ // XQueryParser.g:962:26: ( p_QName | ( LBRACKET pm_Expr RBRACKET ) )
+ var alt147=2;
+ var LA147_0 = this.input.LA(1);
+
+ if ( ((LA147_0>=ANCESTOR && LA147_0<=EXIT)||(LA147_0>=SEQUENTIAL && LA147_0<=MAINTAINED)||(LA147_0>=MUTABLE && LA147_0<=QUOT_ER)||LA147_0==L_NCName||LA147_0==EXPLICITLY) ) {
+ alt147=1;
+ }
+ else if ( (LA147_0==LBRACKET) ) {
+ alt147=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 147, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt147) {
+ case 1 :
+ // XQueryParser.g:962:27: p_QName
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_CompAttrConstructor8089);
+ p_QName418=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName418.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:962:37: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:962:37: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:962:38: LBRACKET pm_Expr RBRACKET
+ LBRACKET419=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompAttrConstructor8094); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET419_tree = this.adaptor.create(LBRACKET419);
+ this.adaptor.addChild(root_0, LBRACKET419_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompAttrConstructor8096);
+ pm_Expr420=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr420.getTree());
+ RBRACKET421=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompAttrConstructor8098); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET421_tree = this.adaptor.create(RBRACKET421);
+ this.adaptor.addChild(root_0, RBRACKET421_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+
+ LBRACKET422=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompAttrConstructor8102); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET422_tree = this.adaptor.create(LBRACKET422);
+ this.adaptor.addChild(root_0, LBRACKET422_tree);
+ }
+ // XQueryParser.g:962:75: ( pm_Expr )?
+ var alt148=2;
+ var LA148_0 = this.input.LA(1);
+
+ if ( ((LA148_0>=ANCESTOR && LA148_0<=EXIT)||(LA148_0>=SEQUENTIAL && LA148_0<=MAINTAINED)||(LA148_0>=MUTABLE && LA148_0<=LPAREN)||LA148_0==DOLLAR||(LA148_0>=STAR && LA148_0<=SMALLER)||(LA148_0>=SLASH && LA148_0<=DOT_DOT)||LA148_0==ATTR_SIGN||(LA148_0>=APOS && LA148_0<=QUOT)||LA148_0==L_NCName||(LA148_0>=L_Pragma && LA148_0<=L_DoubleLiteral)||(LA148_0>=LETDOLLAR && LA148_0<=EXPLICITLY)) ) {
+ alt148=1;
+ }
+ switch (alt148) {
+ case 1 :
+ // XQueryParser.g:962:75: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompAttrConstructor8104);
+ pm_Expr423=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr423.getTree());
+
+
+ break;
+
+ }
+
+ RBRACKET424=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompAttrConstructor8107); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET424_tree = this.adaptor.create(RBRACKET424);
+ this.adaptor.addChild(root_0, RBRACKET424_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompNamespaceConstructor_return: (function() {
+ XQueryParser.p_CompNamespaceConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompNamespaceConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:966:1: p_CompNamespaceConstructor : k= NAMESPACE ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET ;
+ // $ANTLR start "p_CompNamespaceConstructor"
+ p_CompNamespaceConstructor: function() {
+ var retval = new XQueryParser.p_CompNamespaceConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET426 = null;
+ var RBRACKET428 = null;
+ var LBRACKET429 = null;
+ var RBRACKET431 = null;
+ var p_NCName425 = null;
+ var pm_Expr427 = null;
+ var pm_Expr430 = null;
+
+ var k_tree=null;
+ var LBRACKET426_tree=null;
+ var RBRACKET428_tree=null;
+ var LBRACKET429_tree=null;
+ var RBRACKET431_tree=null;
+
+ try {
+ // XQueryParser.g:967:9: (k= NAMESPACE ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET )
+ // XQueryParser.g:967:11: k= NAMESPACE ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_p_CompNamespaceConstructor8135); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ // XQueryParser.g:967:24: ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) )
+ var alt149=2;
+ var LA149_0 = this.input.LA(1);
+
+ if ( ((LA149_0>=ANCESTOR && LA149_0<=EXIT)||(LA149_0>=SEQUENTIAL && LA149_0<=MAINTAINED)||(LA149_0>=MUTABLE && LA149_0<=QUOT_ER)||LA149_0==L_NCName||LA149_0==EXPLICITLY) ) {
+ alt149=1;
+ }
+ else if ( (LA149_0==LBRACKET) ) {
+ alt149=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 149, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt149) {
+ case 1 :
+ // XQueryParser.g:967:25: p_NCName
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_CompNamespaceConstructor8139);
+ p_NCName425=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName425.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:967:36: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:967:36: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:967:37: LBRACKET pm_Expr RBRACKET
+ LBRACKET426=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompNamespaceConstructor8144); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET426_tree = this.adaptor.create(LBRACKET426);
+ this.adaptor.addChild(root_0, LBRACKET426_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompNamespaceConstructor8146);
+ pm_Expr427=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr427.getTree());
+ RBRACKET428=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompNamespaceConstructor8148); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET428_tree = this.adaptor.create(RBRACKET428);
+ this.adaptor.addChild(root_0, RBRACKET428_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+
+ LBRACKET429=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompNamespaceConstructor8152); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET429_tree = this.adaptor.create(LBRACKET429);
+ this.adaptor.addChild(root_0, LBRACKET429_tree);
+ }
+ // XQueryParser.g:967:74: ( pm_Expr )?
+ var alt150=2;
+ var LA150_0 = this.input.LA(1);
+
+ if ( ((LA150_0>=ANCESTOR && LA150_0<=EXIT)||(LA150_0>=SEQUENTIAL && LA150_0<=MAINTAINED)||(LA150_0>=MUTABLE && LA150_0<=LPAREN)||LA150_0==DOLLAR||(LA150_0>=STAR && LA150_0<=SMALLER)||(LA150_0>=SLASH && LA150_0<=DOT_DOT)||LA150_0==ATTR_SIGN||(LA150_0>=APOS && LA150_0<=QUOT)||LA150_0==L_NCName||(LA150_0>=L_Pragma && LA150_0<=L_DoubleLiteral)||(LA150_0>=LETDOLLAR && LA150_0<=EXPLICITLY)) ) {
+ alt150=1;
+ }
+ switch (alt150) {
+ case 1 :
+ // XQueryParser.g:967:74: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompNamespaceConstructor8154);
+ pm_Expr430=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr430.getTree());
+
+
+ break;
+
+ }
+
+ RBRACKET431=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompNamespaceConstructor8157); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET431_tree = this.adaptor.create(RBRACKET431);
+ this.adaptor.addChild(root_0, RBRACKET431_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompTextConstructor_return: (function() {
+ XQueryParser.p_CompTextConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompTextConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:977:1: p_CompTextConstructor : k= TEXT LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_CompTextConstructor"
+ p_CompTextConstructor: function() {
+ var retval = new XQueryParser.p_CompTextConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET432 = null;
+ var RBRACKET434 = null;
+ var pm_Expr433 = null;
+
+ var k_tree=null;
+ var LBRACKET432_tree=null;
+ var RBRACKET434_tree=null;
+
+ try {
+ // XQueryParser.g:978:9: (k= TEXT LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:978:13: k= TEXT LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,TEXT,XQueryParser.FOLLOW_TEXT_in_p_CompTextConstructor8193); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET432=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompTextConstructor8196); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET432_tree = this.adaptor.create(LBRACKET432);
+ this.adaptor.addChild(root_0, LBRACKET432_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompTextConstructor8198);
+ pm_Expr433=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr433.getTree());
+ RBRACKET434=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompTextConstructor8200); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET434_tree = this.adaptor.create(RBRACKET434);
+ this.adaptor.addChild(root_0, RBRACKET434_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompBinaryConstructor_return: (function() {
+ XQueryParser.p_CompBinaryConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompBinaryConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:982:1: p_CompBinaryConstructor : k= BINARY LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_CompBinaryConstructor"
+ p_CompBinaryConstructor: function() {
+ var retval = new XQueryParser.p_CompBinaryConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET435 = null;
+ var RBRACKET437 = null;
+ var pm_Expr436 = null;
+
+ var k_tree=null;
+ var LBRACKET435_tree=null;
+ var RBRACKET437_tree=null;
+
+ try {
+ // XQueryParser.g:983:9: (k= BINARY LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:983:13: k= BINARY LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,BINARY,XQueryParser.FOLLOW_BINARY_in_p_CompBinaryConstructor8230); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET435=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompBinaryConstructor8233); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET435_tree = this.adaptor.create(LBRACKET435);
+ this.adaptor.addChild(root_0, LBRACKET435_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompBinaryConstructor8235);
+ pm_Expr436=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr436.getTree());
+ RBRACKET437=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompBinaryConstructor8237); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET437_tree = this.adaptor.create(RBRACKET437);
+ this.adaptor.addChild(root_0, RBRACKET437_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompCommentConstructor_return: (function() {
+ XQueryParser.p_CompCommentConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompCommentConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:987:1: p_CompCommentConstructor : k= COMMENT LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_CompCommentConstructor"
+ p_CompCommentConstructor: function() {
+ var retval = new XQueryParser.p_CompCommentConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET438 = null;
+ var RBRACKET440 = null;
+ var pm_Expr439 = null;
+
+ var k_tree=null;
+ var LBRACKET438_tree=null;
+ var RBRACKET440_tree=null;
+
+ try {
+ // XQueryParser.g:988:9: (k= COMMENT LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:988:13: k= COMMENT LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,COMMENT,XQueryParser.FOLLOW_COMMENT_in_p_CompCommentConstructor8267); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET438=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompCommentConstructor8270); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET438_tree = this.adaptor.create(LBRACKET438);
+ this.adaptor.addChild(root_0, LBRACKET438_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompCommentConstructor8272);
+ pm_Expr439=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr439.getTree());
+ RBRACKET440=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompCommentConstructor8274); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET440_tree = this.adaptor.create(RBRACKET440);
+ this.adaptor.addChild(root_0, RBRACKET440_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompPIConstructor_return: (function() {
+ XQueryParser.p_CompPIConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompPIConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:992:1: p_CompPIConstructor : k= PROCESSING_INSTRUCTION ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET ;
+ // $ANTLR start "p_CompPIConstructor"
+ p_CompPIConstructor: function() {
+ var retval = new XQueryParser.p_CompPIConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET442 = null;
+ var RBRACKET444 = null;
+ var LBRACKET445 = null;
+ var RBRACKET447 = null;
+ var p_NCName441 = null;
+ var pm_Expr443 = null;
+ var pm_Expr446 = null;
+
+ var k_tree=null;
+ var LBRACKET442_tree=null;
+ var RBRACKET444_tree=null;
+ var LBRACKET445_tree=null;
+ var RBRACKET447_tree=null;
+
+ try {
+ // XQueryParser.g:993:9: (k= PROCESSING_INSTRUCTION ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET )
+ // XQueryParser.g:993:13: k= PROCESSING_INSTRUCTION ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,PROCESSING_INSTRUCTION,XQueryParser.FOLLOW_PROCESSING_INSTRUCTION_in_p_CompPIConstructor8305); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ // XQueryParser.g:993:39: ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) )
+ var alt151=2;
+ var LA151_0 = this.input.LA(1);
+
+ if ( ((LA151_0>=ANCESTOR && LA151_0<=EXIT)||(LA151_0>=SEQUENTIAL && LA151_0<=MAINTAINED)||(LA151_0>=MUTABLE && LA151_0<=QUOT_ER)||LA151_0==L_NCName||LA151_0==EXPLICITLY) ) {
+ alt151=1;
+ }
+ else if ( (LA151_0==LBRACKET) ) {
+ alt151=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 151, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt151) {
+ case 1 :
+ // XQueryParser.g:993:40: p_NCName
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_CompPIConstructor8309);
+ p_NCName441=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName441.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:993:51: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:993:51: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:993:52: LBRACKET pm_Expr RBRACKET
+ LBRACKET442=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompPIConstructor8314); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET442_tree = this.adaptor.create(LBRACKET442);
+ this.adaptor.addChild(root_0, LBRACKET442_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompPIConstructor8316);
+ pm_Expr443=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr443.getTree());
+ RBRACKET444=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompPIConstructor8318); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET444_tree = this.adaptor.create(RBRACKET444);
+ this.adaptor.addChild(root_0, RBRACKET444_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+
+ LBRACKET445=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompPIConstructor8322); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET445_tree = this.adaptor.create(LBRACKET445);
+ this.adaptor.addChild(root_0, LBRACKET445_tree);
+ }
+ // XQueryParser.g:993:89: ( pm_Expr )?
+ var alt152=2;
+ var LA152_0 = this.input.LA(1);
+
+ if ( ((LA152_0>=ANCESTOR && LA152_0<=EXIT)||(LA152_0>=SEQUENTIAL && LA152_0<=MAINTAINED)||(LA152_0>=MUTABLE && LA152_0<=LPAREN)||LA152_0==DOLLAR||(LA152_0>=STAR && LA152_0<=SMALLER)||(LA152_0>=SLASH && LA152_0<=DOT_DOT)||LA152_0==ATTR_SIGN||(LA152_0>=APOS && LA152_0<=QUOT)||LA152_0==L_NCName||(LA152_0>=L_Pragma && LA152_0<=L_DoubleLiteral)||(LA152_0>=LETDOLLAR && LA152_0<=EXPLICITLY)) ) {
+ alt152=1;
+ }
+ switch (alt152) {
+ case 1 :
+ // XQueryParser.g:993:89: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompPIConstructor8324);
+ pm_Expr446=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr446.getTree());
+
+
+ break;
+
+ }
+
+ RBRACKET447=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompPIConstructor8327); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET447_tree = this.adaptor.create(RBRACKET447);
+ this.adaptor.addChild(root_0, RBRACKET447_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SingleType_return: (function() {
+ XQueryParser.p_SingleType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SingleType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:997:1: p_SingleType : p_AtomicType ( QUESTION )? ;
+ // $ANTLR start "p_SingleType"
+ p_SingleType: function() {
+ var retval = new XQueryParser.p_SingleType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var QUESTION449 = null;
+ var p_AtomicType448 = null;
+
+ var QUESTION449_tree=null;
+
+ try {
+ // XQueryParser.g:998:9: ( p_AtomicType ( QUESTION )? )
+ // XQueryParser.g:998:13: p_AtomicType ( QUESTION )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AtomicType_in_p_SingleType8355);
+ p_AtomicType448=this.p_AtomicType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AtomicType448.getTree());
+ // XQueryParser.g:998:26: ( QUESTION )?
+ var alt153=2;
+ var LA153_0 = this.input.LA(1);
+
+ if ( (LA153_0==QUESTION) ) {
+ alt153=1;
+ }
+ switch (alt153) {
+ case 1 :
+ // XQueryParser.g:998:26: QUESTION
+ QUESTION449=this.match(this.input,QUESTION,XQueryParser.FOLLOW_QUESTION_in_p_SingleType8357); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ QUESTION449_tree = this.adaptor.create(QUESTION449);
+ this.adaptor.addChild(root_0, QUESTION449_tree);
+ }
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TypeDeclaration_return: (function() {
+ XQueryParser.p_TypeDeclaration_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TypeDeclaration_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1002:1: p_TypeDeclaration : k= AS st= p_SequenceType -> ^( TypeDeclaration $st) ;
+ // $ANTLR start "p_TypeDeclaration"
+ p_TypeDeclaration: function() {
+ var retval = new XQueryParser.p_TypeDeclaration_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var st = null;
+
+ var k_tree=null;
+ var stream_AS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token AS");
+ var stream_p_SequenceType=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_SequenceType");
+ try {
+ // XQueryParser.g:1003:9: (k= AS st= p_SequenceType -> ^( TypeDeclaration $st) )
+ // XQueryParser.g:1003:13: k= AS st= p_SequenceType
+ k=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_TypeDeclaration8388); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_AS.add(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_SequenceType_in_p_TypeDeclaration8393);
+ st=this.p_SequenceType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_SequenceType.add(st.getTree());
+
+
+ // AST REWRITE
+ // elements: st
+ // token labels:
+ // rule labels: retval, st
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_st=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token st",st!=null?st.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1004:17: -> ^( TypeDeclaration $st)
+ {
+ // XQueryParser.g:1004:20: ^( TypeDeclaration $st)
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(TypeDeclaration, "TypeDeclaration"), root_1);
+
+ this.adaptor.addChild(root_1, stream_st.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SequenceType_return: (function() {
+ XQueryParser.p_SequenceType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SequenceType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1008:1: p_SequenceType : (k= EMPTY_SEQUENCE l= LPAREN r= RPAREN -> ^( SequenceType ^( EmptySequenceTest $k $l $r) ) | it= p_ItemType ( ( p_OccurrenceIndicator )=>oi= p_OccurrenceIndicator )? -> ^( SequenceType $it ( $oi)? ) );
+ // $ANTLR start "p_SequenceType"
+ p_SequenceType: function() {
+ var retval = new XQueryParser.p_SequenceType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var l = null;
+ var r = null;
+ var it = null;
+ var oi = null;
+
+ var k_tree=null;
+ var l_tree=null;
+ var r_tree=null;
+ var stream_EMPTY_SEQUENCE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EMPTY_SEQUENCE");
+ var stream_RPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token RPAREN");
+ var stream_LPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token LPAREN");
+ var stream_p_ItemType=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ItemType");
+ var stream_p_OccurrenceIndicator=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_OccurrenceIndicator");
+ try {
+ // XQueryParser.g:1009:9: (k= EMPTY_SEQUENCE l= LPAREN r= RPAREN -> ^( SequenceType ^( EmptySequenceTest $k $l $r) ) | it= p_ItemType ( ( p_OccurrenceIndicator )=>oi= p_OccurrenceIndicator )? -> ^( SequenceType $it ( $oi)? ) )
+ var alt155=2;
+ var LA155_0 = this.input.LA(1);
+
+ if ( (LA155_0==EMPTY_SEQUENCE) ) {
+ var LA155_1 = this.input.LA(2);
+
+ if ( (LA155_1==LPAREN) ) {
+ alt155=1;
+ }
+ else if ( (LA155_1==EOF||(LA155_1>=AND && LA155_1<=AT)||LA155_1==CASE||LA155_1==COLLATION||LA155_1==DEFAULT||(LA155_1>=DESCENDING && LA155_1<=DIV)||(LA155_1>=ELSE && LA155_1<=EMPTY)||LA155_1==EQ||(LA155_1>=EXCEPT && LA155_1<=EXTERNAL)||LA155_1==FOR||LA155_1==GE||(LA155_1>=GT && LA155_1<=IDIV)||LA155_1==IN||(LA155_1>=INSTANCE && LA155_1<=IS)||LA155_1==LE||(LA155_1>=LT && LA155_1<=MOD)||LA155_1==NE||(LA155_1>=OR && LA155_1<=ORDER)||(LA155_1>=RETURN && LA155_1<=SATISFIES)||LA155_1==STABLE||LA155_1==TO||LA155_1==UNION||LA155_1==WHERE||LA155_1==COUNT||(LA155_1>=END && LA155_1<=GROUP)||LA155_1==ONLY||LA155_1==START||(LA155_1>=AFTER && LA155_1<=BEFORE)||LA155_1==INTO||LA155_1==MODIFY||LA155_1==WITH||LA155_1==RPAREN||(LA155_1>=LBRACKET && LA155_1<=RBRACKET)||(LA155_1>=RSQUARE && LA155_1<=NOTEQUAL)||(LA155_1>=COMMA && LA155_1<=GREATER_GREATER)||LA155_1==COLON||(LA155_1>=SEMICOLON && LA155_1<=VBAR)||LA155_1==LETDOLLAR) ) {
+ alt155=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 155, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( ((LA155_0>=ANCESTOR && LA155_0<=EMPTY)||(LA155_0>=ENCODING && LA155_0<=EXIT)||(LA155_0>=SEQUENTIAL && LA155_0<=MAINTAINED)||(LA155_0>=MUTABLE && LA155_0<=QUOT_ER)||LA155_0==L_NCName||LA155_0==EXPLICITLY) ) {
+ alt155=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 155, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt155) {
+ case 1 :
+ // XQueryParser.g:1009:13: k= EMPTY_SEQUENCE l= LPAREN r= RPAREN
+ k=this.match(this.input,EMPTY_SEQUENCE,XQueryParser.FOLLOW_EMPTY_SEQUENCE_in_p_SequenceType8448); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EMPTY_SEQUENCE.add(k);
+
+ l=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_SequenceType8453); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LPAREN.add(l);
+
+ r=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_SequenceType8457); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RPAREN.add(r);
+
+
+
+ // AST REWRITE
+ // elements: k, r, l
+ // token labels: r, l, k
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_r=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token r",r);
+ var stream_l=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token l",l);
+ var stream_k=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token k",k);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1010:17: -> ^( SequenceType ^( EmptySequenceTest $k $l $r) )
+ {
+ // XQueryParser.g:1010:20: ^( SequenceType ^( EmptySequenceTest $k $l $r) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(SequenceType, "SequenceType"), root_1);
+
+ // XQueryParser.g:1010:35: ^( EmptySequenceTest $k $l $r)
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(EmptySequenceTest, "EmptySequenceTest"), root_2);
+
+ this.adaptor.addChild(root_2, stream_k.nextNode());
+ this.adaptor.addChild(root_2, stream_l.nextNode());
+ this.adaptor.addChild(root_2, stream_r.nextNode());
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:1011:11: it= p_ItemType ( ( p_OccurrenceIndicator )=>oi= p_OccurrenceIndicator )?
+ this.pushFollow(XQueryParser.FOLLOW_p_ItemType_in_p_SequenceType8506);
+ it=this.p_ItemType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ItemType.add(it.getTree());
+ // XQueryParser.g:1011:25: ( ( p_OccurrenceIndicator )=>oi= p_OccurrenceIndicator )?
+ var alt154=2;
+ alt154 = this.dfa154.predict(this.input);
+ switch (alt154) {
+ case 1 :
+ // XQueryParser.g:1011:26: ( p_OccurrenceIndicator )=>oi= p_OccurrenceIndicator
+ this.pushFollow(XQueryParser.FOLLOW_p_OccurrenceIndicator_in_p_SequenceType8517);
+ oi=this.p_OccurrenceIndicator();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_OccurrenceIndicator.add(oi.getTree());
+
+
+ break;
+
+ }
+
+
+
+ // AST REWRITE
+ // elements: oi, it
+ // token labels:
+ // rule labels: retval, it, oi
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_it=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token it",it!=null?it.tree:null);
+ var stream_oi=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token oi",oi!=null?oi.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1012:17: -> ^( SequenceType $it ( $oi)? )
+ {
+ // XQueryParser.g:1012:20: ^( SequenceType $it ( $oi)? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(SequenceType, "SequenceType"), root_1);
+
+ this.adaptor.addChild(root_1, stream_it.nextTree());
+ // XQueryParser.g:1012:39: ( $oi)?
+ if ( stream_oi.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_oi.nextTree());
+
+ }
+ stream_oi.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OccurrenceIndicator_return: (function() {
+ XQueryParser.p_OccurrenceIndicator_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OccurrenceIndicator_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1016:1: p_OccurrenceIndicator : ( QUESTION | STAR | PLUS );
+ // $ANTLR start "p_OccurrenceIndicator"
+ p_OccurrenceIndicator: function() {
+ var retval = new XQueryParser.p_OccurrenceIndicator_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set450 = null;
+
+ var set450_tree=null;
+
+ try {
+ // XQueryParser.g:1017:9: ( QUESTION | STAR | PLUS )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set450=this.input.LT(1);
+ if ( (this.input.LA(1)>=QUESTION && this.input.LA(1)<=PLUS) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set450));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ItemType_return: (function() {
+ XQueryParser.p_ItemType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ItemType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1021:1: p_ItemType : ( p_KindTest -> ^( KindTest p_KindTest ) | {...}? => ( BINARY LPAREN RPAREN ) -> ^( BinaryTest BINARY LPAREN RPAREN ) | ( ITEM LPAREN RPAREN ) -> ^( ItemTest ITEM LPAREN RPAREN ) | p_AtomicType );
+ // $ANTLR start "p_ItemType"
+ p_ItemType: function() {
+ var retval = new XQueryParser.p_ItemType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var BINARY452 = null;
+ var LPAREN453 = null;
+ var RPAREN454 = null;
+ var ITEM455 = null;
+ var LPAREN456 = null;
+ var RPAREN457 = null;
+ var p_KindTest451 = null;
+ var p_AtomicType458 = null;
+
+ var BINARY452_tree=null;
+ var LPAREN453_tree=null;
+ var RPAREN454_tree=null;
+ var ITEM455_tree=null;
+ var LPAREN456_tree=null;
+ var RPAREN457_tree=null;
+ var stream_RPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token RPAREN");
+ var stream_ITEM=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token ITEM");
+ var stream_BINARY=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token BINARY");
+ var stream_LPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token LPAREN");
+ var stream_p_KindTest=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_KindTest");
+ try {
+ // XQueryParser.g:1022:9: ( p_KindTest -> ^( KindTest p_KindTest ) | {...}? => ( BINARY LPAREN RPAREN ) -> ^( BinaryTest BINARY LPAREN RPAREN ) | ( ITEM LPAREN RPAREN ) -> ^( ItemTest ITEM LPAREN RPAREN ) | p_AtomicType )
+ var alt156=4;
+ alt156 = this.dfa156.predict(this.input);
+ switch (alt156) {
+ case 1 :
+ // XQueryParser.g:1022:11: p_KindTest
+ this.pushFollow(XQueryParser.FOLLOW_p_KindTest_in_p_ItemType8619);
+ p_KindTest451=this.p_KindTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_KindTest.add(p_KindTest451.getTree());
+
+
+ // AST REWRITE
+ // elements: p_KindTest
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1023:17: -> ^( KindTest p_KindTest )
+ {
+ // XQueryParser.g:1023:20: ^( KindTest p_KindTest )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(KindTest, "KindTest"), root_1);
+
+ this.adaptor.addChild(root_1, stream_p_KindTest.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:1024:11: {...}? => ( BINARY LPAREN RPAREN )
+ if ( !((false)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ItemType", "false");
+ }
+ // XQueryParser.g:1024:22: ( BINARY LPAREN RPAREN )
+ // XQueryParser.g:1024:23: BINARY LPAREN RPAREN
+ BINARY452=this.match(this.input,BINARY,XQueryParser.FOLLOW_BINARY_in_p_ItemType8659); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BINARY.add(BINARY452);
+
+ LPAREN453=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_ItemType8661); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LPAREN.add(LPAREN453);
+
+ RPAREN454=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_ItemType8663); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RPAREN.add(RPAREN454);
+
+
+
+
+
+
+ // AST REWRITE
+ // elements: LPAREN, RPAREN, BINARY
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1025:17: -> ^( BinaryTest BINARY LPAREN RPAREN )
+ {
+ // XQueryParser.g:1025:20: ^( BinaryTest BINARY LPAREN RPAREN )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(BinaryTest, "BinaryTest"), root_1);
+
+ this.adaptor.addChild(root_1, stream_BINARY.nextNode());
+ this.adaptor.addChild(root_1, stream_LPAREN.nextNode());
+ this.adaptor.addChild(root_1, stream_RPAREN.nextNode());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 3 :
+ // XQueryParser.g:1026:11: ( ITEM LPAREN RPAREN )
+ // XQueryParser.g:1026:11: ( ITEM LPAREN RPAREN )
+ // XQueryParser.g:1026:12: ITEM LPAREN RPAREN
+ ITEM455=this.match(this.input,ITEM,XQueryParser.FOLLOW_ITEM_in_p_ItemType8705); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ITEM.add(ITEM455);
+
+ LPAREN456=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_ItemType8707); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LPAREN.add(LPAREN456);
+
+ RPAREN457=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_ItemType8709); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RPAREN.add(RPAREN457);
+
+
+
+
+
+
+ // AST REWRITE
+ // elements: RPAREN, LPAREN, ITEM
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1027:17: -> ^( ItemTest ITEM LPAREN RPAREN )
+ {
+ // XQueryParser.g:1027:20: ^( ItemTest ITEM LPAREN RPAREN )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(ItemTest, "ItemTest"), root_1);
+
+ this.adaptor.addChild(root_1, stream_ITEM.nextNode());
+ this.adaptor.addChild(root_1, stream_LPAREN.nextNode());
+ this.adaptor.addChild(root_1, stream_RPAREN.nextNode());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 4 :
+ // XQueryParser.g:1028:11: p_AtomicType
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AtomicType_in_p_ItemType8750);
+ p_AtomicType458=this.p_AtomicType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AtomicType458.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AtomicType_return: (function() {
+ XQueryParser.p_AtomicType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AtomicType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1032:1: p_AtomicType : p_QName -> ^( AtomicType p_QName ) ;
+ // $ANTLR start "p_AtomicType"
+ p_AtomicType: function() {
+ var retval = new XQueryParser.p_AtomicType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName459 = null;
+
+ var stream_p_QName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QName");
+ try {
+ // XQueryParser.g:1033:9: ( p_QName -> ^( AtomicType p_QName ) )
+ // XQueryParser.g:1033:11: p_QName
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_AtomicType8776);
+ p_QName459=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(p_QName459.getTree());
+
+
+ // AST REWRITE
+ // elements: p_QName
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1034:17: -> ^( AtomicType p_QName )
+ {
+ // XQueryParser.g:1034:20: ^( AtomicType p_QName )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(AtomicType, "AtomicType"), root_1);
+
+ this.adaptor.addChild(root_1, stream_p_QName.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_KindTest_return: (function() {
+ XQueryParser.p_KindTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_KindTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1038:1: p_KindTest : ( p_DocumentTest | p_ElementTest | p_AttributeTest | p_SchemaElementTest | p_SchemaAttributeTest | p_NamespaceNodeTest | p_PITest | p_CommentTest | p_TextTest | p_AnyKindTest );
+ // $ANTLR start "p_KindTest"
+ p_KindTest: function() {
+ var retval = new XQueryParser.p_KindTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_DocumentTest460 = null;
+ var p_ElementTest461 = null;
+ var p_AttributeTest462 = null;
+ var p_SchemaElementTest463 = null;
+ var p_SchemaAttributeTest464 = null;
+ var p_NamespaceNodeTest465 = null;
+ var p_PITest466 = null;
+ var p_CommentTest467 = null;
+ var p_TextTest468 = null;
+ var p_AnyKindTest469 = null;
+
+
+ try {
+ // XQueryParser.g:1039:9: ( p_DocumentTest | p_ElementTest | p_AttributeTest | p_SchemaElementTest | p_SchemaAttributeTest | p_NamespaceNodeTest | p_PITest | p_CommentTest | p_TextTest | p_AnyKindTest )
+ var alt157=10;
+ switch ( this.input.LA(1) ) {
+ case DOCUMENT_NODE:
+ alt157=1;
+ break;
+ case ELEMENT:
+ alt157=2;
+ break;
+ case ATTRIBUTE:
+ alt157=3;
+ break;
+ case SCHEMA_ELEMENT:
+ alt157=4;
+ break;
+ case SCHEMA_ATTRIBUTE:
+ alt157=5;
+ break;
+ case NAMESPACE_NODE:
+ alt157=6;
+ break;
+ case PROCESSING_INSTRUCTION:
+ alt157=7;
+ break;
+ case COMMENT:
+ alt157=8;
+ break;
+ case TEXT:
+ alt157=9;
+ break;
+ case NODE:
+ alt157=10;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 157, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt157) {
+ case 1 :
+ // XQueryParser.g:1039:11: p_DocumentTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_DocumentTest_in_p_KindTest8826);
+ p_DocumentTest460=this.p_DocumentTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DocumentTest460.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1040:11: p_ElementTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ElementTest_in_p_KindTest8838);
+ p_ElementTest461=this.p_ElementTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElementTest461.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1041:11: p_AttributeTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AttributeTest_in_p_KindTest8850);
+ p_AttributeTest462=this.p_AttributeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AttributeTest462.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:1042:11: p_SchemaElementTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_SchemaElementTest_in_p_KindTest8862);
+ p_SchemaElementTest463=this.p_SchemaElementTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SchemaElementTest463.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:1043:11: p_SchemaAttributeTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_SchemaAttributeTest_in_p_KindTest8874);
+ p_SchemaAttributeTest464=this.p_SchemaAttributeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SchemaAttributeTest464.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:1044:11: p_NamespaceNodeTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NamespaceNodeTest_in_p_KindTest8886);
+ p_NamespaceNodeTest465=this.p_NamespaceNodeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NamespaceNodeTest465.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:1045:11: p_PITest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PITest_in_p_KindTest8898);
+ p_PITest466=this.p_PITest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PITest466.getTree());
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:1046:11: p_CommentTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CommentTest_in_p_KindTest8910);
+ p_CommentTest467=this.p_CommentTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CommentTest467.getTree());
+
+
+ break;
+ case 9 :
+ // XQueryParser.g:1047:11: p_TextTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TextTest_in_p_KindTest8922);
+ p_TextTest468=this.p_TextTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TextTest468.getTree());
+
+
+ break;
+ case 10 :
+ // XQueryParser.g:1048:11: p_AnyKindTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AnyKindTest_in_p_KindTest8934);
+ p_AnyKindTest469=this.p_AnyKindTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AnyKindTest469.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AnyKindTest_return: (function() {
+ XQueryParser.p_AnyKindTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AnyKindTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1052:1: p_AnyKindTest : NODE LPAREN RPAREN ;
+ // $ANTLR start "p_AnyKindTest"
+ p_AnyKindTest: function() {
+ var retval = new XQueryParser.p_AnyKindTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var NODE470 = null;
+ var LPAREN471 = null;
+ var RPAREN472 = null;
+
+ var NODE470_tree=null;
+ var LPAREN471_tree=null;
+ var RPAREN472_tree=null;
+
+ try {
+ // XQueryParser.g:1053:9: ( NODE LPAREN RPAREN )
+ // XQueryParser.g:1053:13: NODE LPAREN RPAREN
+ root_0 = this.adaptor.nil();
+
+ NODE470=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_AnyKindTest8962); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ NODE470_tree = this.adaptor.create(NODE470);
+ this.adaptor.addChild(root_0, NODE470_tree);
+ }
+ LPAREN471=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_AnyKindTest8964); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN471_tree = this.adaptor.create(LPAREN471);
+ this.adaptor.addChild(root_0, LPAREN471_tree);
+ }
+ RPAREN472=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_AnyKindTest8966); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN472_tree = this.adaptor.create(RPAREN472);
+ this.adaptor.addChild(root_0, RPAREN472_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DocumentTest_return: (function() {
+ XQueryParser.p_DocumentTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DocumentTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1057:1: p_DocumentTest : DOCUMENT_NODE LPAREN ( p_ElementTest | p_SchemaElementTest )? RPAREN ;
+ // $ANTLR start "p_DocumentTest"
+ p_DocumentTest: function() {
+ var retval = new XQueryParser.p_DocumentTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOCUMENT_NODE473 = null;
+ var LPAREN474 = null;
+ var RPAREN477 = null;
+ var p_ElementTest475 = null;
+ var p_SchemaElementTest476 = null;
+
+ var DOCUMENT_NODE473_tree=null;
+ var LPAREN474_tree=null;
+ var RPAREN477_tree=null;
+
+ try {
+ // XQueryParser.g:1058:9: ( DOCUMENT_NODE LPAREN ( p_ElementTest | p_SchemaElementTest )? RPAREN )
+ // XQueryParser.g:1058:13: DOCUMENT_NODE LPAREN ( p_ElementTest | p_SchemaElementTest )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ DOCUMENT_NODE473=this.match(this.input,DOCUMENT_NODE,XQueryParser.FOLLOW_DOCUMENT_NODE_in_p_DocumentTest8994); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOCUMENT_NODE473_tree = this.adaptor.create(DOCUMENT_NODE473);
+ this.adaptor.addChild(root_0, DOCUMENT_NODE473_tree);
+ }
+ LPAREN474=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_DocumentTest8996); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN474_tree = this.adaptor.create(LPAREN474);
+ this.adaptor.addChild(root_0, LPAREN474_tree);
+ }
+ // XQueryParser.g:1058:34: ( p_ElementTest | p_SchemaElementTest )?
+ var alt158=3;
+ var LA158_0 = this.input.LA(1);
+
+ if ( (LA158_0==ELEMENT) ) {
+ alt158=1;
+ }
+ else if ( (LA158_0==SCHEMA_ELEMENT) ) {
+ alt158=2;
+ }
+ switch (alt158) {
+ case 1 :
+ // XQueryParser.g:1058:35: p_ElementTest
+ this.pushFollow(XQueryParser.FOLLOW_p_ElementTest_in_p_DocumentTest8999);
+ p_ElementTest475=this.p_ElementTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElementTest475.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1058:51: p_SchemaElementTest
+ this.pushFollow(XQueryParser.FOLLOW_p_SchemaElementTest_in_p_DocumentTest9003);
+ p_SchemaElementTest476=this.p_SchemaElementTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SchemaElementTest476.getTree());
+
+
+ break;
+
+ }
+
+ RPAREN477=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_DocumentTest9007); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN477_tree = this.adaptor.create(RPAREN477);
+ this.adaptor.addChild(root_0, RPAREN477_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TextTest_return: (function() {
+ XQueryParser.p_TextTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TextTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1061:1: p_TextTest : TEXT LPAREN RPAREN ;
+ // $ANTLR start "p_TextTest"
+ p_TextTest: function() {
+ var retval = new XQueryParser.p_TextTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var TEXT478 = null;
+ var LPAREN479 = null;
+ var RPAREN480 = null;
+
+ var TEXT478_tree=null;
+ var LPAREN479_tree=null;
+ var RPAREN480_tree=null;
+
+ try {
+ // XQueryParser.g:1062:9: ( TEXT LPAREN RPAREN )
+ // XQueryParser.g:1062:13: TEXT LPAREN RPAREN
+ root_0 = this.adaptor.nil();
+
+ TEXT478=this.match(this.input,TEXT,XQueryParser.FOLLOW_TEXT_in_p_TextTest9027); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ TEXT478_tree = this.adaptor.create(TEXT478);
+ this.adaptor.addChild(root_0, TEXT478_tree);
+ }
+ LPAREN479=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_TextTest9029); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN479_tree = this.adaptor.create(LPAREN479);
+ this.adaptor.addChild(root_0, LPAREN479_tree);
+ }
+ RPAREN480=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_TextTest9031); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN480_tree = this.adaptor.create(RPAREN480);
+ this.adaptor.addChild(root_0, RPAREN480_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CommentTest_return: (function() {
+ XQueryParser.p_CommentTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CommentTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1066:1: p_CommentTest : COMMENT LPAREN RPAREN ;
+ // $ANTLR start "p_CommentTest"
+ p_CommentTest: function() {
+ var retval = new XQueryParser.p_CommentTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMENT481 = null;
+ var LPAREN482 = null;
+ var RPAREN483 = null;
+
+ var COMMENT481_tree=null;
+ var LPAREN482_tree=null;
+ var RPAREN483_tree=null;
+
+ try {
+ // XQueryParser.g:1067:9: ( COMMENT LPAREN RPAREN )
+ // XQueryParser.g:1067:13: COMMENT LPAREN RPAREN
+ root_0 = this.adaptor.nil();
+
+ COMMENT481=this.match(this.input,COMMENT,XQueryParser.FOLLOW_COMMENT_in_p_CommentTest9059); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMENT481_tree = this.adaptor.create(COMMENT481);
+ this.adaptor.addChild(root_0, COMMENT481_tree);
+ }
+ LPAREN482=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_CommentTest9061); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN482_tree = this.adaptor.create(LPAREN482);
+ this.adaptor.addChild(root_0, LPAREN482_tree);
+ }
+ RPAREN483=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_CommentTest9063); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN483_tree = this.adaptor.create(RPAREN483);
+ this.adaptor.addChild(root_0, RPAREN483_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NamespaceNodeTest_return: (function() {
+ XQueryParser.p_NamespaceNodeTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NamespaceNodeTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1071:1: p_NamespaceNodeTest : NAMESPACE_NODE LPAREN RPAREN ;
+ // $ANTLR start "p_NamespaceNodeTest"
+ p_NamespaceNodeTest: function() {
+ var retval = new XQueryParser.p_NamespaceNodeTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var NAMESPACE_NODE484 = null;
+ var LPAREN485 = null;
+ var RPAREN486 = null;
+
+ var NAMESPACE_NODE484_tree=null;
+ var LPAREN485_tree=null;
+ var RPAREN486_tree=null;
+
+ try {
+ // XQueryParser.g:1072:9: ( NAMESPACE_NODE LPAREN RPAREN )
+ // XQueryParser.g:1072:11: NAMESPACE_NODE LPAREN RPAREN
+ root_0 = this.adaptor.nil();
+
+ NAMESPACE_NODE484=this.match(this.input,NAMESPACE_NODE,XQueryParser.FOLLOW_NAMESPACE_NODE_in_p_NamespaceNodeTest9089); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ NAMESPACE_NODE484_tree = this.adaptor.create(NAMESPACE_NODE484);
+ this.adaptor.addChild(root_0, NAMESPACE_NODE484_tree);
+ }
+ LPAREN485=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_NamespaceNodeTest9091); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN485_tree = this.adaptor.create(LPAREN485);
+ this.adaptor.addChild(root_0, LPAREN485_tree);
+ }
+ RPAREN486=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_NamespaceNodeTest9093); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN486_tree = this.adaptor.create(RPAREN486);
+ this.adaptor.addChild(root_0, RPAREN486_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PITest_return: (function() {
+ XQueryParser.p_PITest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PITest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1076:1: p_PITest : PROCESSING_INSTRUCTION LPAREN ( p_NCName | p_StringLiteral )? RPAREN ;
+ // $ANTLR start "p_PITest"
+ p_PITest: function() {
+ var retval = new XQueryParser.p_PITest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var PROCESSING_INSTRUCTION487 = null;
+ var LPAREN488 = null;
+ var RPAREN491 = null;
+ var p_NCName489 = null;
+ var p_StringLiteral490 = null;
+
+ var PROCESSING_INSTRUCTION487_tree=null;
+ var LPAREN488_tree=null;
+ var RPAREN491_tree=null;
+
+ try {
+ // XQueryParser.g:1077:9: ( PROCESSING_INSTRUCTION LPAREN ( p_NCName | p_StringLiteral )? RPAREN )
+ // XQueryParser.g:1077:13: PROCESSING_INSTRUCTION LPAREN ( p_NCName | p_StringLiteral )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ PROCESSING_INSTRUCTION487=this.match(this.input,PROCESSING_INSTRUCTION,XQueryParser.FOLLOW_PROCESSING_INSTRUCTION_in_p_PITest9121); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ PROCESSING_INSTRUCTION487_tree = this.adaptor.create(PROCESSING_INSTRUCTION487);
+ this.adaptor.addChild(root_0, PROCESSING_INSTRUCTION487_tree);
+ }
+ LPAREN488=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_PITest9123); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN488_tree = this.adaptor.create(LPAREN488);
+ this.adaptor.addChild(root_0, LPAREN488_tree);
+ }
+ // XQueryParser.g:1077:43: ( p_NCName | p_StringLiteral )?
+ var alt159=3;
+ var LA159_0 = this.input.LA(1);
+
+ if ( ((LA159_0>=ANCESTOR && LA159_0<=EXIT)||(LA159_0>=SEQUENTIAL && LA159_0<=MAINTAINED)||(LA159_0>=MUTABLE && LA159_0<=QUOT_ER)||LA159_0==L_NCName||LA159_0==EXPLICITLY) ) {
+ alt159=1;
+ }
+ else if ( ((LA159_0>=APOS && LA159_0<=QUOT)) ) {
+ alt159=2;
+ }
+ switch (alt159) {
+ case 1 :
+ // XQueryParser.g:1077:44: p_NCName
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_PITest9126);
+ p_NCName489=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName489.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1077:55: p_StringLiteral
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_PITest9130);
+ p_StringLiteral490=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral490.getTree());
+
+
+ break;
+
+ }
+
+ RPAREN491=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_PITest9134); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN491_tree = this.adaptor.create(RPAREN491);
+ this.adaptor.addChild(root_0, RPAREN491_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AttributeTest_return: (function() {
+ XQueryParser.p_AttributeTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AttributeTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1081:1: p_AttributeTest : ATTRIBUTE LPAREN ( p_AttribNameOrWildcard ( COMMA p_TypeName )? )? RPAREN ;
+ // $ANTLR start "p_AttributeTest"
+ p_AttributeTest: function() {
+ var retval = new XQueryParser.p_AttributeTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ATTRIBUTE492 = null;
+ var LPAREN493 = null;
+ var COMMA495 = null;
+ var RPAREN497 = null;
+ var p_AttribNameOrWildcard494 = null;
+ var p_TypeName496 = null;
+
+ var ATTRIBUTE492_tree=null;
+ var LPAREN493_tree=null;
+ var COMMA495_tree=null;
+ var RPAREN497_tree=null;
+
+ try {
+ // XQueryParser.g:1082:9: ( ATTRIBUTE LPAREN ( p_AttribNameOrWildcard ( COMMA p_TypeName )? )? RPAREN )
+ // XQueryParser.g:1082:13: ATTRIBUTE LPAREN ( p_AttribNameOrWildcard ( COMMA p_TypeName )? )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ ATTRIBUTE492=this.match(this.input,ATTRIBUTE,XQueryParser.FOLLOW_ATTRIBUTE_in_p_AttributeTest9162); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ATTRIBUTE492_tree = this.adaptor.create(ATTRIBUTE492);
+ this.adaptor.addChild(root_0, ATTRIBUTE492_tree);
+ }
+ LPAREN493=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_AttributeTest9164); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN493_tree = this.adaptor.create(LPAREN493);
+ this.adaptor.addChild(root_0, LPAREN493_tree);
+ }
+ // XQueryParser.g:1082:30: ( p_AttribNameOrWildcard ( COMMA p_TypeName )? )?
+ var alt161=2;
+ var LA161_0 = this.input.LA(1);
+
+ if ( ((LA161_0>=ANCESTOR && LA161_0<=EXIT)||(LA161_0>=SEQUENTIAL && LA161_0<=MAINTAINED)||(LA161_0>=MUTABLE && LA161_0<=QUOT_ER)||LA161_0==STAR||LA161_0==L_NCName||LA161_0==EXPLICITLY) ) {
+ alt161=1;
+ }
+ switch (alt161) {
+ case 1 :
+ // XQueryParser.g:1082:31: p_AttribNameOrWildcard ( COMMA p_TypeName )?
+ this.pushFollow(XQueryParser.FOLLOW_p_AttribNameOrWildcard_in_p_AttributeTest9167);
+ p_AttribNameOrWildcard494=this.p_AttribNameOrWildcard();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AttribNameOrWildcard494.getTree());
+ // XQueryParser.g:1082:54: ( COMMA p_TypeName )?
+ var alt160=2;
+ var LA160_0 = this.input.LA(1);
+
+ if ( (LA160_0==COMMA) ) {
+ alt160=1;
+ }
+ switch (alt160) {
+ case 1 :
+ // XQueryParser.g:1082:55: COMMA p_TypeName
+ COMMA495=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_AttributeTest9170); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA495_tree = this.adaptor.create(COMMA495);
+ this.adaptor.addChild(root_0, COMMA495_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeName_in_p_AttributeTest9172);
+ p_TypeName496=this.p_TypeName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeName496.getTree());
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+ RPAREN497=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_AttributeTest9178); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN497_tree = this.adaptor.create(RPAREN497);
+ this.adaptor.addChild(root_0, RPAREN497_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AttribNameOrWildcard_return: (function() {
+ XQueryParser.p_AttribNameOrWildcard_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AttribNameOrWildcard_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1086:1: p_AttribNameOrWildcard : ( p_QName | STAR );
+ // $ANTLR start "p_AttribNameOrWildcard"
+ p_AttribNameOrWildcard: function() {
+ var retval = new XQueryParser.p_AttribNameOrWildcard_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var STAR499 = null;
+ var p_QName498 = null;
+
+ var STAR499_tree=null;
+
+ try {
+ // XQueryParser.g:1087:9: ( p_QName | STAR )
+ var alt162=2;
+ var LA162_0 = this.input.LA(1);
+
+ if ( ((LA162_0>=ANCESTOR && LA162_0<=EXIT)||(LA162_0>=SEQUENTIAL && LA162_0<=MAINTAINED)||(LA162_0>=MUTABLE && LA162_0<=QUOT_ER)||LA162_0==L_NCName||LA162_0==EXPLICITLY) ) {
+ alt162=1;
+ }
+ else if ( (LA162_0==STAR) ) {
+ alt162=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 162, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt162) {
+ case 1 :
+ // XQueryParser.g:1087:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_AttribNameOrWildcard9208);
+ p_QName498=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName498.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1087:23: STAR
+ root_0 = this.adaptor.nil();
+
+ STAR499=this.match(this.input,STAR,XQueryParser.FOLLOW_STAR_in_p_AttribNameOrWildcard9212); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ STAR499_tree = this.adaptor.create(STAR499);
+ this.adaptor.addChild(root_0, STAR499_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SchemaAttributeTest_return: (function() {
+ XQueryParser.p_SchemaAttributeTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SchemaAttributeTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1091:1: p_SchemaAttributeTest : SCHEMA_ATTRIBUTE LPAREN p_AttributeDeclaration RPAREN ;
+ // $ANTLR start "p_SchemaAttributeTest"
+ p_SchemaAttributeTest: function() {
+ var retval = new XQueryParser.p_SchemaAttributeTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SCHEMA_ATTRIBUTE500 = null;
+ var LPAREN501 = null;
+ var RPAREN503 = null;
+ var p_AttributeDeclaration502 = null;
+
+ var SCHEMA_ATTRIBUTE500_tree=null;
+ var LPAREN501_tree=null;
+ var RPAREN503_tree=null;
+
+ try {
+ // XQueryParser.g:1092:9: ( SCHEMA_ATTRIBUTE LPAREN p_AttributeDeclaration RPAREN )
+ // XQueryParser.g:1092:13: SCHEMA_ATTRIBUTE LPAREN p_AttributeDeclaration RPAREN
+ root_0 = this.adaptor.nil();
+
+ SCHEMA_ATTRIBUTE500=this.match(this.input,SCHEMA_ATTRIBUTE,XQueryParser.FOLLOW_SCHEMA_ATTRIBUTE_in_p_SchemaAttributeTest9240); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SCHEMA_ATTRIBUTE500_tree = this.adaptor.create(SCHEMA_ATTRIBUTE500);
+ this.adaptor.addChild(root_0, SCHEMA_ATTRIBUTE500_tree);
+ }
+ LPAREN501=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_SchemaAttributeTest9242); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN501_tree = this.adaptor.create(LPAREN501);
+ this.adaptor.addChild(root_0, LPAREN501_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AttributeDeclaration_in_p_SchemaAttributeTest9244);
+ p_AttributeDeclaration502=this.p_AttributeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AttributeDeclaration502.getTree());
+ RPAREN503=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_SchemaAttributeTest9246); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN503_tree = this.adaptor.create(RPAREN503);
+ this.adaptor.addChild(root_0, RPAREN503_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AttributeDeclaration_return: (function() {
+ XQueryParser.p_AttributeDeclaration_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AttributeDeclaration_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1096:1: p_AttributeDeclaration : p_AttributeName ;
+ // $ANTLR start "p_AttributeDeclaration"
+ p_AttributeDeclaration: function() {
+ var retval = new XQueryParser.p_AttributeDeclaration_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_AttributeName504 = null;
+
+
+ try {
+ // XQueryParser.g:1097:9: ( p_AttributeName )
+ // XQueryParser.g:1097:11: p_AttributeName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AttributeName_in_p_AttributeDeclaration9272);
+ p_AttributeName504=this.p_AttributeName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AttributeName504.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ElementTest_return: (function() {
+ XQueryParser.p_ElementTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ElementTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1101:1: p_ElementTest : ELEMENT LPAREN ( p_ElementNameOrWildcard ( COMMA p_TypeName ( QUESTION )? )? )? RPAREN ;
+ // $ANTLR start "p_ElementTest"
+ p_ElementTest: function() {
+ var retval = new XQueryParser.p_ElementTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ELEMENT505 = null;
+ var LPAREN506 = null;
+ var COMMA508 = null;
+ var QUESTION510 = null;
+ var RPAREN511 = null;
+ var p_ElementNameOrWildcard507 = null;
+ var p_TypeName509 = null;
+
+ var ELEMENT505_tree=null;
+ var LPAREN506_tree=null;
+ var COMMA508_tree=null;
+ var QUESTION510_tree=null;
+ var RPAREN511_tree=null;
+
+ try {
+ // XQueryParser.g:1102:9: ( ELEMENT LPAREN ( p_ElementNameOrWildcard ( COMMA p_TypeName ( QUESTION )? )? )? RPAREN )
+ // XQueryParser.g:1102:13: ELEMENT LPAREN ( p_ElementNameOrWildcard ( COMMA p_TypeName ( QUESTION )? )? )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ ELEMENT505=this.match(this.input,ELEMENT,XQueryParser.FOLLOW_ELEMENT_in_p_ElementTest9300); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ELEMENT505_tree = this.adaptor.create(ELEMENT505);
+ this.adaptor.addChild(root_0, ELEMENT505_tree);
+ }
+ LPAREN506=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_ElementTest9302); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN506_tree = this.adaptor.create(LPAREN506);
+ this.adaptor.addChild(root_0, LPAREN506_tree);
+ }
+ // XQueryParser.g:1102:28: ( p_ElementNameOrWildcard ( COMMA p_TypeName ( QUESTION )? )? )?
+ var alt165=2;
+ var LA165_0 = this.input.LA(1);
+
+ if ( ((LA165_0>=ANCESTOR && LA165_0<=EXIT)||(LA165_0>=SEQUENTIAL && LA165_0<=MAINTAINED)||(LA165_0>=MUTABLE && LA165_0<=QUOT_ER)||LA165_0==STAR||LA165_0==L_NCName||LA165_0==EXPLICITLY) ) {
+ alt165=1;
+ }
+ switch (alt165) {
+ case 1 :
+ // XQueryParser.g:1102:29: p_ElementNameOrWildcard ( COMMA p_TypeName ( QUESTION )? )?
+ this.pushFollow(XQueryParser.FOLLOW_p_ElementNameOrWildcard_in_p_ElementTest9305);
+ p_ElementNameOrWildcard507=this.p_ElementNameOrWildcard();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElementNameOrWildcard507.getTree());
+ // XQueryParser.g:1102:53: ( COMMA p_TypeName ( QUESTION )? )?
+ var alt164=2;
+ var LA164_0 = this.input.LA(1);
+
+ if ( (LA164_0==COMMA) ) {
+ alt164=1;
+ }
+ switch (alt164) {
+ case 1 :
+ // XQueryParser.g:1102:54: COMMA p_TypeName ( QUESTION )?
+ COMMA508=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_ElementTest9308); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA508_tree = this.adaptor.create(COMMA508);
+ this.adaptor.addChild(root_0, COMMA508_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeName_in_p_ElementTest9310);
+ p_TypeName509=this.p_TypeName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeName509.getTree());
+ // XQueryParser.g:1102:71: ( QUESTION )?
+ var alt163=2;
+ var LA163_0 = this.input.LA(1);
+
+ if ( (LA163_0==QUESTION) ) {
+ alt163=1;
+ }
+ switch (alt163) {
+ case 1 :
+ // XQueryParser.g:1102:71: QUESTION
+ QUESTION510=this.match(this.input,QUESTION,XQueryParser.FOLLOW_QUESTION_in_p_ElementTest9312); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ QUESTION510_tree = this.adaptor.create(QUESTION510);
+ this.adaptor.addChild(root_0, QUESTION510_tree);
+ }
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+ RPAREN511=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_ElementTest9319); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN511_tree = this.adaptor.create(RPAREN511);
+ this.adaptor.addChild(root_0, RPAREN511_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ElementNameOrWildcard_return: (function() {
+ XQueryParser.p_ElementNameOrWildcard_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ElementNameOrWildcard_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1106:1: p_ElementNameOrWildcard : ( p_QName | STAR );
+ // $ANTLR start "p_ElementNameOrWildcard"
+ p_ElementNameOrWildcard: function() {
+ var retval = new XQueryParser.p_ElementNameOrWildcard_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var STAR513 = null;
+ var p_QName512 = null;
+
+ var STAR513_tree=null;
+
+ try {
+ // XQueryParser.g:1107:9: ( p_QName | STAR )
+ var alt166=2;
+ var LA166_0 = this.input.LA(1);
+
+ if ( ((LA166_0>=ANCESTOR && LA166_0<=EXIT)||(LA166_0>=SEQUENTIAL && LA166_0<=MAINTAINED)||(LA166_0>=MUTABLE && LA166_0<=QUOT_ER)||LA166_0==L_NCName||LA166_0==EXPLICITLY) ) {
+ alt166=1;
+ }
+ else if ( (LA166_0==STAR) ) {
+ alt166=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 166, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt166) {
+ case 1 :
+ // XQueryParser.g:1107:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ElementNameOrWildcard9347);
+ p_QName512=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName512.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1107:23: STAR
+ root_0 = this.adaptor.nil();
+
+ STAR513=this.match(this.input,STAR,XQueryParser.FOLLOW_STAR_in_p_ElementNameOrWildcard9351); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ STAR513_tree = this.adaptor.create(STAR513);
+ this.adaptor.addChild(root_0, STAR513_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SchemaElementTest_return: (function() {
+ XQueryParser.p_SchemaElementTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SchemaElementTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1110:1: p_SchemaElementTest : SCHEMA_ELEMENT LPAREN p_ElementDeclaration RPAREN ;
+ // $ANTLR start "p_SchemaElementTest"
+ p_SchemaElementTest: function() {
+ var retval = new XQueryParser.p_SchemaElementTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SCHEMA_ELEMENT514 = null;
+ var LPAREN515 = null;
+ var RPAREN517 = null;
+ var p_ElementDeclaration516 = null;
+
+ var SCHEMA_ELEMENT514_tree=null;
+ var LPAREN515_tree=null;
+ var RPAREN517_tree=null;
+
+ try {
+ // XQueryParser.g:1111:9: ( SCHEMA_ELEMENT LPAREN p_ElementDeclaration RPAREN )
+ // XQueryParser.g:1111:13: SCHEMA_ELEMENT LPAREN p_ElementDeclaration RPAREN
+ root_0 = this.adaptor.nil();
+
+ SCHEMA_ELEMENT514=this.match(this.input,SCHEMA_ELEMENT,XQueryParser.FOLLOW_SCHEMA_ELEMENT_in_p_SchemaElementTest9371); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SCHEMA_ELEMENT514_tree = this.adaptor.create(SCHEMA_ELEMENT514);
+ this.adaptor.addChild(root_0, SCHEMA_ELEMENT514_tree);
+ }
+ LPAREN515=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_SchemaElementTest9373); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN515_tree = this.adaptor.create(LPAREN515);
+ this.adaptor.addChild(root_0, LPAREN515_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ElementDeclaration_in_p_SchemaElementTest9375);
+ p_ElementDeclaration516=this.p_ElementDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElementDeclaration516.getTree());
+ RPAREN517=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_SchemaElementTest9377); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN517_tree = this.adaptor.create(RPAREN517);
+ this.adaptor.addChild(root_0, RPAREN517_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ElementDeclaration_return: (function() {
+ XQueryParser.p_ElementDeclaration_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ElementDeclaration_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1115:1: p_ElementDeclaration : p_ElementName ;
+ // $ANTLR start "p_ElementDeclaration"
+ p_ElementDeclaration: function() {
+ var retval = new XQueryParser.p_ElementDeclaration_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ElementName518 = null;
+
+
+ try {
+ // XQueryParser.g:1116:9: ( p_ElementName )
+ // XQueryParser.g:1116:11: p_ElementName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ElementName_in_p_ElementDeclaration9403);
+ p_ElementName518=this.p_ElementName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElementName518.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AttributeName_return: (function() {
+ XQueryParser.p_AttributeName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AttributeName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1120:1: p_AttributeName : p_QName ;
+ // $ANTLR start "p_AttributeName"
+ p_AttributeName: function() {
+ var retval = new XQueryParser.p_AttributeName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName519 = null;
+
+
+ try {
+ // XQueryParser.g:1121:9: ( p_QName )
+ // XQueryParser.g:1121:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_AttributeName9431);
+ p_QName519=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName519.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ElementName_return: (function() {
+ XQueryParser.p_ElementName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ElementName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1125:1: p_ElementName : p_QName ;
+ // $ANTLR start "p_ElementName"
+ p_ElementName: function() {
+ var retval = new XQueryParser.p_ElementName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName520 = null;
+
+
+ try {
+ // XQueryParser.g:1126:9: ( p_QName )
+ // XQueryParser.g:1126:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ElementName9459);
+ p_QName520=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName520.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TypeName_return: (function() {
+ XQueryParser.p_TypeName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TypeName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1130:1: p_TypeName : p_QName ;
+ // $ANTLR start "p_TypeName"
+ p_TypeName: function() {
+ var retval = new XQueryParser.p_TypeName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName521 = null;
+
+
+ try {
+ // XQueryParser.g:1131:9: ( p_QName )
+ // XQueryParser.g:1131:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_TypeName9487);
+ p_QName521=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName521.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TryCatchExpr_return: (function() {
+ XQueryParser.p_TryCatchExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TryCatchExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1141:1: p_TryCatchExpr : p_TryClause ( p_CatchClause )+ ;
+ // $ANTLR start "p_TryCatchExpr"
+ p_TryCatchExpr: function() {
+ var retval = new XQueryParser.p_TryCatchExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_TryClause522 = null;
+ var p_CatchClause523 = null;
+
+
+ try {
+ // XQueryParser.g:1142:9: ( p_TryClause ( p_CatchClause )+ )
+ // XQueryParser.g:1142:11: p_TryClause ( p_CatchClause )+
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TryClause_in_p_TryCatchExpr9519);
+ p_TryClause522=this.p_TryClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TryClause522.getTree());
+ // XQueryParser.g:1142:23: ( p_CatchClause )+
+ var cnt167=0;
+ loop167:
+ do {
+ var alt167=2;
+ var LA167_0 = this.input.LA(1);
+
+ if ( (LA167_0==CATCH) ) {
+ alt167=1;
+ }
+
+
+ switch (alt167) {
+ case 1 :
+ // XQueryParser.g:1142:23: p_CatchClause
+ this.pushFollow(XQueryParser.FOLLOW_p_CatchClause_in_p_TryCatchExpr9521);
+ p_CatchClause523=this.p_CatchClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CatchClause523.getTree());
+
+
+ break;
+
+ default :
+ if ( cnt167 >= 1 ) {
+ break loop167;
+ }
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var eee = new org.antlr.runtime.EarlyExitException(167, this.input);
+ throw eee;
+ }
+ cnt167++;
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TryClause_return: (function() {
+ XQueryParser.p_TryClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TryClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1146:1: p_TryClause : kc= TRY LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_TryClause"
+ p_TryClause: function() {
+ var retval = new XQueryParser.p_TryClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var LBRACKET524 = null;
+ var RBRACKET526 = null;
+ var pm_Expr525 = null;
+
+ var kc_tree=null;
+ var LBRACKET524_tree=null;
+ var RBRACKET526_tree=null;
+
+ try {
+ // XQueryParser.g:1147:9: (kc= TRY LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:1147:11: kc= TRY LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ kc=this.match(this.input,TRY,XQueryParser.FOLLOW_TRY_in_p_TryClause9550); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ LBRACKET524=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_TryClause9552); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET524_tree = this.adaptor.create(LBRACKET524);
+ this.adaptor.addChild(root_0, LBRACKET524_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_TryClause9554);
+ pm_Expr525=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr525.getTree());
+ RBRACKET526=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_TryClause9556); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET526_tree = this.adaptor.create(RBRACKET526);
+ this.adaptor.addChild(root_0, RBRACKET526_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CatchClause_return: (function() {
+ XQueryParser.p_CatchClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CatchClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1154:1: p_CatchClause : kc= CATCH p_CatchErrorList ( p_CatchVars )? LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_CatchClause"
+ p_CatchClause: function() {
+ var retval = new XQueryParser.p_CatchClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var LBRACKET529 = null;
+ var RBRACKET531 = null;
+ var p_CatchErrorList527 = null;
+ var p_CatchVars528 = null;
+ var pm_Expr530 = null;
+
+ var kc_tree=null;
+ var LBRACKET529_tree=null;
+ var RBRACKET531_tree=null;
+
+ try {
+ // XQueryParser.g:1155:9: (kc= CATCH p_CatchErrorList ( p_CatchVars )? LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:1155:11: kc= CATCH p_CatchErrorList ( p_CatchVars )? LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ kc=this.match(this.input,CATCH,XQueryParser.FOLLOW_CATCH_in_p_CatchClause9587); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_CatchErrorList_in_p_CatchClause9589);
+ p_CatchErrorList527=this.p_CatchErrorList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CatchErrorList527.getTree());
+ // XQueryParser.g:1155:37: ( p_CatchVars )?
+ var alt168=2;
+ var LA168_0 = this.input.LA(1);
+
+ if ( (LA168_0==LPAREN) ) {
+ alt168=1;
+ }
+ switch (alt168) {
+ case 1 :
+ // XQueryParser.g:1155:37: p_CatchVars
+ this.pushFollow(XQueryParser.FOLLOW_p_CatchVars_in_p_CatchClause9591);
+ p_CatchVars528=this.p_CatchVars();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CatchVars528.getTree());
+
+
+ break;
+
+ }
+
+ LBRACKET529=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CatchClause9594); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET529_tree = this.adaptor.create(LBRACKET529);
+ this.adaptor.addChild(root_0, LBRACKET529_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CatchClause9596);
+ pm_Expr530=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr530.getTree());
+ RBRACKET531=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CatchClause9598); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET531_tree = this.adaptor.create(RBRACKET531);
+ this.adaptor.addChild(root_0, RBRACKET531_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CatchErrorList_return: (function() {
+ XQueryParser.p_CatchErrorList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CatchErrorList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1159:1: p_CatchErrorList : ( p_NameTest ( VBAR p_NameTest )* | {...}? => () );
+ // $ANTLR start "p_CatchErrorList"
+ p_CatchErrorList: function() {
+ var retval = new XQueryParser.p_CatchErrorList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var VBAR533 = null;
+ var p_NameTest532 = null;
+ var p_NameTest534 = null;
+
+ var VBAR533_tree=null;
+
+ try {
+ // XQueryParser.g:1160:9: ( p_NameTest ( VBAR p_NameTest )* | {...}? => () )
+ var alt170=2;
+ var LA170_0 = this.input.LA(1);
+
+ if ( ((LA170_0>=ANCESTOR && LA170_0<=EXIT)||(LA170_0>=SEQUENTIAL && LA170_0<=MAINTAINED)||(LA170_0>=MUTABLE && LA170_0<=QUOT_ER)||LA170_0==STAR||LA170_0==L_NCName||LA170_0==EXPLICITLY) ) {
+ alt170=1;
+ }
+ else if ( (LA170_0==LPAREN||LA170_0==LBRACKET) && ((false))) {
+ alt170=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 170, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt170) {
+ case 1 :
+ // XQueryParser.g:1160:11: p_NameTest ( VBAR p_NameTest )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NameTest_in_p_CatchErrorList9624);
+ p_NameTest532=this.p_NameTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NameTest532.getTree());
+ // XQueryParser.g:1160:22: ( VBAR p_NameTest )*
+ loop169:
+ do {
+ var alt169=2;
+ var LA169_0 = this.input.LA(1);
+
+ if ( (LA169_0==VBAR) ) {
+ alt169=1;
+ }
+
+
+ switch (alt169) {
+ case 1 :
+ // XQueryParser.g:1160:23: VBAR p_NameTest
+ VBAR533=this.match(this.input,VBAR,XQueryParser.FOLLOW_VBAR_in_p_CatchErrorList9627); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ VBAR533_tree = this.adaptor.create(VBAR533);
+ this.adaptor.addChild(root_0, VBAR533_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_NameTest_in_p_CatchErrorList9629);
+ p_NameTest534=this.p_NameTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NameTest534.getTree());
+
+
+ break;
+
+ default :
+ break loop169;
+ }
+ } while (true);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1161:11: {...}? => ()
+ root_0 = this.adaptor.nil();
+
+ if ( !((false)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_CatchErrorList", "false");
+ }
+ // XQueryParser.g:1161:22: ()
+ // XQueryParser.g:1161:36:
+
+
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CatchVars_return: (function() {
+ XQueryParser.p_CatchVars_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CatchVars_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1165:2: p_CatchVars : LPAREN DOLLAR p_VarName ( COMMA DOLLAR p_VarName ( COMMA DOLLAR p_VarName )? )? RPAREN ;
+ // $ANTLR start "p_CatchVars"
+ p_CatchVars: function() {
+ var retval = new XQueryParser.p_CatchVars_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN535 = null;
+ var DOLLAR536 = null;
+ var COMMA538 = null;
+ var DOLLAR539 = null;
+ var COMMA541 = null;
+ var DOLLAR542 = null;
+ var RPAREN544 = null;
+ var p_VarName537 = null;
+ var p_VarName540 = null;
+ var p_VarName543 = null;
+
+ var LPAREN535_tree=null;
+ var DOLLAR536_tree=null;
+ var COMMA538_tree=null;
+ var DOLLAR539_tree=null;
+ var COMMA541_tree=null;
+ var DOLLAR542_tree=null;
+ var RPAREN544_tree=null;
+
+ try {
+ // XQueryParser.g:1166:9: ( LPAREN DOLLAR p_VarName ( COMMA DOLLAR p_VarName ( COMMA DOLLAR p_VarName )? )? RPAREN )
+ // XQueryParser.g:1166:11: LPAREN DOLLAR p_VarName ( COMMA DOLLAR p_VarName ( COMMA DOLLAR p_VarName )? )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ LPAREN535=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_CatchVars9675); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN535_tree = this.adaptor.create(LPAREN535);
+ this.adaptor.addChild(root_0, LPAREN535_tree);
+ }
+ DOLLAR536=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_CatchVars9677); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR536_tree = this.adaptor.create(DOLLAR536);
+ this.adaptor.addChild(root_0, DOLLAR536_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_CatchVars9679);
+ p_VarName537=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName537.getTree());
+ // XQueryParser.g:1166:35: ( COMMA DOLLAR p_VarName ( COMMA DOLLAR p_VarName )? )?
+ var alt172=2;
+ var LA172_0 = this.input.LA(1);
+
+ if ( (LA172_0==COMMA) ) {
+ alt172=1;
+ }
+ switch (alt172) {
+ case 1 :
+ // XQueryParser.g:1166:36: COMMA DOLLAR p_VarName ( COMMA DOLLAR p_VarName )?
+ COMMA538=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_CatchVars9682); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA538_tree = this.adaptor.create(COMMA538);
+ this.adaptor.addChild(root_0, COMMA538_tree);
+ }
+ DOLLAR539=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_CatchVars9684); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR539_tree = this.adaptor.create(DOLLAR539);
+ this.adaptor.addChild(root_0, DOLLAR539_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_CatchVars9686);
+ p_VarName540=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName540.getTree());
+ // XQueryParser.g:1166:59: ( COMMA DOLLAR p_VarName )?
+ var alt171=2;
+ var LA171_0 = this.input.LA(1);
+
+ if ( (LA171_0==COMMA) ) {
+ alt171=1;
+ }
+ switch (alt171) {
+ case 1 :
+ // XQueryParser.g:1166:60: COMMA DOLLAR p_VarName
+ COMMA541=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_CatchVars9689); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA541_tree = this.adaptor.create(COMMA541);
+ this.adaptor.addChild(root_0, COMMA541_tree);
+ }
+ DOLLAR542=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_CatchVars9691); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR542_tree = this.adaptor.create(DOLLAR542);
+ this.adaptor.addChild(root_0, DOLLAR542_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_CatchVars9693);
+ p_VarName543=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName543.getTree());
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+ RPAREN544=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_CatchVars9699); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN544_tree = this.adaptor.create(RPAREN544);
+ this.adaptor.addChild(root_0, RPAREN544_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_StringLiteral_return: (function() {
+ XQueryParser.p_StringLiteral_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_StringLiteral_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1192:1: p_StringLiteral : ( QUOT p_QuotStringLiteralContent QUOT -> ^( StringLiteral ( p_QuotStringLiteralContent )* ) | APOS p_AposStringLiteralContent APOS -> ^( StringLiteral ( p_AposStringLiteralContent )* ) );
+ // $ANTLR start "p_StringLiteral"
+ p_StringLiteral: function() {
+ var retval = new XQueryParser.p_StringLiteral_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var QUOT545 = null;
+ var QUOT547 = null;
+ var APOS548 = null;
+ var APOS550 = null;
+ var p_QuotStringLiteralContent546 = null;
+ var p_AposStringLiteralContent549 = null;
+
+ var QUOT545_tree=null;
+ var QUOT547_tree=null;
+ var APOS548_tree=null;
+ var APOS550_tree=null;
+ var stream_APOS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token APOS");
+ var stream_QUOT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token QUOT");
+ var stream_p_AposStringLiteralContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_AposStringLiteralContent");
+ var stream_p_QuotStringLiteralContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QuotStringLiteralContent");
+ try {
+ // XQueryParser.g:1193:9: ( QUOT p_QuotStringLiteralContent QUOT -> ^( StringLiteral ( p_QuotStringLiteralContent )* ) | APOS p_AposStringLiteralContent APOS -> ^( StringLiteral ( p_AposStringLiteralContent )* ) )
+ var alt173=2;
+ var LA173_0 = this.input.LA(1);
+
+ if ( (LA173_0==QUOT) ) {
+ alt173=1;
+ }
+ else if ( (LA173_0==APOS) ) {
+ alt173=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 173, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt173) {
+ case 1 :
+ // XQueryParser.g:1193:11: QUOT p_QuotStringLiteralContent QUOT
+ QUOT545=this.match(this.input,QUOT,XQueryParser.FOLLOW_QUOT_in_p_StringLiteral9748); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_QUOT.add(QUOT545);
+
+ if ( this.state.backtracking===0 ) {
+ //pushStringLexer(false);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QuotStringLiteralContent_in_p_StringLiteral9752);
+ p_QuotStringLiteralContent546=this.p_QuotStringLiteralContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QuotStringLiteralContent.add(p_QuotStringLiteralContent546.getTree());
+ QUOT547=this.match(this.input,QUOT,XQueryParser.FOLLOW_QUOT_in_p_StringLiteral9754); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_QUOT.add(QUOT547);
+
+ if ( this.state.backtracking===0 ) {
+
+ }
+
+
+ // AST REWRITE
+ // elements: p_QuotStringLiteralContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1194:17: -> ^( StringLiteral ( p_QuotStringLiteralContent )* )
+ {
+ // XQueryParser.g:1194:20: ^( StringLiteral ( p_QuotStringLiteralContent )* )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(StringLiteral, "StringLiteral"), root_1);
+
+ // XQueryParser.g:1194:36: ( p_QuotStringLiteralContent )*
+ while ( stream_p_QuotStringLiteralContent.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_p_QuotStringLiteralContent.nextTree());
+
+ }
+ stream_p_QuotStringLiteralContent.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:1195:13: APOS p_AposStringLiteralContent APOS
+ APOS548=this.match(this.input,APOS,XQueryParser.FOLLOW_APOS_in_p_StringLiteral9795); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_APOS.add(APOS548);
+
+ if ( this.state.backtracking===0 ) {
+ //pushStringLexer(true);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AposStringLiteralContent_in_p_StringLiteral9799);
+ p_AposStringLiteralContent549=this.p_AposStringLiteralContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_AposStringLiteralContent.add(p_AposStringLiteralContent549.getTree());
+ APOS550=this.match(this.input,APOS,XQueryParser.FOLLOW_APOS_in_p_StringLiteral9801); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_APOS.add(APOS550);
+
+ if ( this.state.backtracking===0 ) {
+
+ }
+
+
+ // AST REWRITE
+ // elements: p_AposStringLiteralContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1196:17: -> ^( StringLiteral ( p_AposStringLiteralContent )* )
+ {
+ // XQueryParser.g:1196:20: ^( StringLiteral ( p_AposStringLiteralContent )* )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(StringLiteral, "StringLiteral"), root_1);
+
+ // XQueryParser.g:1196:36: ( p_AposStringLiteralContent )*
+ while ( stream_p_AposStringLiteralContent.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_p_AposStringLiteralContent.nextTree());
+
+ }
+ stream_p_AposStringLiteralContent.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_QuotStringLiteralContent_return: (function() {
+ XQueryParser.p_QuotStringLiteralContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_QuotStringLiteralContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1203:1: p_QuotStringLiteralContent : ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( QUOT | AMP ) )* ;
+ // $ANTLR start "p_QuotStringLiteralContent"
+ p_QuotStringLiteralContent: function() {
+ var retval = new XQueryParser.p_QuotStringLiteralContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set551 = null;
+
+ var set551_tree=null;
+
+ try {
+ // XQueryParser.g:1204:9: ( ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( QUOT | AMP ) )* )
+ // XQueryParser.g:1204:11: ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( QUOT | AMP ) )*
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1204:11: ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( QUOT | AMP ) )*
+ loop174:
+ do {
+ var alt174=2;
+ var LA174_0 = this.input.LA(1);
+
+ if ( ((LA174_0>=L_QuotAttrContentChar && LA174_0<=NOTEQUAL)||(LA174_0>=COMMA && LA174_0<=APOS)||(LA174_0>=NCNameStartChar && LA174_0<=EXPLICITLY)) ) {
+ alt174=1;
+ }
+
+
+ switch (alt174) {
+ case 1 :
+ // XQueryParser.g:
+ set551=this.input.LT(1);
+ if ( (this.input.LA(1)>=L_QuotAttrContentChar && this.input.LA(1)<=NOTEQUAL)||(this.input.LA(1)>=COMMA && this.input.LA(1)<=APOS)||(this.input.LA(1)>=NCNameStartChar && this.input.LA(1)<=EXPLICITLY) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set551));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+ break;
+
+ default :
+ break loop174;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AposStringLiteralContent_return: (function() {
+ XQueryParser.p_AposStringLiteralContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AposStringLiteralContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1212:1: p_AposStringLiteralContent : ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( APOS | AMP ) )* ;
+ // $ANTLR start "p_AposStringLiteralContent"
+ p_AposStringLiteralContent: function() {
+ var retval = new XQueryParser.p_AposStringLiteralContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set552 = null;
+
+ var set552_tree=null;
+
+ try {
+ // XQueryParser.g:1213:9: ( ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( APOS | AMP ) )* )
+ // XQueryParser.g:1213:11: ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( APOS | AMP ) )*
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1213:11: ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( APOS | AMP ) )*
+ loop175:
+ do {
+ var alt175=2;
+ var LA175_0 = this.input.LA(1);
+
+ if ( ((LA175_0>=L_QuotAttrContentChar && LA175_0<=NOTEQUAL)||(LA175_0>=COMMA && LA175_0<=CHARREF_HEX)||(LA175_0>=QUOT && LA175_0<=EXPLICITLY)) ) {
+ alt175=1;
+ }
+
+
+ switch (alt175) {
+ case 1 :
+ // XQueryParser.g:
+ set552=this.input.LT(1);
+ if ( (this.input.LA(1)>=L_QuotAttrContentChar && this.input.LA(1)<=NOTEQUAL)||(this.input.LA(1)>=COMMA && this.input.LA(1)<=CHARREF_HEX)||(this.input.LA(1)>=QUOT && this.input.LA(1)<=EXPLICITLY) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set552));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+ break;
+
+ default :
+ break loop175;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_QName_return: (function() {
+ XQueryParser.p_QName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_QName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1246:1: p_QName : p_NCName p_LocalNCName -> ^( QName p_NCName ( p_LocalNCName )? ) ;
+ // $ANTLR start "p_QName"
+ p_QName: function() {
+ var retval = new XQueryParser.p_QName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_NCName553 = null;
+ var p_LocalNCName554 = null;
+
+ var stream_p_LocalNCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_LocalNCName");
+ var stream_p_NCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_NCName");
+ try {
+ // XQueryParser.g:1247:9: ( p_NCName p_LocalNCName -> ^( QName p_NCName ( p_LocalNCName )? ) )
+ // XQueryParser.g:1247:11: p_NCName p_LocalNCName
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_QName9994);
+ p_NCName553=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_NCName.add(p_NCName553.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_LocalNCName_in_p_QName9996);
+ p_LocalNCName554=this.p_LocalNCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_LocalNCName.add(p_LocalNCName554.getTree());
+
+
+ // AST REWRITE
+ // elements: p_NCName, p_LocalNCName
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1248:17: -> ^( QName p_NCName ( p_LocalNCName )? )
+ {
+ // XQueryParser.g:1248:20: ^( QName p_NCName ( p_LocalNCName )? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(QName, "QName"), root_1);
+
+ this.adaptor.addChild(root_1, stream_p_NCName.nextTree());
+ // XQueryParser.g:1248:37: ( p_LocalNCName )?
+ if ( stream_p_LocalNCName.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_p_LocalNCName.nextTree());
+
+ }
+ stream_p_LocalNCName.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_LocalNCName_return: (function() {
+ XQueryParser.p_LocalNCName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_LocalNCName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1253:1: p_LocalNCName : ( COLON p_NCName )? ;
+ // $ANTLR start "p_LocalNCName"
+ p_LocalNCName: function() {
+ var retval = new XQueryParser.p_LocalNCName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COLON555 = null;
+ var p_NCName556 = null;
+
+ var COLON555_tree=null;
+
+ try {
+ // XQueryParser.g:1254:9: ( ( COLON p_NCName )? )
+ // XQueryParser.g:1254:11: ( COLON p_NCName )?
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1254:11: ( COLON p_NCName )?
+ var alt176=2;
+ var LA176_0 = this.input.LA(1);
+
+ if ( (LA176_0==COLON) ) {
+ alt176=1;
+ }
+ switch (alt176) {
+ case 1 :
+ // XQueryParser.g:1254:12: COLON p_NCName
+ COLON555=this.match(this.input,COLON,XQueryParser.FOLLOW_COLON_in_p_LocalNCName10051); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON555_tree = this.adaptor.create(COLON555);
+ this.adaptor.addChild(root_0, COLON555_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_LocalNCName10053);
+ p_NCName556=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName556.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FQName_return: (function() {
+ XQueryParser.p_FQName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FQName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1260:1: p_FQName : p_FNCName p_LocalFNCName ;
+ // $ANTLR start "p_FQName"
+ p_FQName: function() {
+ var retval = new XQueryParser.p_FQName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_FNCName557 = null;
+ var p_LocalFNCName558 = null;
+
+
+ try {
+ // XQueryParser.g:1261:9: ( p_FNCName p_LocalFNCName )
+ // XQueryParser.g:1261:11: p_FNCName p_LocalFNCName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_FNCName_in_p_FQName10083);
+ p_FNCName557=this.p_FNCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_FNCName557.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_LocalFNCName_in_p_FQName10085);
+ p_LocalFNCName558=this.p_LocalFNCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_LocalFNCName558.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_LocalFNCName_return: (function() {
+ XQueryParser.p_LocalFNCName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_LocalFNCName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1266:1: p_LocalFNCName : ( COLON p_NCName )? ;
+ // $ANTLR start "p_LocalFNCName"
+ p_LocalFNCName: function() {
+ var retval = new XQueryParser.p_LocalFNCName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COLON559 = null;
+ var p_NCName560 = null;
+
+ var COLON559_tree=null;
+
+ try {
+ // XQueryParser.g:1267:9: ( ( COLON p_NCName )? )
+ // XQueryParser.g:1267:11: ( COLON p_NCName )?
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1267:11: ( COLON p_NCName )?
+ var alt177=2;
+ var LA177_0 = this.input.LA(1);
+
+ if ( (LA177_0==COLON) ) {
+ alt177=1;
+ }
+ switch (alt177) {
+ case 1 :
+ // XQueryParser.g:1267:12: COLON p_NCName
+ COLON559=this.match(this.input,COLON,XQueryParser.FOLLOW_COLON_in_p_LocalFNCName10113); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON559_tree = this.adaptor.create(COLON559);
+ this.adaptor.addChild(root_0, COLON559_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_LocalFNCName10115);
+ p_NCName560=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName560.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NCName_return: (function() {
+ XQueryParser.p_NCName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NCName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1273:1: p_NCName : ( L_NCName | ANCESTOR | ANCESTOR_OR_SELF | AND | AS | ASCENDING | AT | ATTRIBUTE | BASE_URI | BOUNDARY_SPACE | BY | CASE | CAST | CASTABLE | CHILD | COLLATION | COMMENT | CONSTRUCTION | COPY_NAMESPACES | DECLARE | DEFAULT | DESCENDANT | DESCENDANT_OR_SELF | DESCENDING | DIV | DOCUMENT | DOCUMENT_NODE | ELEMENT | ELSE | EMPTY | EMPTY_SEQUENCE | ENCODING | EQ | EVERY | EXCEPT | EXTERNAL | FOLLOWING | FOLLOWING_SIBLING | FOR | FUNCTION | GE | GREATEST | GT | IDIV | IF | IMPORT | IN | INHERIT | INSTANCE | INTERSECT | IS | ITEM | LAX | LE | LEAST | LET | LT | MOD | MODULE | NAMESPACE | NE | NO_INHERIT | NO_PRESERVE | NODE | OF | OPTION | OR | ORDER | ORDERED | ORDERING | PARENT | PRECEDING | PRECEDING_SIBLING | PRESERVE | PROCESSING_INSTRUCTION | RETURN | SATISFIES | SCHEMA | SCHEMA_ATTRIBUTE | SCHEMA_ELEMENT | SELF | SOME | STABLE | STRICT | STRIP | TEXT | THEN | TO | TREAT | TYPESWITCH | UNION | UNORDERED | VALIDATE | VARIABLE | VERSION | WHERE | XQUERY | CATCH | CONTEXT | COUNT | DECIMAL_FORMAT | DECIMAL_SEPARATOR | DIGIT | END | GROUP | GROUPING_SEPARATOR | INFINITY | MINUS_SIGN | NAMESPACE_NODE | NAN | NEXT | ONLY | OUTER | PATTERN_SEPARATOR | PERCENT | PER_MILLE | PREVIOUS | SLIDING | START | TRY | TUMBLING | WHEN | WINDOW | ZERO_DIGIT | AFTER | BEFORE | COPY | DELETE | FIRST | INSERT | INTO | LAST | MODIFY | NODES | RENAME | REPLACE | REVALIDATION | SKIP | UPDATING | VALUE | WITH | BLOCK | CONSTANT | EXIT | SEQUENTIAL | SET | SIMPLE | WHILE | EVAL | USING | APPEND_ONLY | AUTOMATICALLY | CHECK | COLLECTION | CONSTRAINT | CONST | EQUALITY | EXPLICITLY | FOREACH | FOREIGN | FROM | INDEX | INTEGRITY | KEY | MAINTAINED | MUTABLE | NON | ON | QUEUE | RANGE | READ_ONLY | UNIQUE | BINARY | PRIVATE | AMP_ER | APOS_ER | QUOT_ER );
+ // $ANTLR start "p_NCName"
+ p_NCName: function() {
+ var retval = new XQueryParser.p_NCName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set561 = null;
+
+ var set561_tree=null;
+
+ try {
+ // XQueryParser.g:1274:9: ( L_NCName | ANCESTOR | ANCESTOR_OR_SELF | AND | AS | ASCENDING | AT | ATTRIBUTE | BASE_URI | BOUNDARY_SPACE | BY | CASE | CAST | CASTABLE | CHILD | COLLATION | COMMENT | CONSTRUCTION | COPY_NAMESPACES | DECLARE | DEFAULT | DESCENDANT | DESCENDANT_OR_SELF | DESCENDING | DIV | DOCUMENT | DOCUMENT_NODE | ELEMENT | ELSE | EMPTY | EMPTY_SEQUENCE | ENCODING | EQ | EVERY | EXCEPT | EXTERNAL | FOLLOWING | FOLLOWING_SIBLING | FOR | FUNCTION | GE | GREATEST | GT | IDIV | IF | IMPORT | IN | INHERIT | INSTANCE | INTERSECT | IS | ITEM | LAX | LE | LEAST | LET | LT | MOD | MODULE | NAMESPACE | NE | NO_INHERIT | NO_PRESERVE | NODE | OF | OPTION | OR | ORDER | ORDERED | ORDERING | PARENT | PRECEDING | PRECEDING_SIBLING | PRESERVE | PROCESSING_INSTRUCTION | RETURN | SATISFIES | SCHEMA | SCHEMA_ATTRIBUTE | SCHEMA_ELEMENT | SELF | SOME | STABLE | STRICT | STRIP | TEXT | THEN | TO | TREAT | TYPESWITCH | UNION | UNORDERED | VALIDATE | VARIABLE | VERSION | WHERE | XQUERY | CATCH | CONTEXT | COUNT | DECIMAL_FORMAT | DECIMAL_SEPARATOR | DIGIT | END | GROUP | GROUPING_SEPARATOR | INFINITY | MINUS_SIGN | NAMESPACE_NODE | NAN | NEXT | ONLY | OUTER | PATTERN_SEPARATOR | PERCENT | PER_MILLE | PREVIOUS | SLIDING | START | TRY | TUMBLING | WHEN | WINDOW | ZERO_DIGIT | AFTER | BEFORE | COPY | DELETE | FIRST | INSERT | INTO | LAST | MODIFY | NODES | RENAME | REPLACE | REVALIDATION | SKIP | UPDATING | VALUE | WITH | BLOCK | CONSTANT | EXIT | SEQUENTIAL | SET | SIMPLE | WHILE | EVAL | USING | APPEND_ONLY | AUTOMATICALLY | CHECK | COLLECTION | CONSTRAINT | CONST | EQUALITY | EXPLICITLY | FOREACH | FOREIGN | FROM | INDEX | INTEGRITY | KEY | MAINTAINED | MUTABLE | NON | ON | QUEUE | RANGE | READ_ONLY | UNIQUE | BINARY | PRIVATE | AMP_ER | APOS_ER | QUOT_ER )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set561=this.input.LT(1);
+ if ( (this.input.LA(1)>=ANCESTOR && this.input.LA(1)<=EXIT)||(this.input.LA(1)>=SEQUENTIAL && this.input.LA(1)<=MAINTAINED)||(this.input.LA(1)>=MUTABLE && this.input.LA(1)<=QUOT_ER)||this.input.LA(1)==L_NCName||this.input.LA(1)==EXPLICITLY ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set561));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FNCName_return: (function() {
+ XQueryParser.p_FNCName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FNCName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1292:1: p_FNCName : ( L_NCName | ANCESTOR | ANCESTOR_OR_SELF | AND | AS | ASCENDING | AT | BASE_URI | BOUNDARY_SPACE | BY | CASE | CAST | CASTABLE | CHILD | COLLATION | CONSTRUCTION | COPY_NAMESPACES | DECLARE | DEFAULT | DESCENDANT | DESCENDANT_OR_SELF | DESCENDING | DIV | DOCUMENT | ELSE | EMPTY | ENCODING | EQ | EVERY | EXCEPT | EXTERNAL | FOLLOWING | FOLLOWING_SIBLING | FOR | FUNCTION | GE | GREATEST | GT | IDIV | IMPORT | IN | INHERIT | INSTANCE | INTERSECT | IS | LAX | LE | LEAST | LET | LT | MOD | MODULE | NAMESPACE | NE | NO_INHERIT | NO_PRESERVE | OF | OPTION | OR | ORDER | ORDERED | ORDERING | PARENT | PRECEDING | PRECEDING_SIBLING | PRESERVE | RETURN | SATISFIES | SCHEMA | SELF | SOME | STABLE | STRICT | STRIP | THEN | TO | TREAT | UNION | UNORDERED | VALIDATE | VARIABLE | VERSION | WHERE | XQUERY | CATCH | CONTEXT | COUNT | DECIMAL_FORMAT | DECIMAL_SEPARATOR | DIGIT | END | GROUP | GROUPING_SEPARATOR | INFINITY | MINUS_SIGN | NAN | NEXT | ONLY | OUTER | PATTERN_SEPARATOR | PERCENT | PER_MILLE | PREVIOUS | SLIDING | START | TRY | TUMBLING | WHEN | WINDOW | ZERO_DIGIT | AFTER | BEFORE | COPY | DELETE | FIRST | INSERT | INTO | LAST | MODIFY | NODES | RENAME | REPLACE | REVALIDATION | SKIP | UPDATING | VALUE | WITH | BLOCK | CONSTANT | EXIT | SEQUENTIAL | SET | SIMPLE | EVAL | USING | APPEND_ONLY | AUTOMATICALLY | CHECK | COLLECTION | CONSTRAINT | CONST | EQUALITY | EXPLICITLY | FOREACH | FOREIGN | FROM | INDEX | INTEGRITY | KEY | MAINTAINED | MUTABLE | NON | ON | QUEUE | RANGE | READ_ONLY | UNIQUE | BINARY | PRIVATE | AMP_ER | APOS_ER | QUOT_ER );
+ // $ANTLR start "p_FNCName"
+ p_FNCName: function() {
+ var retval = new XQueryParser.p_FNCName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set562 = null;
+
+ var set562_tree=null;
+
+ try {
+ // XQueryParser.g:1293:9: ( L_NCName | ANCESTOR | ANCESTOR_OR_SELF | AND | AS | ASCENDING | AT | BASE_URI | BOUNDARY_SPACE | BY | CASE | CAST | CASTABLE | CHILD | COLLATION | CONSTRUCTION | COPY_NAMESPACES | DECLARE | DEFAULT | DESCENDANT | DESCENDANT_OR_SELF | DESCENDING | DIV | DOCUMENT | ELSE | EMPTY | ENCODING | EQ | EVERY | EXCEPT | EXTERNAL | FOLLOWING | FOLLOWING_SIBLING | FOR | FUNCTION | GE | GREATEST | GT | IDIV | IMPORT | IN | INHERIT | INSTANCE | INTERSECT | IS | LAX | LE | LEAST | LET | LT | MOD | MODULE | NAMESPACE | NE | NO_INHERIT | NO_PRESERVE | OF | OPTION | OR | ORDER | ORDERED | ORDERING | PARENT | PRECEDING | PRECEDING_SIBLING | PRESERVE | RETURN | SATISFIES | SCHEMA | SELF | SOME | STABLE | STRICT | STRIP | THEN | TO | TREAT | UNION | UNORDERED | VALIDATE | VARIABLE | VERSION | WHERE | XQUERY | CATCH | CONTEXT | COUNT | DECIMAL_FORMAT | DECIMAL_SEPARATOR | DIGIT | END | GROUP | GROUPING_SEPARATOR | INFINITY | MINUS_SIGN | NAN | NEXT | ONLY | OUTER | PATTERN_SEPARATOR | PERCENT | PER_MILLE | PREVIOUS | SLIDING | START | TRY | TUMBLING | WHEN | WINDOW | ZERO_DIGIT | AFTER | BEFORE | COPY | DELETE | FIRST | INSERT | INTO | LAST | MODIFY | NODES | RENAME | REPLACE | REVALIDATION | SKIP | UPDATING | VALUE | WITH | BLOCK | CONSTANT | EXIT | SEQUENTIAL | SET | SIMPLE | EVAL | USING | APPEND_ONLY | AUTOMATICALLY | CHECK | COLLECTION | CONSTRAINT | CONST | EQUALITY | EXPLICITLY | FOREACH | FOREIGN | FROM | INDEX | INTEGRITY | KEY | MAINTAINED | MUTABLE | NON | ON | QUEUE | RANGE | READ_ONLY | UNIQUE | BINARY | PRIVATE | AMP_ER | APOS_ER | QUOT_ER )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set562=this.input.LT(1);
+ if ( (this.input.LA(1)>=ANCESTOR && this.input.LA(1)<=AT)||(this.input.LA(1)>=BASE_URI && this.input.LA(1)<=COLLATION)||(this.input.LA(1)>=CONSTRUCTION && this.input.LA(1)<=DOCUMENT)||(this.input.LA(1)>=ELSE && this.input.LA(1)<=EMPTY)||(this.input.LA(1)>=ENCODING && this.input.LA(1)<=IDIV)||(this.input.LA(1)>=IMPORT && this.input.LA(1)<=IS)||(this.input.LA(1)>=LAX && this.input.LA(1)<=NO_PRESERVE)||(this.input.LA(1)>=OF && this.input.LA(1)<=PRESERVE)||(this.input.LA(1)>=RETURN && this.input.LA(1)<=SCHEMA)||(this.input.LA(1)>=SELF && this.input.LA(1)<=STRIP)||(this.input.LA(1)>=THEN && this.input.LA(1)<=TREAT)||(this.input.LA(1)>=UNION && this.input.LA(1)<=MINUS_SIGN)||(this.input.LA(1)>=NAN && this.input.LA(1)<=EXIT)||(this.input.LA(1)>=SEQUENTIAL && this.input.LA(1)<=SIMPLE)||(this.input.LA(1)>=EVAL && this.input.LA(1)<=MAINTAINED)||(this.input.LA(1)>=MUTABLE && this.input.LA(1)<=QUOT_ER)||this.input.LA(1)==L_NCName||this.input.LA(1)==EXPLICITLY ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set562));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_RevalidationDecl_return: (function() {
+ XQueryParser.pm_RevalidationDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_RevalidationDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1326:1: pm_RevalidationDecl : k+= DECLARE k+= REVALIDATION (k+= STRICT | k+= LAX | k+= SKIP ) ;
+ // $ANTLR start "pm_RevalidationDecl"
+ pm_RevalidationDecl: function() {
+ var retval = new XQueryParser.pm_RevalidationDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1327:9: (k+= DECLARE k+= REVALIDATION (k+= STRICT | k+= LAX | k+= SKIP ) )
+ // XQueryParser.g:1327:11: k+= DECLARE k+= REVALIDATION (k+= STRICT | k+= LAX | k+= SKIP )
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_RevalidationDecl11839); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,REVALIDATION,XQueryParser.FOLLOW_REVALIDATION_in_pm_RevalidationDecl11843); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:1327:38: (k+= STRICT | k+= LAX | k+= SKIP )
+ var alt178=3;
+ switch ( this.input.LA(1) ) {
+ case STRICT:
+ alt178=1;
+ break;
+ case LAX:
+ alt178=2;
+ break;
+ case SKIP:
+ alt178=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 178, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt178) {
+ case 1 :
+ // XQueryParser.g:1327:39: k+= STRICT
+ k=this.match(this.input,STRICT,XQueryParser.FOLLOW_STRICT_in_pm_RevalidationDecl11848); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1327:51: k+= LAX
+ k=this.match(this.input,LAX,XQueryParser.FOLLOW_LAX_in_pm_RevalidationDecl11854); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1327:60: k+= SKIP
+ k=this.match(this.input,SKIP,XQueryParser.FOLLOW_SKIP_in_pm_RevalidationDecl11860); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_InsertExprTargetChoice_return: (function() {
+ XQueryParser.p_InsertExprTargetChoice_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_InsertExprTargetChoice_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1331:1: p_InsertExprTargetChoice : ( ( (k+= AS (k+= FIRST | k+= LAST ) )? k+= INTO ) | ka= AFTER | kb= BEFORE );
+ // $ANTLR start "p_InsertExprTargetChoice"
+ p_InsertExprTargetChoice: function() {
+ var retval = new XQueryParser.p_InsertExprTargetChoice_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ka = null;
+ var kb = null;
+ var k = null;
+ var list_k=null;
+
+ var ka_tree=null;
+ var kb_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1332:9: ( ( (k+= AS (k+= FIRST | k+= LAST ) )? k+= INTO ) | ka= AFTER | kb= BEFORE )
+ var alt181=3;
+ switch ( this.input.LA(1) ) {
+ case AS:
+ case INTO:
+ alt181=1;
+ break;
+ case AFTER:
+ alt181=2;
+ break;
+ case BEFORE:
+ alt181=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 181, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt181) {
+ case 1 :
+ // XQueryParser.g:1332:11: ( (k+= AS (k+= FIRST | k+= LAST ) )? k+= INTO )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1332:11: ( (k+= AS (k+= FIRST | k+= LAST ) )? k+= INTO )
+ // XQueryParser.g:1332:12: (k+= AS (k+= FIRST | k+= LAST ) )? k+= INTO
+ // XQueryParser.g:1332:12: (k+= AS (k+= FIRST | k+= LAST ) )?
+ var alt180=2;
+ var LA180_0 = this.input.LA(1);
+
+ if ( (LA180_0==AS) ) {
+ alt180=1;
+ }
+ switch (alt180) {
+ case 1 :
+ // XQueryParser.g:1332:13: k+= AS (k+= FIRST | k+= LAST )
+ k=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_InsertExprTargetChoice11892); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:1332:19: (k+= FIRST | k+= LAST )
+ var alt179=2;
+ var LA179_0 = this.input.LA(1);
+
+ if ( (LA179_0==FIRST) ) {
+ alt179=1;
+ }
+ else if ( (LA179_0==LAST) ) {
+ alt179=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 179, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt179) {
+ case 1 :
+ // XQueryParser.g:1332:20: k+= FIRST
+ k=this.match(this.input,FIRST,XQueryParser.FOLLOW_FIRST_in_p_InsertExprTargetChoice11897); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1332:31: k+= LAST
+ k=this.match(this.input,LAST,XQueryParser.FOLLOW_LAST_in_p_InsertExprTargetChoice11903); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,INTO,XQueryParser.FOLLOW_INTO_in_p_InsertExprTargetChoice11910); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1333:11: ka= AFTER
+ root_0 = this.adaptor.nil();
+
+ ka=this.match(this.input,AFTER,XQueryParser.FOLLOW_AFTER_in_p_InsertExprTargetChoice11926); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1334:11: kb= BEFORE
+ root_0 = this.adaptor.nil();
+
+ kb=this.match(this.input,BEFORE,XQueryParser.FOLLOW_BEFORE_in_p_InsertExprTargetChoice11940); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kb_tree = this.adaptor.create(kb);
+ this.adaptor.addChild(root_0, kb_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_InsertExpr_return: (function() {
+ XQueryParser.p_InsertExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_InsertExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1338:1: p_InsertExpr : k+= INSERT (k+= NODE | k+= NODES ) p_SourceExpr p_InsertExprTargetChoice p_TargetExpr ;
+ // $ANTLR start "p_InsertExpr"
+ p_InsertExpr: function() {
+ var retval = new XQueryParser.p_InsertExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_SourceExpr563 = null;
+ var p_InsertExprTargetChoice564 = null;
+ var p_TargetExpr565 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1339:9: (k+= INSERT (k+= NODE | k+= NODES ) p_SourceExpr p_InsertExprTargetChoice p_TargetExpr )
+ // XQueryParser.g:1339:11: k+= INSERT (k+= NODE | k+= NODES ) p_SourceExpr p_InsertExprTargetChoice p_TargetExpr
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,INSERT,XQueryParser.FOLLOW_INSERT_in_p_InsertExpr11968); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:1339:21: (k+= NODE | k+= NODES )
+ var alt182=2;
+ var LA182_0 = this.input.LA(1);
+
+ if ( (LA182_0==NODE) ) {
+ alt182=1;
+ }
+ else if ( (LA182_0==NODES) ) {
+ alt182=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 182, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt182) {
+ case 1 :
+ // XQueryParser.g:1339:22: k+= NODE
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_InsertExpr11973); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1339:32: k+= NODES
+ k=this.match(this.input,NODES,XQueryParser.FOLLOW_NODES_in_p_InsertExpr11979); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_SourceExpr_in_p_InsertExpr11982);
+ p_SourceExpr563=this.p_SourceExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SourceExpr563.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_InsertExprTargetChoice_in_p_InsertExpr11984);
+ p_InsertExprTargetChoice564=this.p_InsertExprTargetChoice();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InsertExprTargetChoice564.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_TargetExpr_in_p_InsertExpr11986);
+ p_TargetExpr565=this.p_TargetExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TargetExpr565.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DeleteExpr_return: (function() {
+ XQueryParser.p_DeleteExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DeleteExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1343:1: p_DeleteExpr : k+= DELETE (k+= NODE | k+= NODES ) p_TargetExpr ;
+ // $ANTLR start "p_DeleteExpr"
+ p_DeleteExpr: function() {
+ var retval = new XQueryParser.p_DeleteExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_TargetExpr566 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1344:9: (k+= DELETE (k+= NODE | k+= NODES ) p_TargetExpr )
+ // XQueryParser.g:1344:11: k+= DELETE (k+= NODE | k+= NODES ) p_TargetExpr
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DELETE,XQueryParser.FOLLOW_DELETE_in_p_DeleteExpr12015); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:1344:21: (k+= NODE | k+= NODES )
+ var alt183=2;
+ var LA183_0 = this.input.LA(1);
+
+ if ( (LA183_0==NODE) ) {
+ alt183=1;
+ }
+ else if ( (LA183_0==NODES) ) {
+ alt183=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 183, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt183) {
+ case 1 :
+ // XQueryParser.g:1344:22: k+= NODE
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_DeleteExpr12020); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1344:32: k+= NODES
+ k=this.match(this.input,NODES,XQueryParser.FOLLOW_NODES_in_p_DeleteExpr12026); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TargetExpr_in_p_DeleteExpr12029);
+ p_TargetExpr566=this.p_TargetExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TargetExpr566.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ReplaceExpr_return: (function() {
+ XQueryParser.p_ReplaceExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ReplaceExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1348:1: p_ReplaceExpr : k+= REPLACE (k+= VALUE k+= OF )? k+= NODE p_ExprSingle k+= WITH p_ExprSingle ;
+ // $ANTLR start "p_ReplaceExpr"
+ p_ReplaceExpr: function() {
+ var retval = new XQueryParser.p_ReplaceExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_ExprSingle567 = null;
+ var p_ExprSingle568 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1349:9: (k+= REPLACE (k+= VALUE k+= OF )? k+= NODE p_ExprSingle k+= WITH p_ExprSingle )
+ // XQueryParser.g:1349:11: k+= REPLACE (k+= VALUE k+= OF )? k+= NODE p_ExprSingle k+= WITH p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,REPLACE,XQueryParser.FOLLOW_REPLACE_in_p_ReplaceExpr12058); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:1349:22: (k+= VALUE k+= OF )?
+ var alt184=2;
+ var LA184_0 = this.input.LA(1);
+
+ if ( (LA184_0==VALUE) ) {
+ alt184=1;
+ }
+ switch (alt184) {
+ case 1 :
+ // XQueryParser.g:1349:23: k+= VALUE k+= OF
+ k=this.match(this.input,VALUE,XQueryParser.FOLLOW_VALUE_in_p_ReplaceExpr12063); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,OF,XQueryParser.FOLLOW_OF_in_p_ReplaceExpr12067); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_ReplaceExpr12073); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ReplaceExpr12075);
+ p_ExprSingle567=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle567.getTree());
+ k=this.match(this.input,WITH,XQueryParser.FOLLOW_WITH_in_p_ReplaceExpr12079); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ReplaceExpr12081);
+ p_ExprSingle568=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle568.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_RenameExpr_return: (function() {
+ XQueryParser.p_RenameExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_RenameExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1353:1: p_RenameExpr : k+= RENAME k+= NODE p_TargetExpr AS p_NewNameExpr ;
+ // $ANTLR start "p_RenameExpr"
+ p_RenameExpr: function() {
+ var retval = new XQueryParser.p_RenameExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var AS570 = null;
+ var k = null;
+ var list_k=null;
+ var p_TargetExpr569 = null;
+ var p_NewNameExpr571 = null;
+
+ var AS570_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1354:9: (k+= RENAME k+= NODE p_TargetExpr AS p_NewNameExpr )
+ // XQueryParser.g:1354:11: k+= RENAME k+= NODE p_TargetExpr AS p_NewNameExpr
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,RENAME,XQueryParser.FOLLOW_RENAME_in_p_RenameExpr12110); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_RenameExpr12114); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TargetExpr_in_p_RenameExpr12116);
+ p_TargetExpr569=this.p_TargetExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TargetExpr569.getTree());
+ AS570=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_RenameExpr12118); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ AS570_tree = this.adaptor.create(AS570);
+ this.adaptor.addChild(root_0, AS570_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_NewNameExpr_in_p_RenameExpr12120);
+ p_NewNameExpr571=this.p_NewNameExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NewNameExpr571.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SourceExpr_return: (function() {
+ XQueryParser.p_SourceExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SourceExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1358:1: p_SourceExpr : p_ExprSingle ;
+ // $ANTLR start "p_SourceExpr"
+ p_SourceExpr: function() {
+ var retval = new XQueryParser.p_SourceExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ExprSingle572 = null;
+
+
+ try {
+ // XQueryParser.g:1359:9: ( p_ExprSingle )
+ // XQueryParser.g:1359:11: p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_SourceExpr12147);
+ p_ExprSingle572=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle572.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TargetExpr_return: (function() {
+ XQueryParser.p_TargetExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TargetExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1363:1: p_TargetExpr : p_ExprSingle ;
+ // $ANTLR start "p_TargetExpr"
+ p_TargetExpr: function() {
+ var retval = new XQueryParser.p_TargetExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ExprSingle573 = null;
+
+
+ try {
+ // XQueryParser.g:1364:9: ( p_ExprSingle )
+ // XQueryParser.g:1364:11: p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TargetExpr12173);
+ p_ExprSingle573=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle573.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NewNameExpr_return: (function() {
+ XQueryParser.p_NewNameExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NewNameExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1368:1: p_NewNameExpr : p_ExprSingle ;
+ // $ANTLR start "p_NewNameExpr"
+ p_NewNameExpr: function() {
+ var retval = new XQueryParser.p_NewNameExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ExprSingle574 = null;
+
+
+ try {
+ // XQueryParser.g:1369:9: ( p_ExprSingle )
+ // XQueryParser.g:1369:11: p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_NewNameExpr12199);
+ p_ExprSingle574=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle574.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TransformExpr_return: (function() {
+ XQueryParser.p_TransformExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TransformExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1373:1: p_TransformExpr : k+= COPY DOLLAR p_VarName BIND p_ExprSingle ( COMMA DOLLAR p_VarName BIND p_ExprSingle )* k+= MODIFY p_ExprSingle k+= RETURN p_ExprSingle ;
+ // $ANTLR start "p_TransformExpr"
+ p_TransformExpr: function() {
+ var retval = new XQueryParser.p_TransformExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR575 = null;
+ var BIND577 = null;
+ var COMMA579 = null;
+ var DOLLAR580 = null;
+ var BIND582 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName576 = null;
+ var p_ExprSingle578 = null;
+ var p_VarName581 = null;
+ var p_ExprSingle583 = null;
+ var p_ExprSingle584 = null;
+ var p_ExprSingle585 = null;
+
+ var DOLLAR575_tree=null;
+ var BIND577_tree=null;
+ var COMMA579_tree=null;
+ var DOLLAR580_tree=null;
+ var BIND582_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1374:9: (k+= COPY DOLLAR p_VarName BIND p_ExprSingle ( COMMA DOLLAR p_VarName BIND p_ExprSingle )* k+= MODIFY p_ExprSingle k+= RETURN p_ExprSingle )
+ // XQueryParser.g:1374:11: k+= COPY DOLLAR p_VarName BIND p_ExprSingle ( COMMA DOLLAR p_VarName BIND p_ExprSingle )* k+= MODIFY p_ExprSingle k+= RETURN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,COPY,XQueryParser.FOLLOW_COPY_in_p_TransformExpr12227); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR575=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_TransformExpr12229); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR575_tree = this.adaptor.create(DOLLAR575);
+ this.adaptor.addChild(root_0, DOLLAR575_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_TransformExpr12231);
+ p_VarName576=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName576.getTree());
+ BIND577=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_p_TransformExpr12233); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND577_tree = this.adaptor.create(BIND577);
+ this.adaptor.addChild(root_0, BIND577_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TransformExpr12235);
+ p_ExprSingle578=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle578.getTree());
+ // XQueryParser.g:1374:54: ( COMMA DOLLAR p_VarName BIND p_ExprSingle )*
+ loop185:
+ do {
+ var alt185=2;
+ var LA185_0 = this.input.LA(1);
+
+ if ( (LA185_0==COMMA) ) {
+ alt185=1;
+ }
+
+
+ switch (alt185) {
+ case 1 :
+ // XQueryParser.g:1374:55: COMMA DOLLAR p_VarName BIND p_ExprSingle
+ COMMA579=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_TransformExpr12238); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA579_tree = this.adaptor.create(COMMA579);
+ this.adaptor.addChild(root_0, COMMA579_tree);
+ }
+ DOLLAR580=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_TransformExpr12240); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR580_tree = this.adaptor.create(DOLLAR580);
+ this.adaptor.addChild(root_0, DOLLAR580_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_TransformExpr12242);
+ p_VarName581=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName581.getTree());
+ BIND582=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_p_TransformExpr12244); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND582_tree = this.adaptor.create(BIND582);
+ this.adaptor.addChild(root_0, BIND582_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TransformExpr12246);
+ p_ExprSingle583=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle583.getTree());
+
+
+ break;
+
+ default :
+ break loop185;
+ }
+ } while (true);
+
+ k=this.match(this.input,MODIFY,XQueryParser.FOLLOW_MODIFY_in_p_TransformExpr12252); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TransformExpr12254);
+ p_ExprSingle584=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle584.getTree());
+ k=this.match(this.input,RETURN,XQueryParser.FOLLOW_RETURN_in_p_TransformExpr12258); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TransformExpr12260);
+ p_ExprSingle585=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle585.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_ApplyExpr_return: (function() {
+ XQueryParser.pm_ApplyExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_ApplyExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1384:1: pm_ApplyExpr : p_ConcatExpr SEMICOLON ;
+ // $ANTLR start "pm_ApplyExpr"
+ pm_ApplyExpr: function() {
+ var retval = new XQueryParser.pm_ApplyExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON587 = null;
+ var p_ConcatExpr586 = null;
+
+ var SEMICOLON587_tree=null;
+
+ try {
+ // XQueryParser.g:1385:9: ( p_ConcatExpr SEMICOLON )
+ // XQueryParser.g:1385:11: p_ConcatExpr SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ConcatExpr_in_pm_ApplyExpr12294);
+ p_ConcatExpr586=this.p_ConcatExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ConcatExpr586.getTree());
+ SEMICOLON587=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_ApplyExpr12296); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON587_tree = this.adaptor.create(SEMICOLON587);
+ this.adaptor.addChild(root_0, SEMICOLON587_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ConcatExpr_return: (function() {
+ XQueryParser.p_ConcatExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ConcatExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1389:1: p_ConcatExpr : p_ExprSingle ( COMMA p_ExprSingle )* ;
+ // $ANTLR start "p_ConcatExpr"
+ p_ConcatExpr: function() {
+ var retval = new XQueryParser.p_ConcatExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA589 = null;
+ var p_ExprSingle588 = null;
+ var p_ExprSingle590 = null;
+
+ var COMMA589_tree=null;
+
+ try {
+ // XQueryParser.g:1390:9: ( p_ExprSingle ( COMMA p_ExprSingle )* )
+ // XQueryParser.g:1390:11: p_ExprSingle ( COMMA p_ExprSingle )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ConcatExpr12322);
+ p_ExprSingle588=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle588.getTree());
+ // XQueryParser.g:1390:24: ( COMMA p_ExprSingle )*
+ loop186:
+ do {
+ var alt186=2;
+ var LA186_0 = this.input.LA(1);
+
+ if ( (LA186_0==COMMA) ) {
+ alt186=1;
+ }
+
+
+ switch (alt186) {
+ case 1 :
+ // XQueryParser.g:1390:25: COMMA p_ExprSingle
+ COMMA589=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_ConcatExpr12325); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA589_tree = this.adaptor.create(COMMA589);
+ this.adaptor.addChild(root_0, COMMA589_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ConcatExpr12327);
+ p_ExprSingle590=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle590.getTree());
+
+
+ break;
+
+ default :
+ break loop186;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_BlockExpr_return: (function() {
+ XQueryParser.p_BlockExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_BlockExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1394:1: p_BlockExpr : kb= BLOCK p_Block ;
+ // $ANTLR start "p_BlockExpr"
+ p_BlockExpr: function() {
+ var retval = new XQueryParser.p_BlockExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kb = null;
+ var p_Block591 = null;
+
+ var kb_tree=null;
+
+ try {
+ // XQueryParser.g:1395:9: (kb= BLOCK p_Block )
+ // XQueryParser.g:1395:11: kb= BLOCK p_Block
+ root_0 = this.adaptor.nil();
+
+ kb=this.match(this.input,BLOCK,XQueryParser.FOLLOW_BLOCK_in_p_BlockExpr12357); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kb_tree = this.adaptor.create(kb);
+ this.adaptor.addChild(root_0, kb_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_Block_in_p_BlockExpr12359);
+ p_Block591=this.p_Block();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Block591.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Block_return: (function() {
+ XQueryParser.p_Block_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Block_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1399:1: p_Block : LBRACKET bd= pm_BlockDecls bb= p_BlockBody RBRACKET -> ^( Block $bd $bb) ;
+ // $ANTLR start "p_Block"
+ p_Block: function() {
+ var retval = new XQueryParser.p_Block_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LBRACKET592 = null;
+ var RBRACKET593 = null;
+ var bd = null;
+ var bb = null;
+
+ var LBRACKET592_tree=null;
+ var RBRACKET593_tree=null;
+ var stream_LBRACKET=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token LBRACKET");
+ var stream_RBRACKET=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token RBRACKET");
+ var stream_p_BlockBody=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_BlockBody");
+ var stream_pm_BlockDecls=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_BlockDecls");
+ try {
+ // XQueryParser.g:1400:9: ( LBRACKET bd= pm_BlockDecls bb= p_BlockBody RBRACKET -> ^( Block $bd $bb) )
+ // XQueryParser.g:1400:11: LBRACKET bd= pm_BlockDecls bb= p_BlockBody RBRACKET
+ LBRACKET592=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_Block12385); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LBRACKET.add(LBRACKET592);
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_BlockDecls_in_p_Block12389);
+ bd=this.pm_BlockDecls();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_BlockDecls.add(bd.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_BlockBody_in_p_Block12393);
+ bb=this.p_BlockBody();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_BlockBody.add(bb.getTree());
+ RBRACKET593=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_Block12395); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RBRACKET.add(RBRACKET593);
+
+
+
+ // AST REWRITE
+ // elements: bd, bb
+ // token labels:
+ // rule labels: retval, bb, bd
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_bb=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token bb",bb!=null?bb.tree:null);
+ var stream_bd=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token bd",bd!=null?bd.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1401:17: -> ^( Block $bd $bb)
+ {
+ // XQueryParser.g:1401:20: ^( Block $bd $bb)
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(Block, "Block"), root_1);
+
+ this.adaptor.addChild(root_1, stream_bd.nextTree());
+ this.adaptor.addChild(root_1, stream_bb.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_BlockDecls_return: (function() {
+ XQueryParser.pm_BlockDecls_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_BlockDecls_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1405:1: pm_BlockDecls : (bvd+= pm_BlockVarDecl )* -> ^( BlockDecls ( $bvd)* ) ;
+ // $ANTLR start "pm_BlockDecls"
+ pm_BlockDecls: function() {
+ var retval = new XQueryParser.pm_BlockDecls_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var list_bvd=null;
+ var bvd = null;
+ var stream_pm_BlockVarDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_BlockVarDecl");
+ try {
+ // XQueryParser.g:1406:9: ( (bvd+= pm_BlockVarDecl )* -> ^( BlockDecls ( $bvd)* ) )
+ // XQueryParser.g:1406:11: (bvd+= pm_BlockVarDecl )*
+ // XQueryParser.g:1406:14: (bvd+= pm_BlockVarDecl )*
+ loop187:
+ do {
+ var alt187=2;
+ var LA187_0 = this.input.LA(1);
+
+ if ( (LA187_0==DECLARE) ) {
+ var LA187_2 = this.input.LA(2);
+
+ if ( (LA187_2==DOLLAR) ) {
+ alt187=1;
+ }
+
+
+ }
+
+
+ switch (alt187) {
+ case 1 :
+ // XQueryParser.g:1406:14: bvd+= pm_BlockVarDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_BlockVarDecl_in_pm_BlockDecls12451);
+ bvd=this.pm_BlockVarDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_BlockVarDecl.add(bvd.getTree());
+ if (org.antlr.lang.isNull(list_bvd)) list_bvd = [];
+ list_bvd.push(bvd.getTree());
+
+
+
+ break;
+
+ default :
+ break loop187;
+ }
+ } while (true);
+
+
+
+ // AST REWRITE
+ // elements: bvd
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels: bvd
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_bvd=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token bvd",list_bvd);
+ root_0 = this.adaptor.nil();
+ // 1407:17: -> ^( BlockDecls ( $bvd)* )
+ {
+ // XQueryParser.g:1407:20: ^( BlockDecls ( $bvd)* )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(BlockDecls, "BlockDecls"), root_1);
+
+ // XQueryParser.g:1407:33: ( $bvd)*
+ while ( stream_bvd.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_bvd.nextTree());
+
+ }
+ stream_bvd.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_BlockVarDecl_return: (function() {
+ XQueryParser.pm_BlockVarDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_BlockVarDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1411:1: pm_BlockVarDecl : kd= DECLARE DOLLAR qn= p_VarName (td= p_TypeDeclaration )? ( BIND es= p_ExprSingle )? ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( BIND p_ExprSingle )? )* SEMICOLON -> ^( BlockVarDecl $qn ( $td)? ( $es)? ) ;
+ // $ANTLR start "pm_BlockVarDecl"
+ pm_BlockVarDecl: function() {
+ var retval = new XQueryParser.pm_BlockVarDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kd = null;
+ var DOLLAR594 = null;
+ var BIND595 = null;
+ var COMMA596 = null;
+ var DOLLAR597 = null;
+ var BIND600 = null;
+ var SEMICOLON602 = null;
+ var qn = null;
+ var td = null;
+ var es = null;
+ var p_VarName598 = null;
+ var p_TypeDeclaration599 = null;
+ var p_ExprSingle601 = null;
+
+ var kd_tree=null;
+ var DOLLAR594_tree=null;
+ var BIND595_tree=null;
+ var COMMA596_tree=null;
+ var DOLLAR597_tree=null;
+ var BIND600_tree=null;
+ var SEMICOLON602_tree=null;
+ var stream_DOLLAR=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DOLLAR");
+ var stream_DECLARE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DECLARE");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_COMMA=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token COMMA");
+ var stream_BIND=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token BIND");
+ var stream_p_VarName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_VarName");
+ var stream_p_TypeDeclaration=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_TypeDeclaration");
+ var stream_p_ExprSingle=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ExprSingle");
+ try {
+ // XQueryParser.g:1412:9: (kd= DECLARE DOLLAR qn= p_VarName (td= p_TypeDeclaration )? ( BIND es= p_ExprSingle )? ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( BIND p_ExprSingle )? )* SEMICOLON -> ^( BlockVarDecl $qn ( $td)? ( $es)? ) )
+ // XQueryParser.g:1412:11: kd= DECLARE DOLLAR qn= p_VarName (td= p_TypeDeclaration )? ( BIND es= p_ExprSingle )? ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( BIND p_ExprSingle )? )* SEMICOLON
+ kd=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_BlockVarDecl12506); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(kd);
+
+ DOLLAR594=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_pm_BlockVarDecl12508); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DOLLAR.add(DOLLAR594);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_pm_BlockVarDecl12512);
+ qn=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_VarName.add(qn.getTree());
+ // XQueryParser.g:1412:44: (td= p_TypeDeclaration )?
+ var alt188=2;
+ var LA188_0 = this.input.LA(1);
+
+ if ( (LA188_0==AS) ) {
+ alt188=1;
+ }
+ switch (alt188) {
+ case 1 :
+ // XQueryParser.g:1412:44: td= p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_pm_BlockVarDecl12516);
+ td=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(td.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:1412:64: ( BIND es= p_ExprSingle )?
+ var alt189=2;
+ var LA189_0 = this.input.LA(1);
+
+ if ( (LA189_0==BIND) ) {
+ alt189=1;
+ }
+ switch (alt189) {
+ case 1 :
+ // XQueryParser.g:1412:65: BIND es= p_ExprSingle
+ BIND595=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_BlockVarDecl12520); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BIND.add(BIND595);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_BlockVarDecl12524);
+ es=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ExprSingle.add(es.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:1412:88: ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( BIND p_ExprSingle )? )*
+ loop192:
+ do {
+ var alt192=2;
+ var LA192_0 = this.input.LA(1);
+
+ if ( (LA192_0==COMMA) ) {
+ alt192=1;
+ }
+
+
+ switch (alt192) {
+ case 1 :
+ // XQueryParser.g:1412:89: COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( BIND p_ExprSingle )?
+ COMMA596=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_pm_BlockVarDecl12529); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_COMMA.add(COMMA596);
+
+ DOLLAR597=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_pm_BlockVarDecl12531); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DOLLAR.add(DOLLAR597);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_pm_BlockVarDecl12533);
+ p_VarName598=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_VarName.add(p_VarName598.getTree());
+ // XQueryParser.g:1412:112: ( p_TypeDeclaration )?
+ var alt190=2;
+ var LA190_0 = this.input.LA(1);
+
+ if ( (LA190_0==AS) ) {
+ alt190=1;
+ }
+ switch (alt190) {
+ case 1 :
+ // XQueryParser.g:1412:112: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_pm_BlockVarDecl12535);
+ p_TypeDeclaration599=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(p_TypeDeclaration599.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:1412:131: ( BIND p_ExprSingle )?
+ var alt191=2;
+ var LA191_0 = this.input.LA(1);
+
+ if ( (LA191_0==BIND) ) {
+ alt191=1;
+ }
+ switch (alt191) {
+ case 1 :
+ // XQueryParser.g:1412:132: BIND p_ExprSingle
+ BIND600=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_BlockVarDecl12539); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BIND.add(BIND600);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_BlockVarDecl12541);
+ p_ExprSingle601=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ExprSingle.add(p_ExprSingle601.getTree());
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ default :
+ break loop192;
+ }
+ } while (true);
+
+ SEMICOLON602=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_BlockVarDecl12547); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON602);
+
+
+
+ // AST REWRITE
+ // elements: td, es, qn
+ // token labels:
+ // rule labels: qn, retval, td, es
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_qn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token qn",qn!=null?qn.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_td=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token td",td!=null?td.tree:null);
+ var stream_es=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token es",es!=null?es.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1413:17: -> ^( BlockVarDecl $qn ( $td)? ( $es)? )
+ {
+ // XQueryParser.g:1413:21: ^( BlockVarDecl $qn ( $td)? ( $es)? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(BlockVarDecl, "BlockVarDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_qn.nextTree());
+ // XQueryParser.g:1413:40: ( $td)?
+ if ( stream_td.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_td.nextTree());
+
+ }
+ stream_td.reset();
+ // XQueryParser.g:1413:45: ( $es)?
+ if ( stream_es.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_es.nextTree());
+
+ }
+ stream_es.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_BlockBody_return: (function() {
+ XQueryParser.p_BlockBody_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_BlockBody_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1417:1: p_BlockBody : pm_Expr ;
+ // $ANTLR start "p_BlockBody"
+ p_BlockBody: function() {
+ var retval = new XQueryParser.p_BlockBody_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_Expr603 = null;
+
+
+ try {
+ // XQueryParser.g:1418:9: ( pm_Expr )
+ // XQueryParser.g:1418:11: pm_Expr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_BlockBody12607);
+ pm_Expr603=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr603.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AssignmentExpr_return: (function() {
+ XQueryParser.p_AssignmentExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AssignmentExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1422:1: p_AssignmentExpr : ks= SET DOLLAR p_VarName BIND p_ExprSingle ;
+ // $ANTLR start "p_AssignmentExpr"
+ p_AssignmentExpr: function() {
+ var retval = new XQueryParser.p_AssignmentExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ks = null;
+ var DOLLAR604 = null;
+ var BIND606 = null;
+ var p_VarName605 = null;
+ var p_ExprSingle607 = null;
+
+ var ks_tree=null;
+ var DOLLAR604_tree=null;
+ var BIND606_tree=null;
+
+ try {
+ // XQueryParser.g:1423:9: (ks= SET DOLLAR p_VarName BIND p_ExprSingle )
+ // XQueryParser.g:1423:11: ks= SET DOLLAR p_VarName BIND p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ ks=this.match(this.input,SET,XQueryParser.FOLLOW_SET_in_p_AssignmentExpr12635); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ks_tree = this.adaptor.create(ks);
+ this.adaptor.addChild(root_0, ks_tree);
+ }
+ DOLLAR604=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_AssignmentExpr12637); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR604_tree = this.adaptor.create(DOLLAR604);
+ this.adaptor.addChild(root_0, DOLLAR604_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_AssignmentExpr12639);
+ p_VarName605=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName605.getTree());
+ BIND606=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_p_AssignmentExpr12641); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND606_tree = this.adaptor.create(BIND606);
+ this.adaptor.addChild(root_0, BIND606_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_AssignmentExpr12643);
+ p_ExprSingle607=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle607.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ExitExpr_return: (function() {
+ XQueryParser.p_ExitExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ExitExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1427:1: p_ExitExpr : ke= EXIT kr= RETURNING p_ExprSingle ;
+ // $ANTLR start "p_ExitExpr"
+ p_ExitExpr: function() {
+ var retval = new XQueryParser.p_ExitExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ke = null;
+ var kr = null;
+ var p_ExprSingle608 = null;
+
+ var ke_tree=null;
+ var kr_tree=null;
+
+ try {
+ // XQueryParser.g:1428:9: (ke= EXIT kr= RETURNING p_ExprSingle )
+ // XQueryParser.g:1428:11: ke= EXIT kr= RETURNING p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ ke=this.match(this.input,EXIT,XQueryParser.FOLLOW_EXIT_in_p_ExitExpr12671); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ke_tree = this.adaptor.create(ke);
+ this.adaptor.addChild(root_0, ke_tree);
+ }
+ kr=this.match(this.input,RETURNING,XQueryParser.FOLLOW_RETURNING_in_p_ExitExpr12675); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kr_tree = this.adaptor.create(kr);
+ this.adaptor.addChild(root_0, kr_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ExitExpr12677);
+ p_ExprSingle608=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle608.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WhileExpr_return: (function() {
+ XQueryParser.p_WhileExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WhileExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1432:1: p_WhileExpr : kw= WHILE LPAREN p_ExprSingle RPAREN p_WhileBody ;
+ // $ANTLR start "p_WhileExpr"
+ p_WhileExpr: function() {
+ var retval = new XQueryParser.p_WhileExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kw = null;
+ var LPAREN609 = null;
+ var RPAREN611 = null;
+ var p_ExprSingle610 = null;
+ var p_WhileBody612 = null;
+
+ var kw_tree=null;
+ var LPAREN609_tree=null;
+ var RPAREN611_tree=null;
+
+ try {
+ // XQueryParser.g:1433:9: (kw= WHILE LPAREN p_ExprSingle RPAREN p_WhileBody )
+ // XQueryParser.g:1433:11: kw= WHILE LPAREN p_ExprSingle RPAREN p_WhileBody
+ root_0 = this.adaptor.nil();
+
+ kw=this.match(this.input,WHILE,XQueryParser.FOLLOW_WHILE_in_p_WhileExpr12705); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kw_tree = this.adaptor.create(kw);
+ this.adaptor.addChild(root_0, kw_tree);
+ }
+ LPAREN609=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_WhileExpr12707); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN609_tree = this.adaptor.create(LPAREN609);
+ this.adaptor.addChild(root_0, LPAREN609_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_WhileExpr12709);
+ p_ExprSingle610=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle610.getTree());
+ RPAREN611=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_WhileExpr12711); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN611_tree = this.adaptor.create(RPAREN611);
+ this.adaptor.addChild(root_0, RPAREN611_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_WhileBody_in_p_WhileExpr12713);
+ p_WhileBody612=this.p_WhileBody();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WhileBody612.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WhileBody_return: (function() {
+ XQueryParser.p_WhileBody_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WhileBody_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1437:1: p_WhileBody : p_Block ;
+ // $ANTLR start "p_WhileBody"
+ p_WhileBody: function() {
+ var retval = new XQueryParser.p_WhileBody_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_Block613 = null;
+
+
+ try {
+ // XQueryParser.g:1438:9: ( p_Block )
+ // XQueryParser.g:1438:11: p_Block
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_Block_in_p_WhileBody12739);
+ p_Block613=this.p_Block();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Block613.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_EvalExpr_return: (function() {
+ XQueryParser.p_EvalExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_EvalExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1446:1: p_EvalExpr : ( p_UsingClause )? ke= EVAL LBRACKET p_ExprSingle RBRACKET ;
+ // $ANTLR start "p_EvalExpr"
+ p_EvalExpr: function() {
+ var retval = new XQueryParser.p_EvalExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ke = null;
+ var LBRACKET615 = null;
+ var RBRACKET617 = null;
+ var p_UsingClause614 = null;
+ var p_ExprSingle616 = null;
+
+ var ke_tree=null;
+ var LBRACKET615_tree=null;
+ var RBRACKET617_tree=null;
+
+ try {
+ // XQueryParser.g:1447:9: ( ( p_UsingClause )? ke= EVAL LBRACKET p_ExprSingle RBRACKET )
+ // XQueryParser.g:1447:11: ( p_UsingClause )? ke= EVAL LBRACKET p_ExprSingle RBRACKET
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1447:11: ( p_UsingClause )?
+ var alt193=2;
+ var LA193_0 = this.input.LA(1);
+
+ if ( (LA193_0==USING) ) {
+ alt193=1;
+ }
+ switch (alt193) {
+ case 1 :
+ // XQueryParser.g:1447:11: p_UsingClause
+ this.pushFollow(XQueryParser.FOLLOW_p_UsingClause_in_p_EvalExpr12769);
+ p_UsingClause614=this.p_UsingClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_UsingClause614.getTree());
+
+
+ break;
+
+ }
+
+ ke=this.match(this.input,EVAL,XQueryParser.FOLLOW_EVAL_in_p_EvalExpr12774); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ke_tree = this.adaptor.create(ke);
+ this.adaptor.addChild(root_0, ke_tree);
+ }
+ LBRACKET615=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_EvalExpr12776); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET615_tree = this.adaptor.create(LBRACKET615);
+ this.adaptor.addChild(root_0, LBRACKET615_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_EvalExpr12778);
+ p_ExprSingle616=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle616.getTree());
+ RBRACKET617=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_EvalExpr12780); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET617_tree = this.adaptor.create(RBRACKET617);
+ this.adaptor.addChild(root_0, RBRACKET617_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_UsingClause_return: (function() {
+ XQueryParser.p_UsingClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_UsingClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1450:1: p_UsingClause : ku= USING DOLLAR p_VarName ( COMMA DOLLAR p_VarName )* ;
+ // $ANTLR start "p_UsingClause"
+ p_UsingClause: function() {
+ var retval = new XQueryParser.p_UsingClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ku = null;
+ var DOLLAR618 = null;
+ var COMMA620 = null;
+ var DOLLAR621 = null;
+ var p_VarName619 = null;
+ var p_VarName622 = null;
+
+ var ku_tree=null;
+ var DOLLAR618_tree=null;
+ var COMMA620_tree=null;
+ var DOLLAR621_tree=null;
+
+ try {
+ // XQueryParser.g:1451:9: (ku= USING DOLLAR p_VarName ( COMMA DOLLAR p_VarName )* )
+ // XQueryParser.g:1451:11: ku= USING DOLLAR p_VarName ( COMMA DOLLAR p_VarName )*
+ root_0 = this.adaptor.nil();
+
+ ku=this.match(this.input,USING,XQueryParser.FOLLOW_USING_in_p_UsingClause12807); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ku_tree = this.adaptor.create(ku);
+ this.adaptor.addChild(root_0, ku_tree);
+ }
+ DOLLAR618=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_UsingClause12809); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR618_tree = this.adaptor.create(DOLLAR618);
+ this.adaptor.addChild(root_0, DOLLAR618_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_UsingClause12811);
+ p_VarName619=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName619.getTree());
+ // XQueryParser.g:1451:37: ( COMMA DOLLAR p_VarName )*
+ loop194:
+ do {
+ var alt194=2;
+ var LA194_0 = this.input.LA(1);
+
+ if ( (LA194_0==COMMA) ) {
+ alt194=1;
+ }
+
+
+ switch (alt194) {
+ case 1 :
+ // XQueryParser.g:1451:38: COMMA DOLLAR p_VarName
+ COMMA620=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_UsingClause12814); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA620_tree = this.adaptor.create(COMMA620);
+ this.adaptor.addChild(root_0, COMMA620_tree);
+ }
+ DOLLAR621=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_UsingClause12816); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR621_tree = this.adaptor.create(DOLLAR621);
+ this.adaptor.addChild(root_0, DOLLAR621_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_UsingClause12818);
+ p_VarName622=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName622.getTree());
+
+
+ break;
+
+ default :
+ break loop194;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CollectionDecl_return: (function() {
+ XQueryParser.p_CollectionDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CollectionDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1460:1: p_CollectionDecl : k+= DECLARE p_CollProperties k+= COLLECTION p_QName ( p_CollectionTypeDecl )? (k+= WITH p_NodeModifier k+= NODES )? SEMICOLON ;
+ // $ANTLR start "p_CollectionDecl"
+ p_CollectionDecl: function() {
+ var retval = new XQueryParser.p_CollectionDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON627 = null;
+ var k = null;
+ var list_k=null;
+ var p_CollProperties623 = null;
+ var p_QName624 = null;
+ var p_CollectionTypeDecl625 = null;
+ var p_NodeModifier626 = null;
+
+ var SEMICOLON627_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1461:9: (k+= DECLARE p_CollProperties k+= COLLECTION p_QName ( p_CollectionTypeDecl )? (k+= WITH p_NodeModifier k+= NODES )? SEMICOLON )
+ // XQueryParser.g:1461:11: k+= DECLARE p_CollProperties k+= COLLECTION p_QName ( p_CollectionTypeDecl )? (k+= WITH p_NodeModifier k+= NODES )? SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_p_CollectionDecl12853); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CollProperties_in_p_CollectionDecl12855);
+ p_CollProperties623=this.p_CollProperties();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CollProperties623.getTree());
+ k=this.match(this.input,COLLECTION,XQueryParser.FOLLOW_COLLECTION_in_p_CollectionDecl12859); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_CollectionDecl12861);
+ p_QName624=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName624.getTree());
+ // XQueryParser.g:1461:61: ( p_CollectionTypeDecl )?
+ var alt195=2;
+ var LA195_0 = this.input.LA(1);
+
+ if ( (LA195_0==AS) ) {
+ alt195=1;
+ }
+ switch (alt195) {
+ case 1 :
+ // XQueryParser.g:1461:61: p_CollectionTypeDecl
+ this.pushFollow(XQueryParser.FOLLOW_p_CollectionTypeDecl_in_p_CollectionDecl12863);
+ p_CollectionTypeDecl625=this.p_CollectionTypeDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CollectionTypeDecl625.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:1461:83: (k+= WITH p_NodeModifier k+= NODES )?
+ var alt196=2;
+ var LA196_0 = this.input.LA(1);
+
+ if ( (LA196_0==WITH) ) {
+ alt196=1;
+ }
+ switch (alt196) {
+ case 1 :
+ // XQueryParser.g:1461:84: k+= WITH p_NodeModifier k+= NODES
+ k=this.match(this.input,WITH,XQueryParser.FOLLOW_WITH_in_p_CollectionDecl12869); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NodeModifier_in_p_CollectionDecl12871);
+ p_NodeModifier626=this.p_NodeModifier();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NodeModifier626.getTree());
+ k=this.match(this.input,NODES,XQueryParser.FOLLOW_NODES_in_p_CollectionDecl12875); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON627=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_CollectionDecl12879); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON627_tree = this.adaptor.create(SEMICOLON627);
+ this.adaptor.addChild(root_0, SEMICOLON627_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CollProperties_return: (function() {
+ XQueryParser.p_CollProperties_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CollProperties_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1464:1: p_CollProperties : ( (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )* ) ;
+ // $ANTLR start "p_CollProperties"
+ p_CollProperties: function() {
+ var retval = new XQueryParser.p_CollProperties_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1465:9: ( ( (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )* ) )
+ // XQueryParser.g:1465:11: ( (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )* )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1465:11: ( (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )* )
+ // XQueryParser.g:1465:12: (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )*
+ // XQueryParser.g:1465:12: (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )*
+ loop197:
+ do {
+ var alt197=7;
+ switch ( this.input.LA(1) ) {
+ case CONST:
+ alt197=1;
+ break;
+ case MUTABLE:
+ alt197=2;
+ break;
+ case APPEND_ONLY:
+ alt197=3;
+ break;
+ case QUEUE:
+ alt197=4;
+ break;
+ case ORDERED:
+ alt197=5;
+ break;
+ case UNORDERED:
+ alt197=6;
+ break;
+
+ }
+
+ switch (alt197) {
+ case 1 :
+ // XQueryParser.g:1465:13: k+= CONST
+ k=this.match(this.input,CONST,XQueryParser.FOLLOW_CONST_in_p_CollProperties12909); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1465:24: k+= MUTABLE
+ k=this.match(this.input,MUTABLE,XQueryParser.FOLLOW_MUTABLE_in_p_CollProperties12915); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1466:11: k+= APPEND_ONLY
+ k=this.match(this.input,APPEND_ONLY,XQueryParser.FOLLOW_APPEND_ONLY_in_p_CollProperties12929); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:1466:28: k+= QUEUE
+ k=this.match(this.input,QUEUE,XQueryParser.FOLLOW_QUEUE_in_p_CollProperties12935); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:1467:11: k+= ORDERED
+ k=this.match(this.input,ORDERED,XQueryParser.FOLLOW_ORDERED_in_p_CollProperties12949); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:1467:24: k+= UNORDERED
+ k=this.match(this.input,UNORDERED,XQueryParser.FOLLOW_UNORDERED_in_p_CollProperties12955); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ default :
+ break loop197;
+ }
+ } while (true);
+
+
+
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CollectionTypeDecl_return: (function() {
+ XQueryParser.p_CollectionTypeDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CollectionTypeDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1470:1: p_CollectionTypeDecl : (ka= AS p_KindTest ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )? ) ;
+ // $ANTLR start "p_CollectionTypeDecl"
+ p_CollectionTypeDecl: function() {
+ var retval = new XQueryParser.p_CollectionTypeDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ka = null;
+ var p_KindTest628 = null;
+ var p_OccurrenceIndicator629 = null;
+
+ var ka_tree=null;
+
+ try {
+ // XQueryParser.g:1471:9: ( (ka= AS p_KindTest ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )? ) )
+ // XQueryParser.g:1471:11: (ka= AS p_KindTest ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )? )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1471:11: (ka= AS p_KindTest ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )? )
+ // XQueryParser.g:1471:12: ka= AS p_KindTest ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )?
+ ka=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_CollectionTypeDecl12987); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_KindTest_in_p_CollectionTypeDecl12989);
+ p_KindTest628=this.p_KindTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_KindTest628.getTree());
+ // XQueryParser.g:1471:29: ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )?
+ var alt198=2;
+ var LA198_0 = this.input.LA(1);
+
+ if ( ((LA198_0>=QUESTION && LA198_0<=PLUS)) && (this.synpred3_XQueryParser())) {
+ alt198=1;
+ }
+ switch (alt198) {
+ case 1 :
+ // XQueryParser.g:1471:30: ( p_OccurrenceIndicator )=> p_OccurrenceIndicator
+ this.pushFollow(XQueryParser.FOLLOW_p_OccurrenceIndicator_in_p_CollectionTypeDecl12998);
+ p_OccurrenceIndicator629=this.p_OccurrenceIndicator();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OccurrenceIndicator629.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NodeModifier_return: (function() {
+ XQueryParser.p_NodeModifier_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NodeModifier_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1474:1: p_NodeModifier : (k+= READ_ONLY | k+= MUTABLE ) ;
+ // $ANTLR start "p_NodeModifier"
+ p_NodeModifier: function() {
+ var retval = new XQueryParser.p_NodeModifier_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1475:9: ( (k+= READ_ONLY | k+= MUTABLE ) )
+ // XQueryParser.g:1475:11: (k+= READ_ONLY | k+= MUTABLE )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1475:11: (k+= READ_ONLY | k+= MUTABLE )
+ var alt199=2;
+ var LA199_0 = this.input.LA(1);
+
+ if ( (LA199_0==READ_ONLY) ) {
+ alt199=1;
+ }
+ else if ( (LA199_0==MUTABLE) ) {
+ alt199=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 199, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt199) {
+ case 1 :
+ // XQueryParser.g:1475:12: k+= READ_ONLY
+ k=this.match(this.input,READ_ONLY,XQueryParser.FOLLOW_READ_ONLY_in_p_NodeModifier13029); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1475:27: k+= MUTABLE
+ k=this.match(this.input,MUTABLE,XQueryParser.FOLLOW_MUTABLE_in_p_NodeModifier13035); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexDecl_return: (function() {
+ XQueryParser.p_IndexDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1478:1: p_IndexDecl : k+= DECLARE p_IndexProperties k+= INDEX p_IndexName k+= ON k+= NODES p_IndexDomainExpr k+= BY p_IndexKeySpec ( COMMA p_IndexKeySpec )* SEMICOLON ;
+ // $ANTLR start "p_IndexDecl"
+ p_IndexDecl: function() {
+ var retval = new XQueryParser.p_IndexDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA634 = null;
+ var SEMICOLON636 = null;
+ var k = null;
+ var list_k=null;
+ var p_IndexProperties630 = null;
+ var p_IndexName631 = null;
+ var p_IndexDomainExpr632 = null;
+ var p_IndexKeySpec633 = null;
+ var p_IndexKeySpec635 = null;
+
+ var COMMA634_tree=null;
+ var SEMICOLON636_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1479:9: (k+= DECLARE p_IndexProperties k+= INDEX p_IndexName k+= ON k+= NODES p_IndexDomainExpr k+= BY p_IndexKeySpec ( COMMA p_IndexKeySpec )* SEMICOLON )
+ // XQueryParser.g:1479:11: k+= DECLARE p_IndexProperties k+= INDEX p_IndexName k+= ON k+= NODES p_IndexDomainExpr k+= BY p_IndexKeySpec ( COMMA p_IndexKeySpec )* SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_p_IndexDecl13064); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexProperties_in_p_IndexDecl13066);
+ p_IndexProperties630=this.p_IndexProperties();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexProperties630.getTree());
+ k=this.match(this.input,INDEX,XQueryParser.FOLLOW_INDEX_in_p_IndexDecl13070); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexName_in_p_IndexDecl13072);
+ p_IndexName631=this.p_IndexName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexName631.getTree());
+ k=this.match(this.input,ON,XQueryParser.FOLLOW_ON_in_p_IndexDecl13076); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NODES,XQueryParser.FOLLOW_NODES_in_p_IndexDecl13080); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexDomainExpr_in_p_IndexDecl13082);
+ p_IndexDomainExpr632=this.p_IndexDomainExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexDomainExpr632.getTree());
+ k=this.match(this.input,BY,XQueryParser.FOLLOW_BY_in_p_IndexDecl13086); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexKeySpec_in_p_IndexDecl13088);
+ p_IndexKeySpec633=this.p_IndexKeySpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexKeySpec633.getTree());
+ // XQueryParser.g:1479:115: ( COMMA p_IndexKeySpec )*
+ loop200:
+ do {
+ var alt200=2;
+ var LA200_0 = this.input.LA(1);
+
+ if ( (LA200_0==COMMA) ) {
+ alt200=1;
+ }
+
+
+ switch (alt200) {
+ case 1 :
+ // XQueryParser.g:1479:116: COMMA p_IndexKeySpec
+ COMMA634=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_IndexDecl13091); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA634_tree = this.adaptor.create(COMMA634);
+ this.adaptor.addChild(root_0, COMMA634_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexKeySpec_in_p_IndexDecl13093);
+ p_IndexKeySpec635=this.p_IndexKeySpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexKeySpec635.getTree());
+
+
+ break;
+
+ default :
+ break loop200;
+ }
+ } while (true);
+
+ SEMICOLON636=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_IndexDecl13097); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON636_tree = this.adaptor.create(SEMICOLON636);
+ this.adaptor.addChild(root_0, SEMICOLON636_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexName_return: (function() {
+ XQueryParser.p_IndexName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1482:1: p_IndexName : p_QName ;
+ // $ANTLR start "p_IndexName"
+ p_IndexName: function() {
+ var retval = new XQueryParser.p_IndexName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName637 = null;
+
+
+ try {
+ // XQueryParser.g:1483:9: ( p_QName )
+ // XQueryParser.g:1483:11: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_IndexName13123);
+ p_QName637=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName637.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexProperties_return: (function() {
+ XQueryParser.p_IndexProperties_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexProperties_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1486:1: p_IndexProperties : ( (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )* ) ;
+ // $ANTLR start "p_IndexProperties"
+ p_IndexProperties: function() {
+ var retval = new XQueryParser.p_IndexProperties_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1487:9: ( ( (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )* ) )
+ // XQueryParser.g:1487:11: ( (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )* )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1487:11: ( (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )* )
+ // XQueryParser.g:1487:12: (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )*
+ // XQueryParser.g:1487:12: (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )*
+ loop201:
+ do {
+ var alt201=7;
+ switch ( this.input.LA(1) ) {
+ case UNIQUE:
+ alt201=1;
+ break;
+ case NON:
+ alt201=2;
+ break;
+ case VALUE:
+ var LA201_4 = this.input.LA(2);
+
+ if ( (LA201_4==RANGE) ) {
+ alt201=3;
+ }
+ else if ( (LA201_4==EQUALITY) ) {
+ alt201=4;
+ }
+
+
+ break;
+ case AUTOMATICALLY:
+ alt201=5;
+ break;
+ case MANUALLY:
+ alt201=6;
+ break;
+
+ }
+
+ switch (alt201) {
+ case 1 :
+ // XQueryParser.g:1487:13: k+= UNIQUE
+ k=this.match(this.input,UNIQUE,XQueryParser.FOLLOW_UNIQUE_in_p_IndexProperties13152); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1487:25: k+= NON k+= UNIQUE
+ k=this.match(this.input,NON,XQueryParser.FOLLOW_NON_in_p_IndexProperties13158); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,UNIQUE,XQueryParser.FOLLOW_UNIQUE_in_p_IndexProperties13162); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1488:11: k+= VALUE k+= RANGE
+ k=this.match(this.input,VALUE,XQueryParser.FOLLOW_VALUE_in_p_IndexProperties13176); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,RANGE,XQueryParser.FOLLOW_RANGE_in_p_IndexProperties13180); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:1488:31: k+= VALUE k+= EQUALITY
+ k=this.match(this.input,VALUE,XQueryParser.FOLLOW_VALUE_in_p_IndexProperties13186); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,EQUALITY,XQueryParser.FOLLOW_EQUALITY_in_p_IndexProperties13190); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:1489:11: k+= AUTOMATICALLY k+= MAINTAINED
+ k=this.match(this.input,AUTOMATICALLY,XQueryParser.FOLLOW_AUTOMATICALLY_in_p_IndexProperties13204); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,MAINTAINED,XQueryParser.FOLLOW_MAINTAINED_in_p_IndexProperties13208); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:1489:44: k+= MANUALLY k+= MAINTAINED
+ k=this.match(this.input,MANUALLY,XQueryParser.FOLLOW_MANUALLY_in_p_IndexProperties13214); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,MAINTAINED,XQueryParser.FOLLOW_MAINTAINED_in_p_IndexProperties13218); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ default :
+ break loop201;
+ }
+ } while (true);
+
+
+
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexDomainExpr_return: (function() {
+ XQueryParser.p_IndexDomainExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexDomainExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1492:1: p_IndexDomainExpr : p_PathExpr ;
+ // $ANTLR start "p_IndexDomainExpr"
+ p_IndexDomainExpr: function() {
+ var retval = new XQueryParser.p_IndexDomainExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_PathExpr638 = null;
+
+
+ try {
+ // XQueryParser.g:1493:9: ( p_PathExpr )
+ // XQueryParser.g:1493:11: p_PathExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PathExpr_in_p_IndexDomainExpr13247);
+ p_PathExpr638=this.p_PathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PathExpr638.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexKeySpec_return: (function() {
+ XQueryParser.p_IndexKeySpec_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexKeySpec_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1496:1: p_IndexKeySpec : p_IndexKeyExpr p_IndexKeyTypeDecl ( p_IndexKeyCollation )? ;
+ // $ANTLR start "p_IndexKeySpec"
+ p_IndexKeySpec: function() {
+ var retval = new XQueryParser.p_IndexKeySpec_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_IndexKeyExpr639 = null;
+ var p_IndexKeyTypeDecl640 = null;
+ var p_IndexKeyCollation641 = null;
+
+
+ try {
+ // XQueryParser.g:1497:9: ( p_IndexKeyExpr p_IndexKeyTypeDecl ( p_IndexKeyCollation )? )
+ // XQueryParser.g:1497:11: p_IndexKeyExpr p_IndexKeyTypeDecl ( p_IndexKeyCollation )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexKeyExpr_in_p_IndexKeySpec13272);
+ p_IndexKeyExpr639=this.p_IndexKeyExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexKeyExpr639.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexKeyTypeDecl_in_p_IndexKeySpec13274);
+ p_IndexKeyTypeDecl640=this.p_IndexKeyTypeDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexKeyTypeDecl640.getTree());
+ // XQueryParser.g:1497:45: ( p_IndexKeyCollation )?
+ var alt202=2;
+ var LA202_0 = this.input.LA(1);
+
+ if ( (LA202_0==COLLATION) ) {
+ alt202=1;
+ }
+ switch (alt202) {
+ case 1 :
+ // XQueryParser.g:1497:45: p_IndexKeyCollation
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexKeyCollation_in_p_IndexKeySpec13276);
+ p_IndexKeyCollation641=this.p_IndexKeyCollation();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexKeyCollation641.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexKeyExpr_return: (function() {
+ XQueryParser.p_IndexKeyExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexKeyExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1500:1: p_IndexKeyExpr : p_PathExpr ;
+ // $ANTLR start "p_IndexKeyExpr"
+ p_IndexKeyExpr: function() {
+ var retval = new XQueryParser.p_IndexKeyExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_PathExpr642 = null;
+
+
+ try {
+ // XQueryParser.g:1501:9: ( p_PathExpr )
+ // XQueryParser.g:1501:11: p_PathExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PathExpr_in_p_IndexKeyExpr13302);
+ p_PathExpr642=this.p_PathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PathExpr642.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexKeyTypeDecl_return: (function() {
+ XQueryParser.p_IndexKeyTypeDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexKeyTypeDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1504:1: p_IndexKeyTypeDecl : ka= AS p_AtomicType ;
+ // $ANTLR start "p_IndexKeyTypeDecl"
+ p_IndexKeyTypeDecl: function() {
+ var retval = new XQueryParser.p_IndexKeyTypeDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ka = null;
+ var p_AtomicType643 = null;
+
+ var ka_tree=null;
+
+ try {
+ // XQueryParser.g:1505:9: (ka= AS p_AtomicType )
+ // XQueryParser.g:1505:11: ka= AS p_AtomicType
+ root_0 = this.adaptor.nil();
+
+ ka=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_IndexKeyTypeDecl13329); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AtomicType_in_p_IndexKeyTypeDecl13331);
+ p_AtomicType643=this.p_AtomicType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AtomicType643.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexKeyCollation_return: (function() {
+ XQueryParser.p_IndexKeyCollation_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexKeyCollation_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1508:1: p_IndexKeyCollation : kc= COLLATION p_StringLiteral ;
+ // $ANTLR start "p_IndexKeyCollation"
+ p_IndexKeyCollation: function() {
+ var retval = new XQueryParser.p_IndexKeyCollation_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var p_StringLiteral644 = null;
+
+ var kc_tree=null;
+
+ try {
+ // XQueryParser.g:1509:9: (kc= COLLATION p_StringLiteral )
+ // XQueryParser.g:1509:11: kc= COLLATION p_StringLiteral
+ root_0 = this.adaptor.nil();
+
+ kc=this.match(this.input,COLLATION,XQueryParser.FOLLOW_COLLATION_in_p_IndexKeyCollation13358); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_IndexKeyCollation13360);
+ p_StringLiteral644=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral644.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICDecl_return: (function() {
+ XQueryParser.p_ICDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1512:1: p_ICDecl : k+= DECLARE k+= INTEGRITY k+= CONSTRAINT p_QName ( p_ICCollection | p_ICForeignKey ) SEMICOLON ;
+ // $ANTLR start "p_ICDecl"
+ p_ICDecl: function() {
+ var retval = new XQueryParser.p_ICDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON648 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName645 = null;
+ var p_ICCollection646 = null;
+ var p_ICForeignKey647 = null;
+
+ var SEMICOLON648_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1513:9: (k+= DECLARE k+= INTEGRITY k+= CONSTRAINT p_QName ( p_ICCollection | p_ICForeignKey ) SEMICOLON )
+ // XQueryParser.g:1513:11: k+= DECLARE k+= INTEGRITY k+= CONSTRAINT p_QName ( p_ICCollection | p_ICForeignKey ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_p_ICDecl13387); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,INTEGRITY,XQueryParser.FOLLOW_INTEGRITY_in_p_ICDecl13391); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,CONSTRAINT,XQueryParser.FOLLOW_CONSTRAINT_in_p_ICDecl13395); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICDecl13398);
+ p_QName645=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName645.getTree());
+ // XQueryParser.g:1513:58: ( p_ICCollection | p_ICForeignKey )
+ var alt203=2;
+ var LA203_0 = this.input.LA(1);
+
+ if ( (LA203_0==ON) ) {
+ alt203=1;
+ }
+ else if ( (LA203_0==FOREIGN) ) {
+ alt203=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 203, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt203) {
+ case 1 :
+ // XQueryParser.g:1513:59: p_ICCollection
+ this.pushFollow(XQueryParser.FOLLOW_p_ICCollection_in_p_ICDecl13401);
+ p_ICCollection646=this.p_ICCollection();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICCollection646.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1513:76: p_ICForeignKey
+ this.pushFollow(XQueryParser.FOLLOW_p_ICForeignKey_in_p_ICDecl13405);
+ p_ICForeignKey647=this.p_ICForeignKey();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICForeignKey647.getTree());
+
+
+ break;
+
+ }
+
+ SEMICOLON648=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_ICDecl13408); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON648_tree = this.adaptor.create(SEMICOLON648);
+ this.adaptor.addChild(root_0, SEMICOLON648_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICCollection_return: (function() {
+ XQueryParser.p_ICCollection_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICCollection_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1516:1: p_ICCollection : k+= ON k+= COLLECTION p_QName ( p_ICCollSequence | p_ICCollSequenceUnique | p_ICCollNode ) ;
+ // $ANTLR start "p_ICCollection"
+ p_ICCollection: function() {
+ var retval = new XQueryParser.p_ICCollection_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_QName649 = null;
+ var p_ICCollSequence650 = null;
+ var p_ICCollSequenceUnique651 = null;
+ var p_ICCollNode652 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1517:9: (k+= ON k+= COLLECTION p_QName ( p_ICCollSequence | p_ICCollSequenceUnique | p_ICCollNode ) )
+ // XQueryParser.g:1517:11: k+= ON k+= COLLECTION p_QName ( p_ICCollSequence | p_ICCollSequenceUnique | p_ICCollNode )
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,ON,XQueryParser.FOLLOW_ON_in_p_ICCollection13435); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,COLLECTION,XQueryParser.FOLLOW_COLLECTION_in_p_ICCollection13439); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICCollection13442);
+ p_QName649=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName649.getTree());
+ // XQueryParser.g:1517:40: ( p_ICCollSequence | p_ICCollSequenceUnique | p_ICCollNode )
+ var alt204=3;
+ switch ( this.input.LA(1) ) {
+ case DOLLAR:
+ alt204=1;
+ break;
+ case NODE:
+ alt204=2;
+ break;
+ case FOREACH:
+ alt204=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 204, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt204) {
+ case 1 :
+ // XQueryParser.g:1517:41: p_ICCollSequence
+ this.pushFollow(XQueryParser.FOLLOW_p_ICCollSequence_in_p_ICCollection13445);
+ p_ICCollSequence650=this.p_ICCollSequence();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICCollSequence650.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1517:60: p_ICCollSequenceUnique
+ this.pushFollow(XQueryParser.FOLLOW_p_ICCollSequenceUnique_in_p_ICCollection13449);
+ p_ICCollSequenceUnique651=this.p_ICCollSequenceUnique();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICCollSequenceUnique651.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1517:85: p_ICCollNode
+ this.pushFollow(XQueryParser.FOLLOW_p_ICCollNode_in_p_ICCollection13453);
+ p_ICCollNode652=this.p_ICCollNode();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICCollNode652.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICCollSequence_return: (function() {
+ XQueryParser.p_ICCollSequence_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICCollSequence_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1520:1: p_ICCollSequence : DOLLAR p_QName kc= CHECK p_ExprSingle ;
+ // $ANTLR start "p_ICCollSequence"
+ p_ICCollSequence: function() {
+ var retval = new XQueryParser.p_ICCollSequence_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var DOLLAR653 = null;
+ var p_QName654 = null;
+ var p_ExprSingle655 = null;
+
+ var kc_tree=null;
+ var DOLLAR653_tree=null;
+
+ try {
+ // XQueryParser.g:1521:9: ( DOLLAR p_QName kc= CHECK p_ExprSingle )
+ // XQueryParser.g:1521:11: DOLLAR p_QName kc= CHECK p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ DOLLAR653=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ICCollSequence13479); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR653_tree = this.adaptor.create(DOLLAR653);
+ this.adaptor.addChild(root_0, DOLLAR653_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICCollSequence13481);
+ p_QName654=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName654.getTree());
+ kc=this.match(this.input,CHECK,XQueryParser.FOLLOW_CHECK_in_p_ICCollSequence13485); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ICCollSequence13487);
+ p_ExprSingle655=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle655.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICCollSequenceUnique_return: (function() {
+ XQueryParser.p_ICCollSequenceUnique_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICCollSequenceUnique_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1524:1: p_ICCollSequenceUnique : k+= NODE k+= DOLLAR p_QName k+= CHECK k+= UNIQUE k+= KEY p_PathExpr ;
+ // $ANTLR start "p_ICCollSequenceUnique"
+ p_ICCollSequenceUnique: function() {
+ var retval = new XQueryParser.p_ICCollSequenceUnique_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_QName656 = null;
+ var p_PathExpr657 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1525:9: (k+= NODE k+= DOLLAR p_QName k+= CHECK k+= UNIQUE k+= KEY p_PathExpr )
+ // XQueryParser.g:1525:11: k+= NODE k+= DOLLAR p_QName k+= CHECK k+= UNIQUE k+= KEY p_PathExpr
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_ICCollSequenceUnique13514); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ICCollSequenceUnique13518); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICCollSequenceUnique13520);
+ p_QName656=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName656.getTree());
+ k=this.match(this.input,CHECK,XQueryParser.FOLLOW_CHECK_in_p_ICCollSequenceUnique13524); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,UNIQUE,XQueryParser.FOLLOW_UNIQUE_in_p_ICCollSequenceUnique13528); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,KEY,XQueryParser.FOLLOW_KEY_in_p_ICCollSequenceUnique13532); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PathExpr_in_p_ICCollSequenceUnique13534);
+ p_PathExpr657=this.p_PathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PathExpr657.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICCollNode_return: (function() {
+ XQueryParser.p_ICCollNode_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICCollNode_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1528:1: p_ICCollNode : k+= FOREACH k+= NODE DOLLAR p_QName k+= CHECK p_ExprSingle ;
+ // $ANTLR start "p_ICCollNode"
+ p_ICCollNode: function() {
+ var retval = new XQueryParser.p_ICCollNode_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR658 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName659 = null;
+ var p_ExprSingle660 = null;
+
+ var DOLLAR658_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1529:9: (k+= FOREACH k+= NODE DOLLAR p_QName k+= CHECK p_ExprSingle )
+ // XQueryParser.g:1529:11: k+= FOREACH k+= NODE DOLLAR p_QName k+= CHECK p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,FOREACH,XQueryParser.FOLLOW_FOREACH_in_p_ICCollNode13562); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_ICCollNode13566); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR658=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ICCollNode13568); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR658_tree = this.adaptor.create(DOLLAR658);
+ this.adaptor.addChild(root_0, DOLLAR658_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICCollNode13570);
+ p_QName659=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName659.getTree());
+ k=this.match(this.input,CHECK,XQueryParser.FOLLOW_CHECK_in_p_ICCollNode13574); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ICCollNode13576);
+ p_ExprSingle660=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle660.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICForeignKey_return: (function() {
+ XQueryParser.p_ICForeignKey_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICForeignKey_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1532:1: p_ICForeignKey : k+= FOREIGN k+= KEY p_ICForeignKeySource p_ICForeignKeyTarget ;
+ // $ANTLR start "p_ICForeignKey"
+ p_ICForeignKey: function() {
+ var retval = new XQueryParser.p_ICForeignKey_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_ICForeignKeySource661 = null;
+ var p_ICForeignKeyTarget662 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1533:9: (k+= FOREIGN k+= KEY p_ICForeignKeySource p_ICForeignKeyTarget )
+ // XQueryParser.g:1533:11: k+= FOREIGN k+= KEY p_ICForeignKeySource p_ICForeignKeyTarget
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,FOREIGN,XQueryParser.FOLLOW_FOREIGN_in_p_ICForeignKey13604); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,KEY,XQueryParser.FOLLOW_KEY_in_p_ICForeignKey13608); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ICForeignKeySource_in_p_ICForeignKey13610);
+ p_ICForeignKeySource661=this.p_ICForeignKeySource();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICForeignKeySource661.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_ICForeignKeyTarget_in_p_ICForeignKey13612);
+ p_ICForeignKeyTarget662=this.p_ICForeignKeyTarget();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICForeignKeyTarget662.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICForeignKeySource_return: (function() {
+ XQueryParser.p_ICForeignKeySource_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICForeignKeySource_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1536:1: p_ICForeignKeySource : kf= FROM p_ICForeignKeyValues ;
+ // $ANTLR start "p_ICForeignKeySource"
+ p_ICForeignKeySource: function() {
+ var retval = new XQueryParser.p_ICForeignKeySource_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kf = null;
+ var p_ICForeignKeyValues663 = null;
+
+ var kf_tree=null;
+
+ try {
+ // XQueryParser.g:1537:9: (kf= FROM p_ICForeignKeyValues )
+ // XQueryParser.g:1537:11: kf= FROM p_ICForeignKeyValues
+ root_0 = this.adaptor.nil();
+
+ kf=this.match(this.input,FROM,XQueryParser.FOLLOW_FROM_in_p_ICForeignKeySource13640); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kf_tree = this.adaptor.create(kf);
+ this.adaptor.addChild(root_0, kf_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ICForeignKeyValues_in_p_ICForeignKeySource13642);
+ p_ICForeignKeyValues663=this.p_ICForeignKeyValues();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICForeignKeyValues663.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICForeignKeyTarget_return: (function() {
+ XQueryParser.p_ICForeignKeyTarget_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICForeignKeyTarget_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1540:1: p_ICForeignKeyTarget : kt= TO p_ICForeignKeyValues ;
+ // $ANTLR start "p_ICForeignKeyTarget"
+ p_ICForeignKeyTarget: function() {
+ var retval = new XQueryParser.p_ICForeignKeyTarget_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kt = null;
+ var p_ICForeignKeyValues664 = null;
+
+ var kt_tree=null;
+
+ try {
+ // XQueryParser.g:1541:9: (kt= TO p_ICForeignKeyValues )
+ // XQueryParser.g:1541:11: kt= TO p_ICForeignKeyValues
+ root_0 = this.adaptor.nil();
+
+ kt=this.match(this.input,TO,XQueryParser.FOLLOW_TO_in_p_ICForeignKeyTarget13669); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kt_tree = this.adaptor.create(kt);
+ this.adaptor.addChild(root_0, kt_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ICForeignKeyValues_in_p_ICForeignKeyTarget13671);
+ p_ICForeignKeyValues664=this.p_ICForeignKeyValues();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICForeignKeyValues664.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICForeignKeyValues_return: (function() {
+ XQueryParser.p_ICForeignKeyValues_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICForeignKeyValues_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1544:1: p_ICForeignKeyValues : k+= COLLECTION p_QName k+= NODE DOLLAR p_QName k+= KEY p_PathExpr ;
+ // $ANTLR start "p_ICForeignKeyValues"
+ p_ICForeignKeyValues: function() {
+ var retval = new XQueryParser.p_ICForeignKeyValues_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR666 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName665 = null;
+ var p_QName667 = null;
+ var p_PathExpr668 = null;
+
+ var DOLLAR666_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1545:9: (k+= COLLECTION p_QName k+= NODE DOLLAR p_QName k+= KEY p_PathExpr )
+ // XQueryParser.g:1545:11: k+= COLLECTION p_QName k+= NODE DOLLAR p_QName k+= KEY p_PathExpr
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,COLLECTION,XQueryParser.FOLLOW_COLLECTION_in_p_ICForeignKeyValues13698); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICForeignKeyValues13700);
+ p_QName665=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName665.getTree());
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_ICForeignKeyValues13704); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR666=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ICForeignKeyValues13706); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR666_tree = this.adaptor.create(DOLLAR666);
+ this.adaptor.addChild(root_0, DOLLAR666_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICForeignKeyValues13708);
+ p_QName667=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName667.getTree());
+ k=this.match(this.input,KEY,XQueryParser.FOLLOW_KEY_in_p_ICForeignKeyValues13712); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PathExpr_in_p_ICForeignKeyValues13714);
+ p_PathExpr668=this.p_PathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PathExpr668.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // $ANTLR start "synpred1_XQueryParser"
+ synpred1_XQueryParser_fragment: function() {
+ // XQueryParser.g:657:11: ( SLASH p_RelativePathExpr )
+ // XQueryParser.g:657:12: SLASH p_RelativePathExpr
+ this.match(this.input,SLASH,XQueryParser.FOLLOW_SLASH_in_synpred1_XQueryParser5860); if (this.state.failed) return ;
+ this.pushFollow(XQueryParser.FOLLOW_p_RelativePathExpr_in_synpred1_XQueryParser5862);
+ this.p_RelativePathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return ;
+
+
+ },
+ // $ANTLR end "synpred1_XQueryParser",
+
+ // $ANTLR start "synpred2_XQueryParser"
+ synpred2_XQueryParser_fragment: function() {
+ // XQueryParser.g:1011:26: ( p_OccurrenceIndicator )
+ // XQueryParser.g:1011:27: p_OccurrenceIndicator
+ this.pushFollow(XQueryParser.FOLLOW_p_OccurrenceIndicator_in_synpred2_XQueryParser8510);
+ this.p_OccurrenceIndicator();
+
+ this.state._fsp--;
+ if (this.state.failed) return ;
+
+
+ },
+ // $ANTLR end "synpred2_XQueryParser",
+
+ // $ANTLR start "synpred3_XQueryParser"
+ synpred3_XQueryParser_fragment: function() {
+ // XQueryParser.g:1471:30: ( p_OccurrenceIndicator )
+ // XQueryParser.g:1471:31: p_OccurrenceIndicator
+ this.pushFollow(XQueryParser.FOLLOW_p_OccurrenceIndicator_in_synpred3_XQueryParser12993);
+ this.p_OccurrenceIndicator();
+
+ this.state._fsp--;
+ if (this.state.failed) return ;
+
+
+ },
+ // $ANTLR end "synpred3_XQueryParser"
+
+ // Delegated rules
+
+
+
+ synpred3_XQueryParser: function() {
+ this.state.backtracking++;
+ var start = this.input.mark();
+ try {
+ this.synpred3_XQueryParser_fragment(); // can never throw exception
+ } catch (re) {
+ alert("impossible: "+re.toString());
+ }
+ var success = !this.state.failed;
+ this.input.rewind(start);
+ this.state.backtracking--;
+ this.state.failed=false;
+ return success;
+ },
+ synpred1_XQueryParser: function() {
+ this.state.backtracking++;
+ var start = this.input.mark();
+ try {
+ this.synpred1_XQueryParser_fragment(); // can never throw exception
+ } catch (re) {
+ alert("impossible: "+re.toString());
+ }
+ var success = !this.state.failed;
+ this.input.rewind(start);
+ this.state.backtracking--;
+ this.state.failed=false;
+ return success;
+ },
+ synpred2_XQueryParser: function() {
+ this.state.backtracking++;
+ var start = this.input.mark();
+ try {
+ this.synpred2_XQueryParser_fragment(); // can never throw exception
+ } catch (re) {
+ alert("impossible: "+re.toString());
+ }
+ var success = !this.state.failed;
+ this.input.rewind(start);
+ this.state.backtracking--;
+ this.state.failed=false;
+ return success;
+ }
+
+}, true); // important to pass true to overwrite default implementations
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA6_eotS:
+ "\u000d\uffff",
+ DFA6_eofS:
+ "\u0001\u0002\u0001\u000c\u0001\uffff\u0001\u000c\u0009\uffff",
+ DFA6_minS:
+ "\u0001\u0010\u0001\u0012\u0001\uffff\u0001\u0012\u0009\uffff",
+ DFA6_maxS:
+ "\u0001\u0137\u0001\u00e0\u0001\uffff\u0001\u00e0\u0009\uffff",
+ DFA6_acceptS:
+ "\u0002\uffff\u0001\u0002\u0001\uffff\u0003\u0002\u0003\u0001\u0003"+
+ "\u0002",
+ DFA6_specialS:
+ "\u0001\uffff\u0001\u0000\u000b\uffff}>",
+ DFA6_transitionS: [
+ "\u0012\u0002\u0001\u0001\u0019\u0002\u0001\u0003\u0062\u0002"+
+ "\u0001\uffff\u0014\u0002\u0001\uffff\u000d\u0002\u0001\uffff"+
+ "\u0001\u0002\u000a\uffff\u0004\u0002\u0005\uffff\u0004\u0002"+
+ "\u000c\uffff\u0001\u0002\u0002\uffff\u0002\u0002\u0002\uffff"+
+ "\u0001\u0002\u0006\uffff\u0006\u0002\u003b\uffff\u0002\u0002",
+ "\u0001\u000c\u0004\uffff\u0002\u0007\u0002\uffff\u0002\u000c"+
+ "\u0003\uffff\u0001\u0007\u0001\u0009\u0001\uffff\u0001\u0007"+
+ "\u0003\uffff\u0001\u000c\u0007\uffff\u0001\u000c\u0001\uffff"+
+ "\u0001\u000c\u0004\uffff\u0001\u000a\u0001\u000c\u0001\uffff"+
+ "\u0002\u000c\u0004\uffff\u0003\u000c\u0002\uffff\u0001\u000c"+
+ "\u0002\uffff\u0002\u000c\u0001\uffff\u0001\u0009\u0001\u000c"+
+ "\u0004\uffff\u0001\u0005\u0001\u000c\u0001\uffff\u0001\u000b"+
+ "\u0001\u0007\u0011\uffff\u0002\u000c\u0001\uffff\u0001\u000c"+
+ "\u0001\u000b\u0001\uffff\u0001\u000a\u0004\uffff\u0001\u0002"+
+ "\u0025\uffff\u0001\u0008\u0001\uffff\u0001\u000a\u0001\u000b"+
+ "\u0002\uffff\u0001\u000a\u0002\uffff\u0001\u0004\u0001\uffff"+
+ "\u0001\u000a\u0003\uffff\u0002\u000b\u0001\uffff\u0001\u000b"+
+ "\u0001\uffff\u0001\u000b\u0004\uffff\u0001\u000b\u0001\u0006"+
+ "\u0002\uffff\u0003\u000b\u0001\uffff\u0001\u000b\u0002\uffff"+
+ "\u0001\u000b\u0001\uffff\u0001\u000a\u0003\uffff\u0001\u000c"+
+ "\u0004\uffff\u0001\u000c\u0001\uffff\u0001\u000c\u0001\uffff"+
+ "\u0001\u000c\u0001\uffff\u0001\u000c\u0001\uffff\u000b\u000c"+
+ "\u0002\uffff\u0001\u000c\u0003\uffff\u0002\u000c",
+ "",
+ "\u0001\u000c\u0008\uffff\u0002\u000c\u000a\uffff\u0001\u000c"+
+ "\u0007\uffff\u0001\u000c\u0001\uffff\u0001\u000c\u0005\uffff"+
+ "\u0001\u000c\u0001\uffff\u0002\u000c\u0004\uffff\u0003\u000c"+
+ "\u0002\uffff\u0001\u000c\u0002\uffff\u0002\u000c\u0001\u0009"+
+ "\u0001\uffff\u0001\u000c\u0005\uffff\u0001\u000c\u000a\uffff"+
+ "\u0001\u0009\u0009\uffff\u0002\u000c\u0001\uffff\u0001\u000c"+
+ "\u0057\uffff\u0001\u000c\u0004\uffff\u0001\u000c\u0001\uffff"+
+ "\u0001\u000c\u0001\uffff\u0001\u000c\u0001\uffff\u0001\u000c"+
+ "\u0001\uffff\u000b\u000c\u0002\uffff\u0001\u000c\u0003\uffff"+
+ "\u0002\u000c",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA6_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA6_eotS),
+ DFA6_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA6_eofS),
+ DFA6_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA6_minS),
+ DFA6_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA6_maxS),
+ DFA6_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA6_acceptS),
+ DFA6_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA6_specialS),
+ DFA6_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA6_transitionS.length;
+ for (i=0; i=BASE_URI && LA6_1<=BOUNDARY_SPACE)||LA6_1==CONSTRUCTION||LA6_1==DEFAULT||LA6_1==ORDERING) ) {s = 7;}
+
+ else if ( (LA6_1==REVALIDATION) && ((true))) {s = 8;}
+
+ else if ( (LA6_1==COPY_NAMESPACES||LA6_1==NAMESPACE) ) {s = 9;}
+
+ else if ( (LA6_1==FUNCTION||LA6_1==VARIABLE||LA6_1==UPDATING||LA6_1==CONSTANT||LA6_1==SIMPLE||LA6_1==PRIVATE) ) {s = 10;}
+
+ else if ( (LA6_1==ORDERED||LA6_1==UNORDERED||LA6_1==VALUE||(LA6_1>=APPEND_ONLY && LA6_1<=AUTOMATICALLY)||LA6_1==COLLECTION||LA6_1==CONST||LA6_1==INDEX||(LA6_1>=MANUALLY && LA6_1<=NON)||LA6_1==QUEUE||LA6_1==UNIQUE) && ((true))) {s = 11;}
+
+ else if ( (LA6_1==EOF||LA6_1==AND||(LA6_1>=CAST && LA6_1<=CASTABLE)||LA6_1==DIV||LA6_1==EQ||LA6_1==EXCEPT||LA6_1==GE||(LA6_1>=GT && LA6_1<=IDIV)||(LA6_1>=INSTANCE && LA6_1<=IS)||LA6_1==LE||(LA6_1>=LT && LA6_1<=MOD)||LA6_1==NE||LA6_1==OR||(LA6_1>=TO && LA6_1<=TREAT)||LA6_1==UNION||LA6_1==LPAREN||LA6_1==LSQUARE||LA6_1==EQUAL||LA6_1==NOTEQUAL||LA6_1==COMMA||(LA6_1>=STAR && LA6_1<=SLASH_SLASH)||LA6_1==COLON||(LA6_1>=SEMICOLON && LA6_1<=VBAR)) ) {s = 12;}
+
+
+ input.seek(index6_1);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 6, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA7_eotS:
+ "\u000c\uffff",
+ DFA7_eofS:
+ "\u0001\u0001\u0001\uffff\u0001\u0001\u0009\uffff",
+ DFA7_minS:
+ "\u0001\u0010\u0001\uffff\u0001\u0012\u0004\uffff\u0001\u0036\u0004"+
+ "\uffff",
+ DFA7_maxS:
+ "\u0001\u0137\u0001\uffff\u0001\u00e0\u0004\uffff\u0001\u00a2\u0004"+
+ "\uffff",
+ DFA7_acceptS:
+ "\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0002\u0001\u0003\u0001"+
+ "\u0004\u0001\u0007\u0001\uffff\u0001\u0001\u0001\u0003\u0001\u0005\u0001"+
+ "\u0006",
+ DFA7_specialS:
+ "\u0002\uffff\u0001\u0000\u0009\uffff}>",
+ DFA7_transitionS: [
+ "\u0012\u0001\u0001\u0002\u007c\u0001\u0001\uffff\u0014\u0001"+
+ "\u0001\uffff\u000d\u0001\u0001\uffff\u0001\u0001\u000a\uffff"+
+ "\u0004\u0001\u0005\uffff\u0004\u0001\u000c\uffff\u0001\u0001"+
+ "\u0002\uffff\u0002\u0001\u0002\uffff\u0001\u0001\u0006\uffff"+
+ "\u0006\u0001\u003b\uffff\u0002\u0001",
+ "",
+ "\u0001\u0001\u0008\uffff\u0002\u0001\u000a\uffff\u0001\u0001"+
+ "\u0007\uffff\u0001\u0001\u0001\uffff\u0001\u0001\u0004\uffff"+
+ "\u0001\u0009\u0001\u0001\u0001\uffff\u0002\u0001\u0004\uffff"+
+ "\u0003\u0001\u0002\uffff\u0001\u0001\u0002\uffff\u0002\u0001"+
+ "\u0002\uffff\u0001\u0001\u0004\uffff\u0001\u0005\u0001\u0001"+
+ "\u0001\uffff\u0001\u000a\u0012\uffff\u0002\u0001\u0001\uffff"+
+ "\u0001\u0001\u0001\u000a\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0003\u0027\uffff\u0001\u0009\u0001\u000b\u0002\uffff"+
+ "\u0001\u0008\u0002\uffff\u0001\u0004\u0001\uffff\u0001\u0009"+
+ "\u0003\uffff\u0001\u000a\u0001\u000b\u0001\uffff\u0001\u000a"+
+ "\u0001\uffff\u0001\u000a\u0004\uffff\u0001\u000b\u0001\u0006"+
+ "\u0002\uffff\u0001\u000b\u0001\u000a\u0001\u000b\u0001\uffff"+
+ "\u0001\u000a\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u0007"+
+ "\u0003\uffff\u0001\u0001\u0004\uffff\u0001\u0001\u0001\uffff"+
+ "\u0001\u0001\u0001\uffff\u0001\u0001\u0001\uffff\u0001\u0001"+
+ "\u0001\uffff\u000b\u0001\u0002\uffff\u0001\u0001\u0003\uffff"+
+ "\u0002\u0001",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u0009\u0035\uffff\u0001\u0008\u002c\uffff\u0001\u0009"+
+ "\u0003\uffff\u0001\u0008\u0004\uffff\u0001\u0009",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA7_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA7_eotS),
+ DFA7_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA7_eofS),
+ DFA7_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA7_minS),
+ DFA7_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA7_maxS),
+ DFA7_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA7_acceptS),
+ DFA7_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA7_specialS),
+ DFA7_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA7_transitionS.length;
+ for (i=0; i p_CollectionDecl | {...}? => p_IndexDecl | {...}? => p_ICDecl )*";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA7_2 = input.LA(1);
+
+
+ var index7_2 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA7_2==CONTEXT) ) {s = 3;}
+
+ else if ( (LA7_2==SEQUENTIAL) && ((true))) {s = 4;}
+
+ else if ( (LA7_2==OPTION) ) {s = 5;}
+
+ else if ( (LA7_2==INTEGRITY) && ((true))) {s = 6;}
+
+ else if ( (LA7_2==EOF||LA7_2==AND||(LA7_2>=CAST && LA7_2<=CASTABLE)||LA7_2==DIV||LA7_2==EQ||LA7_2==EXCEPT||LA7_2==GE||(LA7_2>=GT && LA7_2<=IDIV)||(LA7_2>=INSTANCE && LA7_2<=IS)||LA7_2==LE||(LA7_2>=LT && LA7_2<=MOD)||LA7_2==NE||LA7_2==OR||(LA7_2>=TO && LA7_2<=TREAT)||LA7_2==UNION||LA7_2==LPAREN||LA7_2==LSQUARE||LA7_2==EQUAL||LA7_2==NOTEQUAL||LA7_2==COMMA||(LA7_2>=STAR && LA7_2<=SLASH_SLASH)||LA7_2==COLON||(LA7_2>=SEMICOLON && LA7_2<=VBAR)) ) {s = 1;}
+
+ else if ( (LA7_2==PRIVATE) ) {s = 7;}
+
+ else if ( (LA7_2==VARIABLE||LA7_2==CONSTANT) ) {s = 8;}
+
+ else if ( (LA7_2==FUNCTION||LA7_2==UPDATING||LA7_2==SIMPLE) ) {s = 9;}
+
+ else if ( (LA7_2==ORDERED||LA7_2==UNORDERED||LA7_2==APPEND_ONLY||LA7_2==COLLECTION||LA7_2==CONST||LA7_2==MUTABLE||LA7_2==QUEUE) && ((true))) {s = 10;}
+
+ else if ( (LA7_2==VALUE||LA7_2==AUTOMATICALLY||LA7_2==INDEX||LA7_2==MANUALLY||LA7_2==NON||LA7_2==UNIQUE) && ((true))) {s = 11;}
+
+
+ input.seek(index7_2);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 7, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA8_eotS:
+ "\u000b\uffff",
+ DFA8_eofS:
+ "\u000b\uffff",
+ DFA8_minS:
+ "\u0001\u0022\u0001\u0017\u0001\uffff\u0001\u001e\u0007\uffff",
+ DFA8_maxS:
+ "\u0001\u0022\u0001\u0097\u0001\uffff\u0001\u0052\u0007\uffff",
+ DFA8_acceptS:
+ "\u0002\uffff\u0001\u0001\u0001\uffff\u0001\u0003\u0001\u0004\u0001"+
+ "\u0005\u0001\u0007\u0001\u0008\u0001\u0002\u0001\u0006",
+ DFA8_specialS:
+ "\u0001\uffff\u0001\u0000\u0009\uffff}>",
+ DFA8_transitionS: [
+ "\u0001\u0001",
+ "\u0001\u0004\u0001\u0002\u0007\uffff\u0001\u0005\u0001\u0008"+
+ "\u0001\uffff\u0001\u0003\u0030\uffff\u0001\u0006\u0042\uffff"+
+ "\u0001\u0007",
+ "",
+ "\u0001\u0009\u0033\uffff\u0001\u000a",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA8_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA8_eotS),
+ DFA8_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA8_eofS),
+ DFA8_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA8_minS),
+ DFA8_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA8_maxS),
+ DFA8_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA8_acceptS),
+ DFA8_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA8_specialS),
+ DFA8_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA8_transitionS.length;
+ for (i=0; i pm_RevalidationDecl | pm_CopyNamespacesDecl );";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA8_1 = input.LA(1);
+
+
+ var index8_1 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA8_1==BOUNDARY_SPACE) ) {s = 2;}
+
+ else if ( (LA8_1==DEFAULT) ) {s = 3;}
+
+ else if ( (LA8_1==BASE_URI) ) {s = 4;}
+
+ else if ( (LA8_1==CONSTRUCTION) ) {s = 5;}
+
+ else if ( (LA8_1==ORDERING) ) {s = 6;}
+
+ else if ( (LA8_1==REVALIDATION) && ((true))) {s = 7;}
+
+ else if ( (LA8_1==COPY_NAMESPACES) ) {s = 8;}
+
+
+ input.seek(index8_1);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 8, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA49_eotS:
+ "\u0022\uffff",
+ DFA49_eofS:
+ "\u0001\uffff\u0001\u0013\u0001\uffff\u0010\u0013\u000f\uffff",
+ DFA49_minS:
+ "\u0001\u0010\u0001\u0012\u0001\uffff\u0010\u0012\u000f\uffff",
+ DFA49_maxS:
+ "\u0001\u0137\u0001\u0136\u0001\uffff\u0010\u0136\u000f\uffff",
+ DFA49_acceptS:
+ "\u0002\uffff\u0001\u0001\u0010\uffff\u0001\u0010\u0001\u0002\u0001"+
+ "\u0003\u0001\u0004\u0001\u0005\u0001\u0006\u0001\u0007\u0001\u0008\u0001"+
+ "\u0009\u0001\u000a\u0001\u000b\u0001\u000c\u0001\u000d\u0001\u000e\u0001"+
+ "\u000f",
+ DFA49_specialS:
+ "\u0008\uffff\u0001\u0000\u0001\u0003\u0001\u000a\u0001\u0001\u0001"+
+ "\u0007\u0001\u0009\u0001\u0002\u0001\u0005\u0001\u0004\u0001\u0006\u0001"+
+ "\u0008\u000f\uffff}>",
+ DFA49_transitionS: [
+ "\u0020\u0013\u0001\u0004\u0004\u0013\u0001\u0001\u0005\u0013"+
+ "\u0001\u0006\u0024\u0013\u0001\u0003\u0007\u0013\u0001\u0005"+
+ "\u001d\u0013\u0001\u0007\u0006\u0013\u0001\u000e\u0001\u000b"+
+ "\u0001\u0013\u0001\u000a\u0004\u0013\u0001\u000c\u0001\u000d"+
+ "\u0005\u0013\u0001\u000f\u0001\u0013\u0001\u0011\u0001\uffff"+
+ "\u0001\u0013\u0001\u0010\u0001\u0013\u0001\u0012\u0001\u0009"+
+ "\u0001\u0008\u000e\u0013\u0001\uffff\u000d\u0013\u0001\uffff"+
+ "\u0001\u0013\u000a\uffff\u0004\u0013\u0005\uffff\u0004\u0013"+
+ "\u000c\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0002\uffff"+
+ "\u0001\u0013\u0006\uffff\u0006\u0013\u003b\uffff\u0001\u0002"+
+ "\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0005\uffff\u0001\u0002\u0001\u0013"+
+ "\u0001\uffff\u0001\u0002\u0003\uffff\u0002\u0013\u0004\uffff"+
+ "\u0001\u0013\u0001\uffff\u0001\u0013\u0007\uffff\u0001\u0013"+
+ "\u0025\uffff\u0002\u0013\u0001\u0002\u0001\uffff\u0004\u0013"+
+ "\u0001\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u000b\u0013\u0002\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0055\uffff\u0001\u0013",
+ "",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\u0014"+
+ "\u0001\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\u0014"+
+ "\u0001\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0001\u0015\u0001\u0013"+
+ "\u0002\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0001\u0016\u0001\u0013"+
+ "\u0002\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0017\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\u0018"+
+ "\u0001\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0018\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0002\uffff"+
+ "\u0001\u0019\u0002\uffff\u0002\u0013\u0007\uffff\u0002\u0013"+
+ "\u0005\uffff\u0001\u0013\u0004\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0013\u0004\uffff\u0001\u0013\u0003\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0006\uffff\u0001\u0013\u0006\uffff"+
+ "\u0001\u0013\u0005\uffff\u0002\u0013\u0004\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0001\u0019\u0006\uffff\u0001\u0013"+
+ "\u0025\uffff\u0002\u0013\u0002\uffff\u0004\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff\u000b\u0013"+
+ "\u0002\uffff\u0001\u0013\u0003\uffff\u0002\u0013\u0055\uffff"+
+ "\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0002\uffff"+
+ "\u0001\u001a\u0002\uffff\u0002\u0013\u0007\uffff\u0002\u0013"+
+ "\u0005\uffff\u0001\u0013\u0004\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0013\u0004\uffff\u0001\u0013\u0003\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0006\uffff\u0001\u0013\u0006\uffff"+
+ "\u0001\u0013\u0005\uffff\u0002\u0013\u0004\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0001\u001a\u0006\uffff\u0001\u0013"+
+ "\u0025\uffff\u0002\u0013\u0002\uffff\u0004\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff\u000b\u0013"+
+ "\u0002\uffff\u0001\u0013\u0003\uffff\u0002\u0013\u0055\uffff"+
+ "\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0002\uffff"+
+ "\u0001\u001b\u0002\uffff\u0002\u0013\u0007\uffff\u0002\u0013"+
+ "\u0005\uffff\u0001\u0013\u0004\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0013\u0004\uffff\u0001\u0013\u0003\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0006\uffff\u0001\u0013\u0006\uffff"+
+ "\u0001\u0013\u0005\uffff\u0002\u0013\u0004\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0007\uffff\u0001\u0013\u0025\uffff"+
+ "\u0002\u0013\u0002\uffff\u0004\u0013\u0001\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff"+
+ "\u0001\u0013\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0002\uffff"+
+ "\u0001\u001c\u0002\uffff\u0002\u0013\u0007\uffff\u0002\u0013"+
+ "\u0005\uffff\u0001\u0013\u0004\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0013\u0004\uffff\u0001\u0013\u0003\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0006\uffff\u0001\u0013\u0006\uffff"+
+ "\u0001\u0013\u0005\uffff\u0002\u0013\u0004\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0006\uffff\u0001\u001c\u0001\u0013"+
+ "\u0025\uffff\u0002\u0013\u0002\uffff\u0004\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff\u000b\u0013"+
+ "\u0002\uffff\u0001\u0013\u0003\uffff\u0002\u0013\u0055\uffff"+
+ "\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\u001d"+
+ "\u0001\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u001e\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\u001f"+
+ "\u0001\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0003\uffff\u0001\u0020\u0021\uffff"+
+ "\u0002\u0013\u0002\uffff\u0004\u0013\u0001\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff"+
+ "\u0001\u0013\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0001\u0021\u0001\u0013"+
+ "\u0002\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA49_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA49_eotS),
+ DFA49_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA49_eofS),
+ DFA49_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA49_minS),
+ DFA49_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA49_maxS),
+ DFA49_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA49_acceptS),
+ DFA49_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA49_specialS),
+ DFA49_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA49_transitionS.length;
+ for (i=0; i p_EvalExpr | {...}? => p_InsertExpr | {...}? => p_DeleteExpr | {...}? => p_RenameExpr | {...}? => p_ReplaceExpr | {...}? => p_TransformExpr | {...}? => p_BlockExpr | {...}? => p_AssignmentExpr | {...}? => p_ExitExpr | {...}? => p_WhileExpr | p_OrExpr );";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA49_8 = input.LA(1);
+
+
+ var index49_8 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_8==DOLLAR) && ((true))) {s = 24;}
+
+ else if ( (LA49_8==EOF||(LA49_8>=AND && LA49_8<=ASCENDING)||(LA49_8>=CASE && LA49_8<=CASTABLE)||LA49_8==COLLATION||LA49_8==DEFAULT||(LA49_8>=DESCENDING && LA49_8<=DIV)||(LA49_8>=ELSE && LA49_8<=EMPTY)||LA49_8==EQ||LA49_8==EXCEPT||LA49_8==FOR||LA49_8==GE||(LA49_8>=GT && LA49_8<=IDIV)||(LA49_8>=INSTANCE && LA49_8<=IS)||LA49_8==LE||(LA49_8>=LT && LA49_8<=MOD)||LA49_8==NE||(LA49_8>=OR && LA49_8<=ORDER)||(LA49_8>=RETURN && LA49_8<=SATISFIES)||LA49_8==STABLE||(LA49_8>=TO && LA49_8<=TREAT)||LA49_8==UNION||LA49_8==WHERE||LA49_8==COUNT||(LA49_8>=END && LA49_8<=GROUP)||LA49_8==ONLY||LA49_8==START||(LA49_8>=AFTER && LA49_8<=BEFORE)||LA49_8==INTO||LA49_8==MODIFY||LA49_8==WITH||(LA49_8>=LPAREN && LA49_8<=RPAREN)||(LA49_8>=RBRACKET && LA49_8<=EQUAL)||LA49_8==NOTEQUAL||LA49_8==COMMA||(LA49_8>=STAR && LA49_8<=SLASH_SLASH)||LA49_8==COLON||(LA49_8>=SEMICOLON && LA49_8<=VBAR)||LA49_8==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_8);
+ if ( s>=0 ) return s;
+ break;
+ case 1 :
+ var LA49_11 = input.LA(1);
+
+
+ var index49_11 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_11==NODE||LA49_11==NODES) && ((true))) {s = 26;}
+
+ else if ( (LA49_11==EOF||(LA49_11>=AND && LA49_11<=ASCENDING)||(LA49_11>=CASE && LA49_11<=CASTABLE)||LA49_11==COLLATION||LA49_11==DEFAULT||(LA49_11>=DESCENDING && LA49_11<=DIV)||(LA49_11>=ELSE && LA49_11<=EMPTY)||LA49_11==EQ||LA49_11==EXCEPT||LA49_11==FOR||LA49_11==GE||(LA49_11>=GT && LA49_11<=IDIV)||(LA49_11>=INSTANCE && LA49_11<=IS)||LA49_11==LE||(LA49_11>=LT && LA49_11<=MOD)||LA49_11==NE||(LA49_11>=OR && LA49_11<=ORDER)||(LA49_11>=RETURN && LA49_11<=SATISFIES)||LA49_11==STABLE||(LA49_11>=TO && LA49_11<=TREAT)||LA49_11==UNION||LA49_11==WHERE||LA49_11==COUNT||(LA49_11>=END && LA49_11<=GROUP)||LA49_11==ONLY||LA49_11==START||(LA49_11>=AFTER && LA49_11<=BEFORE)||LA49_11==INTO||LA49_11==MODIFY||LA49_11==WITH||(LA49_11>=LPAREN && LA49_11<=RPAREN)||(LA49_11>=RBRACKET && LA49_11<=EQUAL)||LA49_11==NOTEQUAL||LA49_11==COMMA||(LA49_11>=STAR && LA49_11<=SLASH_SLASH)||LA49_11==COLON||(LA49_11>=SEMICOLON && LA49_11<=VBAR)||LA49_11==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_11);
+ if ( s>=0 ) return s;
+ break;
+ case 2 :
+ var LA49_14 = input.LA(1);
+
+
+ var index49_14 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_14==DOLLAR) && ((true))) {s = 29;}
+
+ else if ( (LA49_14==EOF||(LA49_14>=AND && LA49_14<=ASCENDING)||(LA49_14>=CASE && LA49_14<=CASTABLE)||LA49_14==COLLATION||LA49_14==DEFAULT||(LA49_14>=DESCENDING && LA49_14<=DIV)||(LA49_14>=ELSE && LA49_14<=EMPTY)||LA49_14==EQ||LA49_14==EXCEPT||LA49_14==FOR||LA49_14==GE||(LA49_14>=GT && LA49_14<=IDIV)||(LA49_14>=INSTANCE && LA49_14<=IS)||LA49_14==LE||(LA49_14>=LT && LA49_14<=MOD)||LA49_14==NE||(LA49_14>=OR && LA49_14<=ORDER)||(LA49_14>=RETURN && LA49_14<=SATISFIES)||LA49_14==STABLE||(LA49_14>=TO && LA49_14<=TREAT)||LA49_14==UNION||LA49_14==WHERE||LA49_14==COUNT||(LA49_14>=END && LA49_14<=GROUP)||LA49_14==ONLY||LA49_14==START||(LA49_14>=AFTER && LA49_14<=BEFORE)||LA49_14==INTO||LA49_14==MODIFY||LA49_14==WITH||(LA49_14>=LPAREN && LA49_14<=RPAREN)||(LA49_14>=RBRACKET && LA49_14<=EQUAL)||LA49_14==NOTEQUAL||LA49_14==COMMA||(LA49_14>=STAR && LA49_14<=SLASH_SLASH)||LA49_14==COLON||(LA49_14>=SEMICOLON && LA49_14<=VBAR)||LA49_14==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_14);
+ if ( s>=0 ) return s;
+ break;
+ case 3 :
+ var LA49_9 = input.LA(1);
+
+
+ var index49_9 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_9==LBRACKET) && ((true))) {s = 24;}
+
+ else if ( (LA49_9==EOF||(LA49_9>=AND && LA49_9<=ASCENDING)||(LA49_9>=CASE && LA49_9<=CASTABLE)||LA49_9==COLLATION||LA49_9==DEFAULT||(LA49_9>=DESCENDING && LA49_9<=DIV)||(LA49_9>=ELSE && LA49_9<=EMPTY)||LA49_9==EQ||LA49_9==EXCEPT||LA49_9==FOR||LA49_9==GE||(LA49_9>=GT && LA49_9<=IDIV)||(LA49_9>=INSTANCE && LA49_9<=IS)||LA49_9==LE||(LA49_9>=LT && LA49_9<=MOD)||LA49_9==NE||(LA49_9>=OR && LA49_9<=ORDER)||(LA49_9>=RETURN && LA49_9<=SATISFIES)||LA49_9==STABLE||(LA49_9>=TO && LA49_9<=TREAT)||LA49_9==UNION||LA49_9==WHERE||LA49_9==COUNT||(LA49_9>=END && LA49_9<=GROUP)||LA49_9==ONLY||LA49_9==START||(LA49_9>=AFTER && LA49_9<=BEFORE)||LA49_9==INTO||LA49_9==MODIFY||LA49_9==WITH||(LA49_9>=LPAREN && LA49_9<=RPAREN)||(LA49_9>=RBRACKET && LA49_9<=EQUAL)||LA49_9==NOTEQUAL||LA49_9==COMMA||(LA49_9>=STAR && LA49_9<=SLASH_SLASH)||LA49_9==COLON||(LA49_9>=SEMICOLON && LA49_9<=VBAR)||LA49_9==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_9);
+ if ( s>=0 ) return s;
+ break;
+ case 4 :
+ var LA49_16 = input.LA(1);
+
+
+ var index49_16 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_16==DOLLAR) && ((true))) {s = 31;}
+
+ else if ( (LA49_16==EOF||(LA49_16>=AND && LA49_16<=ASCENDING)||(LA49_16>=CASE && LA49_16<=CASTABLE)||LA49_16==COLLATION||LA49_16==DEFAULT||(LA49_16>=DESCENDING && LA49_16<=DIV)||(LA49_16>=ELSE && LA49_16<=EMPTY)||LA49_16==EQ||LA49_16==EXCEPT||LA49_16==FOR||LA49_16==GE||(LA49_16>=GT && LA49_16<=IDIV)||(LA49_16>=INSTANCE && LA49_16<=IS)||LA49_16==LE||(LA49_16>=LT && LA49_16<=MOD)||LA49_16==NE||(LA49_16>=OR && LA49_16<=ORDER)||(LA49_16>=RETURN && LA49_16<=SATISFIES)||LA49_16==STABLE||(LA49_16>=TO && LA49_16<=TREAT)||LA49_16==UNION||LA49_16==WHERE||LA49_16==COUNT||(LA49_16>=END && LA49_16<=GROUP)||LA49_16==ONLY||LA49_16==START||(LA49_16>=AFTER && LA49_16<=BEFORE)||LA49_16==INTO||LA49_16==MODIFY||LA49_16==WITH||(LA49_16>=LPAREN && LA49_16<=RPAREN)||(LA49_16>=RBRACKET && LA49_16<=EQUAL)||LA49_16==NOTEQUAL||LA49_16==COMMA||(LA49_16>=STAR && LA49_16<=SLASH_SLASH)||LA49_16==COLON||(LA49_16>=SEMICOLON && LA49_16<=VBAR)||LA49_16==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_16);
+ if ( s>=0 ) return s;
+ break;
+ case 5 :
+ var LA49_15 = input.LA(1);
+
+
+ var index49_15 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_15==LBRACKET) && ((true))) {s = 30;}
+
+ else if ( (LA49_15==EOF||(LA49_15>=AND && LA49_15<=ASCENDING)||(LA49_15>=CASE && LA49_15<=CASTABLE)||LA49_15==COLLATION||LA49_15==DEFAULT||(LA49_15>=DESCENDING && LA49_15<=DIV)||(LA49_15>=ELSE && LA49_15<=EMPTY)||LA49_15==EQ||LA49_15==EXCEPT||LA49_15==FOR||LA49_15==GE||(LA49_15>=GT && LA49_15<=IDIV)||(LA49_15>=INSTANCE && LA49_15<=IS)||LA49_15==LE||(LA49_15>=LT && LA49_15<=MOD)||LA49_15==NE||(LA49_15>=OR && LA49_15<=ORDER)||(LA49_15>=RETURN && LA49_15<=SATISFIES)||LA49_15==STABLE||(LA49_15>=TO && LA49_15<=TREAT)||LA49_15==UNION||LA49_15==WHERE||LA49_15==COUNT||(LA49_15>=END && LA49_15<=GROUP)||LA49_15==ONLY||LA49_15==START||(LA49_15>=AFTER && LA49_15<=BEFORE)||LA49_15==INTO||LA49_15==MODIFY||LA49_15==WITH||(LA49_15>=LPAREN && LA49_15<=RPAREN)||(LA49_15>=RBRACKET && LA49_15<=EQUAL)||LA49_15==NOTEQUAL||LA49_15==COMMA||(LA49_15>=STAR && LA49_15<=SLASH_SLASH)||LA49_15==COLON||(LA49_15>=SEMICOLON && LA49_15<=VBAR)||LA49_15==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_15);
+ if ( s>=0 ) return s;
+ break;
+ case 6 :
+ var LA49_17 = input.LA(1);
+
+
+ var index49_17 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_17==RETURNING) && ((true))) {s = 32;}
+
+ else if ( (LA49_17==EOF||(LA49_17>=AND && LA49_17<=ASCENDING)||(LA49_17>=CASE && LA49_17<=CASTABLE)||LA49_17==COLLATION||LA49_17==DEFAULT||(LA49_17>=DESCENDING && LA49_17<=DIV)||(LA49_17>=ELSE && LA49_17<=EMPTY)||LA49_17==EQ||LA49_17==EXCEPT||LA49_17==FOR||LA49_17==GE||(LA49_17>=GT && LA49_17<=IDIV)||(LA49_17>=INSTANCE && LA49_17<=IS)||LA49_17==LE||(LA49_17>=LT && LA49_17<=MOD)||LA49_17==NE||(LA49_17>=OR && LA49_17<=ORDER)||(LA49_17>=RETURN && LA49_17<=SATISFIES)||LA49_17==STABLE||(LA49_17>=TO && LA49_17<=TREAT)||LA49_17==UNION||LA49_17==WHERE||LA49_17==COUNT||(LA49_17>=END && LA49_17<=GROUP)||LA49_17==ONLY||LA49_17==START||(LA49_17>=AFTER && LA49_17<=BEFORE)||LA49_17==INTO||LA49_17==MODIFY||LA49_17==WITH||(LA49_17>=LPAREN && LA49_17<=RPAREN)||(LA49_17>=RBRACKET && LA49_17<=EQUAL)||LA49_17==NOTEQUAL||LA49_17==COMMA||(LA49_17>=STAR && LA49_17<=SLASH_SLASH)||LA49_17==COLON||(LA49_17>=SEMICOLON && LA49_17<=VBAR)||LA49_17==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_17);
+ if ( s>=0 ) return s;
+ break;
+ case 7 :
+ var LA49_12 = input.LA(1);
+
+
+ var index49_12 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_12==NODE) && ((true))) {s = 27;}
+
+ else if ( (LA49_12==EOF||(LA49_12>=AND && LA49_12<=ASCENDING)||(LA49_12>=CASE && LA49_12<=CASTABLE)||LA49_12==COLLATION||LA49_12==DEFAULT||(LA49_12>=DESCENDING && LA49_12<=DIV)||(LA49_12>=ELSE && LA49_12<=EMPTY)||LA49_12==EQ||LA49_12==EXCEPT||LA49_12==FOR||LA49_12==GE||(LA49_12>=GT && LA49_12<=IDIV)||(LA49_12>=INSTANCE && LA49_12<=IS)||LA49_12==LE||(LA49_12>=LT && LA49_12<=MOD)||LA49_12==NE||(LA49_12>=OR && LA49_12<=ORDER)||(LA49_12>=RETURN && LA49_12<=SATISFIES)||LA49_12==STABLE||(LA49_12>=TO && LA49_12<=TREAT)||LA49_12==UNION||LA49_12==WHERE||LA49_12==COUNT||(LA49_12>=END && LA49_12<=GROUP)||LA49_12==ONLY||LA49_12==START||(LA49_12>=AFTER && LA49_12<=BEFORE)||LA49_12==INTO||LA49_12==MODIFY||LA49_12==WITH||(LA49_12>=LPAREN && LA49_12<=RPAREN)||(LA49_12>=RBRACKET && LA49_12<=EQUAL)||LA49_12==NOTEQUAL||LA49_12==COMMA||(LA49_12>=STAR && LA49_12<=SLASH_SLASH)||LA49_12==COLON||(LA49_12>=SEMICOLON && LA49_12<=VBAR)||LA49_12==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_12);
+ if ( s>=0 ) return s;
+ break;
+ case 8 :
+ var LA49_18 = input.LA(1);
+
+
+ var index49_18 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_18==LPAREN) && ((true))) {s = 33;}
+
+ else if ( (LA49_18==EOF||(LA49_18>=AND && LA49_18<=ASCENDING)||(LA49_18>=CASE && LA49_18<=CASTABLE)||LA49_18==COLLATION||LA49_18==DEFAULT||(LA49_18>=DESCENDING && LA49_18<=DIV)||(LA49_18>=ELSE && LA49_18<=EMPTY)||LA49_18==EQ||LA49_18==EXCEPT||LA49_18==FOR||LA49_18==GE||(LA49_18>=GT && LA49_18<=IDIV)||(LA49_18>=INSTANCE && LA49_18<=IS)||LA49_18==LE||(LA49_18>=LT && LA49_18<=MOD)||LA49_18==NE||(LA49_18>=OR && LA49_18<=ORDER)||(LA49_18>=RETURN && LA49_18<=SATISFIES)||LA49_18==STABLE||(LA49_18>=TO && LA49_18<=TREAT)||LA49_18==UNION||LA49_18==WHERE||LA49_18==COUNT||(LA49_18>=END && LA49_18<=GROUP)||LA49_18==ONLY||LA49_18==START||(LA49_18>=AFTER && LA49_18<=BEFORE)||LA49_18==INTO||LA49_18==MODIFY||LA49_18==WITH||LA49_18==RPAREN||(LA49_18>=RBRACKET && LA49_18<=EQUAL)||LA49_18==NOTEQUAL||LA49_18==COMMA||(LA49_18>=STAR && LA49_18<=SLASH_SLASH)||LA49_18==COLON||(LA49_18>=SEMICOLON && LA49_18<=VBAR)||LA49_18==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_18);
+ if ( s>=0 ) return s;
+ break;
+ case 9 :
+ var LA49_13 = input.LA(1);
+
+
+ var index49_13 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_13==NODE||LA49_13==VALUE) && ((true))) {s = 28;}
+
+ else if ( (LA49_13==EOF||(LA49_13>=AND && LA49_13<=ASCENDING)||(LA49_13>=CASE && LA49_13<=CASTABLE)||LA49_13==COLLATION||LA49_13==DEFAULT||(LA49_13>=DESCENDING && LA49_13<=DIV)||(LA49_13>=ELSE && LA49_13<=EMPTY)||LA49_13==EQ||LA49_13==EXCEPT||LA49_13==FOR||LA49_13==GE||(LA49_13>=GT && LA49_13<=IDIV)||(LA49_13>=INSTANCE && LA49_13<=IS)||LA49_13==LE||(LA49_13>=LT && LA49_13<=MOD)||LA49_13==NE||(LA49_13>=OR && LA49_13<=ORDER)||(LA49_13>=RETURN && LA49_13<=SATISFIES)||LA49_13==STABLE||(LA49_13>=TO && LA49_13<=TREAT)||LA49_13==UNION||LA49_13==WHERE||LA49_13==COUNT||(LA49_13>=END && LA49_13<=GROUP)||LA49_13==ONLY||LA49_13==START||(LA49_13>=AFTER && LA49_13<=BEFORE)||LA49_13==INTO||LA49_13==MODIFY||LA49_13==WITH||(LA49_13>=LPAREN && LA49_13<=RPAREN)||(LA49_13>=RBRACKET && LA49_13<=EQUAL)||LA49_13==NOTEQUAL||LA49_13==COMMA||(LA49_13>=STAR && LA49_13<=SLASH_SLASH)||LA49_13==COLON||(LA49_13>=SEMICOLON && LA49_13<=VBAR)||LA49_13==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_13);
+ if ( s>=0 ) return s;
+ break;
+ case 10 :
+ var LA49_10 = input.LA(1);
+
+
+ var index49_10 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_10==NODE||LA49_10==NODES) && ((true))) {s = 25;}
+
+ else if ( (LA49_10==EOF||(LA49_10>=AND && LA49_10<=ASCENDING)||(LA49_10>=CASE && LA49_10<=CASTABLE)||LA49_10==COLLATION||LA49_10==DEFAULT||(LA49_10>=DESCENDING && LA49_10<=DIV)||(LA49_10>=ELSE && LA49_10<=EMPTY)||LA49_10==EQ||LA49_10==EXCEPT||LA49_10==FOR||LA49_10==GE||(LA49_10>=GT && LA49_10<=IDIV)||(LA49_10>=INSTANCE && LA49_10<=IS)||LA49_10==LE||(LA49_10>=LT && LA49_10<=MOD)||LA49_10==NE||(LA49_10>=OR && LA49_10<=ORDER)||(LA49_10>=RETURN && LA49_10<=SATISFIES)||LA49_10==STABLE||(LA49_10>=TO && LA49_10<=TREAT)||LA49_10==UNION||LA49_10==WHERE||LA49_10==COUNT||(LA49_10>=END && LA49_10<=GROUP)||LA49_10==ONLY||LA49_10==START||(LA49_10>=AFTER && LA49_10<=BEFORE)||LA49_10==INTO||LA49_10==MODIFY||LA49_10==WITH||(LA49_10>=LPAREN && LA49_10<=RPAREN)||(LA49_10>=RBRACKET && LA49_10<=EQUAL)||LA49_10==NOTEQUAL||LA49_10==COMMA||(LA49_10>=STAR && LA49_10<=SLASH_SLASH)||LA49_10==COLON||(LA49_10>=SEMICOLON && LA49_10<=VBAR)||LA49_10==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_10);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 49, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA103_eotS:
+ "\u002d\uffff",
+ DFA103_eofS:
+ "\u002d\uffff",
+ DFA103_minS:
+ "\u0001\u0010\u002c\uffff",
+ DFA103_maxS:
+ "\u0001\u0137\u002c\uffff",
+ DFA103_acceptS:
+ "\u0001\uffff\u0001\u0001\u0001\u0002\u0029\uffff\u0001\u0003",
+ DFA103_specialS:
+ "\u002d\uffff}>",
+ DFA103_transitionS: [
+ "\u005b\u0002\u0001\u0001\u0033\u0002\u0001\uffff\u0014\u0002"+
+ "\u0001\uffff\u000d\u0002\u0001\uffff\u0001\u0002\u000a\uffff"+
+ "\u0001\u0002\u0002\uffff\u0001\u0002\u0005\uffff\u0004\u0002"+
+ "\u000c\uffff\u0001\u0002\u0002\uffff\u0002\u0002\u0002\uffff"+
+ "\u0001\u0002\u0006\uffff\u0001\u002c\u0005\u0002\u003c\uffff"+
+ "\u0001\u0002",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA103_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA103_eotS),
+ DFA103_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA103_eofS),
+ DFA103_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA103_minS),
+ DFA103_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA103_maxS),
+ DFA103_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA103_acceptS),
+ DFA103_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA103_specialS),
+ DFA103_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA103_transitionS.length;
+ for (i=0; i",
+ DFA110_transitionS: [
+ "\u008f\u0003\u0001\uffff\u0014\u0003\u0001\uffff\u000d\u0003"+
+ "\u0001\uffff\u0001\u0003\u000a\uffff\u0001\u0003\u0002\uffff"+
+ "\u0001\u0003\u0005\uffff\u0001\u0001\u0001\u0002\u0002\u0003"+
+ "\u000c\uffff\u0001\u0003\u0002\uffff\u0002\u0003\u0002\uffff"+
+ "\u0001\u0003\u0007\uffff\u0005\u0003\u003c\uffff\u0001\u0003",
+ "\u0001\uffff",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA110_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA110_eotS),
+ DFA110_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA110_eofS),
+ DFA110_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA110_minS),
+ DFA110_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA110_maxS),
+ DFA110_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA110_acceptS),
+ DFA110_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA110_specialS),
+ DFA110_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA110_transitionS.length;
+ for (i=0; i ( SLASH p_RelativePathExpr ) | SLASH | SLASH_SLASH p_RelativePathExpr | p_RelativePathExpr );";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA110_1 = input.LA(1);
+
+
+ var index110_1 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (this.synpred1_XQueryParser()) ) {s = 43;}
+
+ else if ( (true) ) {s = 44;}
+
+
+ input.seek(index110_1);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 110, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA112_eotS:
+ "\u00d1\uffff",
+ DFA112_eofS:
+ "\u0001\uffff\u0005\u0006\u0001\uffff\u000c\u0006\u0001\uffff\u0005"+
+ "\u0006\u00b7\uffff\u0001\u0006",
+ DFA112_minS:
+ "\u0001\u0010\u0005\u0012\u0001\uffff\u0002\u0012\u0001\u0010\u0004"+
+ "\u0012\u0002\u0010\u0003\u0012\u0001\uffff\u0002\u0012\u0001\u0010\u0002"+
+ "\u0012\u0001\u0010\u0003\u0013\u0001\u004f\u0010\u0010\u0001\u0084\u0001"+
+ "\u0010\u0002\u0019\u0001\u0052\u0001\u00c3\u0001\u0010\u0001\u0015\u0001"+
+ "\u0076\u0001\u0015\u0002\u001e\u0001\u0038\u0001\u00c4\u0001\u0010\u0001"+
+ "\u005a\u0009\u0010\u0003\u0013\u0001\u004f\u0010\u0010\u0001\u0084\u0001"+
+ "\u0010\u0002\u0019\u0001\u0052\u0001\u00c3\u0001\u0010\u0001\u0015\u0001"+
+ "\u0076\u0001\u0015\u0002\u001e\u0001\u0038\u0001\u00c4\u0001\u0010\u0001"+
+ "\u005a\u0009\u0010\u0003\u0013\u0001\u004f\u0010\u0010\u0001\u0084\u0001"+
+ "\u0010\u0002\u0019\u0001\u0052\u0001\u00c3\u0001\u0010\u0001\u0015\u0001"+
+ "\u0076\u0001\u0015\u0002\u001e\u0001\u0038\u0001\u00c4\u0001\u0010\u0001"+
+ "\u005a\u0009\u0010\u0003\u0013\u0001\u004f\u0010\u0010\u0001\u0084\u0001"+
+ "\u0010\u0002\u0019\u0001\u0052\u0001\u00c3\u0001\u0010\u0001\u0015\u0001"+
+ "\u0076\u0001\u0015\u0002\u001e\u0001\u0038\u0001\u00c4\u0001\u0010\u0001"+
+ "\u005a\u0009\u0010\u0002\uffff\u0001\u0012",
+ DFA112_maxS:
+ "\u0001\u0137\u0005\u0136\u0001\uffff\u0002\u0136\u0001\u0137\u0004"+
+ "\u0136\u0002\u0137\u0003\u0136\u0001\uffff\u0002\u0136\u0001\u0137\u0002"+
+ "\u0136\u0001\u0137\u0004\u00db\u0010\u0137\u0001\u00db\u0001\u0137\u0004"+
+ "\u00db\u0001\u0137\u0003\u00db\u0002\u0136\u0001\u00db\u0001\u00eb\u0001"+
+ "\u0137\u0001\u00db\u0009\u0137\u0004\u00db\u0010\u0137\u0001\u00db\u0001"+
+ "\u0137\u0004\u00db\u0001\u0137\u0003\u00db\u0002\u0136\u0001\u00db\u0001"+
+ "\u00eb\u0001\u0137\u0001\u00db\u0009\u0137\u0004\u00c4\u0010\u0137\u0001"+
+ "\u00c4\u0001\u0137\u0004\u00c4\u0001\u0137\u0003\u00c4\u0002\u0136\u0001"+
+ "\u00c4\u0001\u00eb\u0001\u0137\u0001\u00c4\u0009\u0137\u0004\u00c4\u0010"+
+ "\u0137\u0001\u00c4\u0001\u0137\u0004\u00c4\u0001\u0137\u0003\u00c4\u0002"+
+ "\u0136\u0001\u00c4\u0001\u00eb\u0001\u0137\u0001\u00c4\u0009\u0137\u0002"+
+ "\uffff\u0001\u0136",
+ DFA112_acceptS:
+ "\u0006\uffff\u0001\u0001\u000c\uffff\u0001\u0002\u00ba\uffff\u0002"+
+ "\u0002\u0001\uffff",
+ DFA112_specialS:
+ "\u0017\uffff\u0001\u0000\u00b9\uffff}>",
+ DFA112_transitionS: [
+ "\u0001\u0002\u0001\u0005\u0004\u0018\u0001\u0009\u0006\u0018"+
+ "\u0001\u0007\u0001\u0018\u0001\u0010\u0004\u0018\u0001\u0008"+
+ "\u0001\u000b\u0002\u0018\u0001\u0015\u0001\u0006\u0001\u000e"+
+ "\u0002\u0018\u0001\u0006\u0005\u0018\u0001\u000d\u0001\u000c"+
+ "\u0006\u0018\u0001\u0006\u0006\u0018\u0001\u0006\u0007\u0018"+
+ "\u0001\u0016\u0003\u0018\u0001\u0006\u0004\u0018\u0001\u0012"+
+ "\u0001\u0018\u0001\u0001\u0001\u0004\u0001\u0003\u0001\u0018"+
+ "\u0001\u000f\u0003\u0018\u0002\u0006\u0001\u000a\u0004\u0018"+
+ "\u0001\u0011\u0003\u0018\u0001\u0006\u0001\u0018\u0001\u0014"+
+ "\u0010\u0018\u0001\u0006\u0023\u0018\u0001\uffff\u0003\u0018"+
+ "\u0001\u0006\u0010\u0018\u0001\uffff\u0007\u0018\u0001\u0017"+
+ "\u0004\u0018\u0001\u0013\u0001\uffff\u0001\u0013\u000a\uffff"+
+ "\u0001\u0006\u0002\uffff\u0001\u0013\u0007\uffff\u0001\u0013"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0002\uffff\u0002\u0013"+
+ "\u0002\uffff\u0001\u0018\u0007\uffff\u0005\u0013\u003c\uffff"+
+ "\u0001\u0018",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0002\u0013\u0001\u002c\u0001\u0041\u0001\u0038\u0004\u0013"+
+ "\u0001\u0046\u0001\u003e\u0001\u001a\u0001\u001b\u0001\u0013"+
+ "\u0001\u003b\u0004\u0013\u0001\u003d\u0002\u0013\u0001\u0039"+
+ "\u0001\u0021\u0003\u0013\u0001\u003f\u0001\u003a\u0002\u0013"+
+ "\u0001\u0025\u0001\u0013\u0001\u001f\u0003\u0013\u0001\u002e"+
+ "\u0001\u0013\u0001\u002a\u0001\u0013\u0001\u0029\u0001\u0022"+
+ "\u0004\u0013\u0001\u001d\u0001\u001e\u0001\u002b\u0002\u0013"+
+ "\u0001\u0028\u0002\u0013\u0001\u0027\u0001\u0023\u0002\u0013"+
+ "\u0001\u0026\u0005\u0013\u0001\u002d\u0001\u0031\u0007\u0013"+
+ "\u0001\u0034\u0001\u003c\u0005\u0013\u0001\u0032\u0004\u0013"+
+ "\u0001\u0024\u0001\u001c\u0001\u0013\u0001\u0020\u0004\u0013"+
+ "\u0001\u002f\u0003\u0013\u0001\u0033\u0003\u0013\u0001\u0037"+
+ "\u0001\u0030\u0006\u0013\u0001\u0036\u0006\u0013\u0001\u0035"+
+ "\u0005\u0013\u0001\u0043\u0001\u0044\u0004\u0013\u0001\u0042"+
+ "\u0001\u0013\u0001\u0045\u0007\u0013\u0001\u0040\u0003\u0013"+
+ "\u0001\uffff\u0014\u0013\u0001\uffff\u000c\u0013\u0002\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0002\u0006\u000d\uffff\u0001\u0013"+
+ "\u0047\uffff\u0001\u0006\u0001\u0013",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0002\u0013\u0001\u0059\u0001\u006e\u0001\u0065\u0004\u0013"+
+ "\u0001\u0073\u0001\u006b\u0001\u0047\u0001\u0048\u0001\u0013"+
+ "\u0001\u0068\u0004\u0013\u0001\u006a\u0002\u0013\u0001\u0066"+
+ "\u0001\u004e\u0003\u0013\u0001\u006c\u0001\u0067\u0002\u0013"+
+ "\u0001\u0052\u0001\u0013\u0001\u004c\u0003\u0013\u0001\u005b"+
+ "\u0001\u0013\u0001\u0057\u0001\u0013\u0001\u0056\u0001\u004f"+
+ "\u0004\u0013\u0001\u004a\u0001\u004b\u0001\u0058\u0002\u0013"+
+ "\u0001\u0055\u0002\u0013\u0001\u0054\u0001\u0050\u0002\u0013"+
+ "\u0001\u0053\u0005\u0013\u0001\u005a\u0001\u005e\u0007\u0013"+
+ "\u0001\u0061\u0001\u0069\u0005\u0013\u0001\u005f\u0004\u0013"+
+ "\u0001\u0051\u0001\u0049\u0001\u0013\u0001\u004d\u0004\u0013"+
+ "\u0001\u005c\u0003\u0013\u0001\u0060\u0003\u0013\u0001\u0064"+
+ "\u0001\u005d\u0006\u0013\u0001\u0063\u0006\u0013\u0001\u0062"+
+ "\u0005\u0013\u0001\u0070\u0001\u0071\u0004\u0013\u0001\u006f"+
+ "\u0001\u0013\u0001\u0072\u0007\u0013\u0001\u006d\u0003\u0013"+
+ "\u0001\uffff\u0014\u0013\u0001\uffff\u000c\u0013\u0002\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0006\u0003\uffff\u0002\u0006\u000d\uffff\u0001\u0013"+
+ "\u0047\uffff\u0001\u0006\u0001\u0013",
+ "\u0002\u0013\u0001\u0086\u0001\u009b\u0001\u0092\u0004\u0013"+
+ "\u0001\u00a0\u0001\u0098\u0001\u0074\u0001\u0075\u0001\u0013"+
+ "\u0001\u0095\u0004\u0013\u0001\u0097\u0002\u0013\u0001\u0093"+
+ "\u0001\u007b\u0003\u0013\u0001\u0099\u0001\u0094\u0002\u0013"+
+ "\u0001\u007f\u0001\u0013\u0001\u0079\u0003\u0013\u0001\u0088"+
+ "\u0001\u0013\u0001\u0084\u0001\u0013\u0001\u0083\u0001\u007c"+
+ "\u0004\u0013\u0001\u0077\u0001\u0078\u0001\u0085\u0002\u0013"+
+ "\u0001\u0082\u0002\u0013\u0001\u0081\u0001\u007d\u0002\u0013"+
+ "\u0001\u0080\u0005\u0013\u0001\u0087\u0001\u008b\u0007\u0013"+
+ "\u0001\u008e\u0001\u0096\u0005\u0013\u0001\u008c\u0004\u0013"+
+ "\u0001\u007e\u0001\u0076\u0001\u0013\u0001\u007a\u0004\u0013"+
+ "\u0001\u0089\u0003\u0013\u0001\u008d\u0003\u0013\u0001\u0091"+
+ "\u0001\u008a\u0006\u0013\u0001\u0090\u0006\u0013\u0001\u008f"+
+ "\u0005\u0013\u0001\u009d\u0001\u009e\u0004\u0013\u0001\u009c"+
+ "\u0001\u0013\u0001\u009f\u0007\u0013\u0001\u009a\u0003\u0013"+
+ "\u0001\uffff\u0014\u0013\u0001\uffff\u000c\u0013\u0002\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0006\u0003\uffff\u0002\u0006\u000d\uffff\u0001\u0013"+
+ "\u0047\uffff\u0001\u0006\u0001\u0013",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0002\u0006\u0001\uffff"+
+ "\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0006"+
+ "\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0002\u0006\u0001\uffff"+
+ "\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0006"+
+ "\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0019\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0019\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0019\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0002\u0013\u0001\u00b3\u0001\u00c8\u0001\u00bf\u0004\u0013"+
+ "\u0001\u00cd\u0001\u00c5\u0001\u00a1\u0001\u00a2\u0001\u0013"+
+ "\u0001\u00c2\u0004\u0013\u0001\u00c4\u0002\u0013\u0001\u00c0"+
+ "\u0001\u00a8\u0003\u0013\u0001\u00c6\u0001\u00c1\u0002\u0013"+
+ "\u0001\u00ac\u0001\u0013\u0001\u00a6\u0003\u0013\u0001\u00b5"+
+ "\u0001\u0013\u0001\u00b1\u0001\u0013\u0001\u00b0\u0001\u00a9"+
+ "\u0004\u0013\u0001\u00a4\u0001\u00a5\u0001\u00b2\u0002\u0013"+
+ "\u0001\u00af\u0002\u0013\u0001\u00ae\u0001\u00aa\u0002\u0013"+
+ "\u0001\u00ad\u0005\u0013\u0001\u00b4\u0001\u00b8\u0007\u0013"+
+ "\u0001\u00bb\u0001\u00c3\u0005\u0013\u0001\u00b9\u0004\u0013"+
+ "\u0001\u00ab\u0001\u00a3\u0001\u0013\u0001\u00a7\u0004\u0013"+
+ "\u0001\u00b6\u0003\u0013\u0001\u00ba\u0003\u0013\u0001\u00be"+
+ "\u0001\u00b7\u0006\u0013\u0001\u00bd\u0006\u0013\u0001\u00bc"+
+ "\u0005\u0013\u0001\u00ca\u0001\u00cb\u0004\u0013\u0001\u00c9"+
+ "\u0001\u0013\u0001\u00cc\u0007\u0013\u0001\u00c7\u0003\u0013"+
+ "\u0001\uffff\u0014\u0013\u0001\uffff\u000d\u0013\u0001\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0019\u0003\uffff\u0002\u0006\u000d\uffff\u0001\u0013"+
+ "\u0047\uffff\u0001\u0006\u0001\u0013",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u00cf\u0001\u0006"+
+ "\u0001\uffff\u0001\u00ce\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0019\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u00cf\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u008f\u00d0\u0001\uffff\u0014\u00d0\u0001\uffff\u000c\u00d0"+
+ "\u000d\uffff\u0001\u0006\u001f\uffff\u0001\u00d0\u0048\uffff"+
+ "\u0001\u00d0",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0074\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u0002\uffff\u0001\u0006\u003b\uffff\u0001\u0006"+
+ "\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0071\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u004d\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u000e\uffff\u0001\u00cf\u005a\uffff\u0001\u0006",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u000e\uffff\u0001\u00cf\u005a\uffff\u0001\u0006",
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u007e\uffff\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u00cf\u0016\uffff\u0001\u00cf\u000e\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0068\uffff\u0001\u0006\u0001\u00cf\u0016\uffff"+
+ "\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000c\u0006"+
+ "\u0002\uffff\u0001\u0006\u0001\u00cf\u0016\uffff\u0001\u00cf"+
+ "\u0012\uffff\u0001\u0006\u0048\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0001\u0006"+
+ "\u0002\uffff\u0001\u0006\u0005\uffff\u0004\u0006\u0001\u00cf"+
+ "\u000b\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0002\uffff"+
+ "\u0001\u0006\u0007\uffff\u0005\u0006\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0074\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u0002\uffff\u0001\u0006\u003b\uffff\u0001\u0006"+
+ "\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0071\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u004d\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u000e\uffff\u0001\u00cf\u005a\uffff\u0001\u0006",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u000e\uffff\u0001\u00cf\u005a\uffff\u0001\u0006",
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u007e\uffff\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u00cf\u0016\uffff\u0001\u00cf\u000e\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0068\uffff\u0001\u0006\u0001\u00cf\u0016\uffff"+
+ "\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000c\u0006"+
+ "\u0002\uffff\u0001\u0006\u0001\u00cf\u0016\uffff\u0001\u00cf"+
+ "\u0012\uffff\u0001\u0006\u0048\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0001\u0006"+
+ "\u0002\uffff\u0001\u0006\u0005\uffff\u0004\u0006\u0001\u00cf"+
+ "\u000b\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0002\uffff"+
+ "\u0001\u0006\u0007\uffff\u0005\u0006\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u0074\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u0002\uffff\u0001\u0006\u003b\uffff\u0001\u0006"+
+ "\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf",
+ "\u0001\u0006\u0071\uffff\u0001\u00cf",
+ "\u0001\u0006\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf",
+ "\u0001\u0006\u004d\uffff\u0001\u00cf",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u0069\uffff\u0001\u0006",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u0069\uffff\u0001\u0006",
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u007e\uffff\u0001\u00cf",
+ "\u0001\u00cf\u0025\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0068\uffff\u0001\u0006\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000c\u0006"+
+ "\u0002\uffff\u0001\u0006\u0001\u00cf\u0029\uffff\u0001\u0006"+
+ "\u0048\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0001\u0006"+
+ "\u0002\uffff\u0001\u0006\u0005\uffff\u0004\u0006\u000c\uffff"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006"+
+ "\u0007\uffff\u0005\u0006\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u0074\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u0002\uffff\u0001\u0006\u003b\uffff\u0001\u0006"+
+ "\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf",
+ "\u0001\u0006\u0071\uffff\u0001\u00cf",
+ "\u0001\u0006\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf",
+ "\u0001\u0006\u004d\uffff\u0001\u00cf",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u0069\uffff\u0001\u0006",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u0069\uffff\u0001\u0006",
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u007e\uffff\u0001\u00cf",
+ "\u0001\u00cf\u0025\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0068\uffff\u0001\u0006\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000c\u0006"+
+ "\u0002\uffff\u0001\u0006\u0001\u00cf\u0029\uffff\u0001\u0006"+
+ "\u0048\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0001\u0006"+
+ "\u0002\uffff\u0001\u0006\u0005\uffff\u0004\u0006\u000c\uffff"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006"+
+ "\u0007\uffff\u0005\u0006\u003c\uffff\u0001\u0006",
+ "",
+ "",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u00cf\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0006\uffff\u0002\u0006"+
+ "\u0055\uffff\u0001\u0006"
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA112_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA112_eotS),
+ DFA112_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA112_eofS),
+ DFA112_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA112_minS),
+ DFA112_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA112_maxS),
+ DFA112_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA112_acceptS),
+ DFA112_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA112_specialS),
+ DFA112_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA112_transitionS.length;
+ for (i=0; i=AND && LA112_23<=ASCENDING)||(LA112_23>=BY && LA112_23<=CASTABLE)||LA112_23==COLLATION||LA112_23==DEFAULT||(LA112_23>=DESCENDING && LA112_23<=DIV)||(LA112_23>=ELSE && LA112_23<=EMPTY)||LA112_23==EQ||LA112_23==EXCEPT||LA112_23==FOR||LA112_23==GE||(LA112_23>=GT && LA112_23<=IDIV)||(LA112_23>=INSTANCE && LA112_23<=IS)||LA112_23==LE||(LA112_23>=LT && LA112_23<=MOD)||LA112_23==NE||(LA112_23>=OR && LA112_23<=ORDER)||(LA112_23>=RETURN && LA112_23<=SATISFIES)||LA112_23==STABLE||(LA112_23>=TO && LA112_23<=TREAT)||LA112_23==UNION||LA112_23==WHERE||LA112_23==COUNT||(LA112_23>=END && LA112_23<=GROUP)||LA112_23==ONLY||LA112_23==START||(LA112_23>=AFTER && LA112_23<=BEFORE)||LA112_23==INTO||LA112_23==MODIFY||LA112_23==WITH||LA112_23==RPAREN||(LA112_23>=RBRACKET && LA112_23<=EQUAL)||LA112_23==NOTEQUAL||LA112_23==COMMA||(LA112_23>=STAR && LA112_23<=SLASH_SLASH)||(LA112_23>=SEMICOLON && LA112_23<=VBAR)||LA112_23==LETDOLLAR) ) {s = 6;}
+
+ else if ( (LA112_23==LPAREN) ) {s = 207;}
+
+
+ input.seek(index112_23);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 112, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA114_eotS:
+ "\u000a\uffff",
+ DFA114_eofS:
+ "\u0001\uffff\u0007\u0008\u0002\uffff",
+ DFA114_minS:
+ "\u0001\u0010\u0007\u0012\u0002\uffff",
+ DFA114_maxS:
+ "\u0001\u0137\u0007\u0136\u0002\uffff",
+ DFA114_acceptS:
+ "\u0008\uffff\u0001\u0002\u0001\u0001",
+ DFA114_specialS:
+ "\u000a\uffff}>",
+ DFA114_transitionS: [
+ "\u0006\u0008\u0001\u0003\u0006\u0008\u0001\u0001\u0006\u0008"+
+ "\u0001\u0002\u0001\u0005\u000d\u0008\u0001\u0007\u0001\u0006"+
+ "\u002a\u0008\u0001\u0004\u003f\u0008\u0001\uffff\u0014\u0008"+
+ "\u0001\uffff\u000c\u0008\u000d\uffff\u0001\u0008\u0018\uffff"+
+ "\u0001\u0008\u0006\uffff\u0001\u0008\u0048\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0025\uffff\u0002\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA114_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA114_eotS),
+ DFA114_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA114_eofS),
+ DFA114_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA114_minS),
+ DFA114_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA114_maxS),
+ DFA114_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA114_acceptS),
+ DFA114_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA114_specialS),
+ DFA114_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA114_transitionS.length;
+ for (i=0; i",
+ DFA119_transitionS: [
+ "\u0006\u000b\u0001\u0003\u0008\u000b\u0001\u0008\u0009\u000b"+
+ "\u0001\u0001\u0001\u0002\u0023\u000b\u0001\u000a\u000a\u000b"+
+ "\u0001\u0007\u0003\u000b\u0001\u0005\u0001\u0004\u0005\u000b"+
+ "\u0001\u0009\u0016\u000b\u0001\u0006\u0023\u000b\u0001\uffff"+
+ "\u0014\u000b\u0001\uffff\u000c\u000b\u000d\uffff\u0001\u000b"+
+ "\u001f\uffff\u0001\u000b\u0048\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA119_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA119_eotS),
+ DFA119_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA119_eofS),
+ DFA119_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA119_minS),
+ DFA119_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA119_maxS),
+ DFA119_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA119_acceptS),
+ DFA119_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA119_specialS),
+ DFA119_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA119_transitionS.length;
+ for (i=0; i",
+ DFA124_transitionS: [
+ "\u0006\u000b\u0001\u0008\u0008\u000b\u0001\u0008\u0008\u000b"+
+ "\u0001\u0007\u0001\uffff\u0001\u0008\u0002\u000b\u0001\uffff"+
+ "\u000d\u000b\u0001\uffff\u0006\u000b\u0001\uffff\u0007\u000b"+
+ "\u0001\u0009\u0003\u000b\u0001\uffff\u0004\u000b\u0001\u0005"+
+ "\u0005\u000b\u0001\u0008\u0003\u000b\u0002\uffff\u0005\u000b"+
+ "\u0001\u0008\u0003\u000b\u0001\uffff\u0001\u000b\u0001\u0006"+
+ "\u0010\u000b\u0001\uffff\u0023\u000b\u0001\uffff\u0003\u000b"+
+ "\u0001\uffff\u0010\u000b\u0001\uffff\u0007\u000b\u0001\u000a"+
+ "\u0004\u000b\u0001\u0003\u0001\uffff\u0001\u0002\u000d\uffff"+
+ "\u0001\u0008\u0007\uffff\u0001\u0004\u0010\uffff\u0002\u0001"+
+ "\u0002\uffff\u0001\u000b\u0007\uffff\u0002\u0008\u0003\u0001"+
+ "\u003c\uffff\u0001\u000b",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u000b\u0002\uffff\u0001\u000c\u0016\uffff\u0001\u000b",
+ "\u0001\u000b\u0002\uffff\u0001\u000d\u0016\uffff\u0001\u000b",
+ "\u0001\u000b\u0002\uffff\u0001\u0008\u0016\uffff\u0001\u000b",
+ "",
+ "\u008f\u0008\u0001\uffff\u0014\u0008\u0001\uffff\u000c\u0008"+
+ "\u0001\u000b\u0002\uffff\u0001\u0008\u0016\uffff\u0001\u000b"+
+ "\u0012\uffff\u0001\u0008\u0048\uffff\u0001\u0008",
+ "\u0001\u000b\u0002\uffff\u0001\u000e\u0016\uffff\u0001\u000b",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA124_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA124_eotS),
+ DFA124_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA124_eofS),
+ DFA124_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA124_minS),
+ DFA124_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA124_maxS),
+ DFA124_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA124_acceptS),
+ DFA124_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA124_specialS),
+ DFA124_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA124_transitionS.length;
+ for (i=0; i=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 124, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA154_eotS:
+ "\u003e\uffff",
+ DFA154_eofS:
+ "\u0001\u0002\u003d\uffff",
+ DFA154_minS:
+ "\u0001\u0012\u0001\u0000\u0005\uffff\u0001\u0000\u0036\uffff",
+ DFA154_maxS:
+ "\u0001\u0136\u0001\u0000\u0005\uffff\u0001\u0000\u0036\uffff",
+ DFA154_acceptS:
+ "\u0002\uffff\u0001\u0002\u0008\uffff\u0001\u0001\u0032\uffff",
+ DFA154_specialS:
+ "\u0001\u0000\u0001\u0001\u0005\uffff\u0001\u0002\u0036\uffff}>",
+ DFA154_transitionS: [
+ "\u0004\u0002\u0004\uffff\u0001\u0002\u0003\uffff\u0001\u0002"+
+ "\u0004\uffff\u0001\u0002\u0002\uffff\u0002\u0002\u0003\uffff"+
+ "\u0002\u0002\u0002\uffff\u0001\u0002\u0001\uffff\u0002\u0002"+
+ "\u0002\uffff\u0001\u0002\u0001\uffff\u0001\u0002\u0001\uffff"+
+ "\u0002\u0002\u0002\uffff\u0001\u0002\u0001\uffff\u0003\u0002"+
+ "\u0002\uffff\u0001\u0002\u0002\uffff\u0002\u0002\u0002\uffff"+
+ "\u0001\u0002\u0005\uffff\u0002\u0002\u0007\uffff\u0002\u0002"+
+ "\u0005\uffff\u0001\u0002\u0004\uffff\u0001\u0002\u0002\uffff"+
+ "\u0001\u0002\u0004\uffff\u0001\u0002\u0003\uffff\u0001\u0002"+
+ "\u0003\uffff\u0002\u0002\u0006\uffff\u0001\u0002\u0006\uffff"+
+ "\u0001\u0002\u0005\uffff\u0002\u0002\u0004\uffff\u0001\u0002"+
+ "\u0001\uffff\u0001\u0002\u0007\uffff\u0001\u0002\u0026\uffff"+
+ "\u0001\u0002\u0001\uffff\u0002\u0002\u0001\uffff\u0004\u0002"+
+ "\u0001\uffff\u0001\u0002\u0001\u000b\u0001\u0001\u0001\u0007"+
+ "\u0007\u0002\u0008\uffff\u0002\u0002\u0055\uffff\u0001\u0002",
+ "\u0001\uffff",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\uffff",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA154_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA154_eotS),
+ DFA154_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA154_eofS),
+ DFA154_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA154_minS),
+ DFA154_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA154_maxS),
+ DFA154_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA154_acceptS),
+ DFA154_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA154_specialS),
+ DFA154_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA154_transitionS.length;
+ for (i=0; ioi= p_OccurrenceIndicator )?";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA154_0 = input.LA(1);
+
+
+ var index154_0 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA154_0==STAR) ) {s = 1;}
+
+ else if ( (LA154_0==EOF||(LA154_0>=AND && LA154_0<=AT)||LA154_0==CASE||LA154_0==COLLATION||LA154_0==DEFAULT||(LA154_0>=DESCENDING && LA154_0<=DIV)||(LA154_0>=ELSE && LA154_0<=EMPTY)||LA154_0==EQ||(LA154_0>=EXCEPT && LA154_0<=EXTERNAL)||LA154_0==FOR||LA154_0==GE||(LA154_0>=GT && LA154_0<=IDIV)||LA154_0==IN||(LA154_0>=INSTANCE && LA154_0<=IS)||LA154_0==LE||(LA154_0>=LT && LA154_0<=MOD)||LA154_0==NE||(LA154_0>=OR && LA154_0<=ORDER)||(LA154_0>=RETURN && LA154_0<=SATISFIES)||LA154_0==STABLE||LA154_0==TO||LA154_0==UNION||LA154_0==WHERE||LA154_0==COUNT||(LA154_0>=END && LA154_0<=GROUP)||LA154_0==ONLY||LA154_0==START||(LA154_0>=AFTER && LA154_0<=BEFORE)||LA154_0==INTO||LA154_0==MODIFY||LA154_0==WITH||LA154_0==RPAREN||(LA154_0>=LBRACKET && LA154_0<=RBRACKET)||(LA154_0>=RSQUARE && LA154_0<=NOTEQUAL)||LA154_0==COMMA||(LA154_0>=MINUS && LA154_0<=GREATER_GREATER)||(LA154_0>=SEMICOLON && LA154_0<=VBAR)||LA154_0==LETDOLLAR) ) {s = 2;}
+
+ else if ( (LA154_0==PLUS) ) {s = 7;}
+
+ else if ( (LA154_0==QUESTION) && (this.synpred2_XQueryParser())) {s = 11;}
+
+
+ input.seek(index154_0);
+ if ( s>=0 ) return s;
+ break;
+ case 1 :
+ var LA154_1 = input.LA(1);
+
+
+ var index154_1 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (this.synpred2_XQueryParser()) ) {s = 11;}
+
+ else if ( (true) ) {s = 2;}
+
+
+ input.seek(index154_1);
+ if ( s>=0 ) return s;
+ break;
+ case 2 :
+ var LA154_7 = input.LA(1);
+
+
+ var index154_7 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (this.synpred2_XQueryParser()) ) {s = 11;}
+
+ else if ( (true) ) {s = 2;}
+
+
+ input.seek(index154_7);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 154, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA156_eotS:
+ "\u0011\uffff",
+ DFA156_eofS:
+ "\u0001\uffff\u000c\u000d\u0004\uffff",
+ DFA156_minS:
+ "\u0001\u0010\u000c\u0012\u0004\uffff",
+ DFA156_maxS:
+ "\u0001\u0137\u000c\u0136\u0004\uffff",
+ DFA156_acceptS:
+ "\u000d\uffff\u0001\u0004\u0001\u0001\u0001\u0002\u0001\u0003",
+ DFA156_specialS:
+ "\u000b\uffff\u0001\u0000\u0005\uffff}>",
+ DFA156_transitionS: [
+ "\u0006\u000d\u0001\u0003\u0008\u000d\u0001\u0008\u0009\u000d"+
+ "\u0001\u0001\u0001\u0002\u0017\u000d\u0001\u000c\u000b\u000d"+
+ "\u0001\u000a\u000a\u000d\u0001\u0007\u0003\u000d\u0001\u0005"+
+ "\u0001\u0004\u0005\u000d\u0001\u0009\u0016\u000d\u0001\u0006"+
+ "\u0023\u000d\u0001\uffff\u0014\u000d\u0001\uffff\u0007\u000d"+
+ "\u0001\u000b\u0004\u000d\u002d\uffff\u0001\u000d\u0048\uffff"+
+ "\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000f\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u0010\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA156_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA156_eotS),
+ DFA156_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA156_eofS),
+ DFA156_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA156_minS),
+ DFA156_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA156_maxS),
+ DFA156_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA156_acceptS),
+ DFA156_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA156_specialS),
+ DFA156_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA156_transitionS.length;
+ for (i=0; i ^( KindTest p_KindTest ) | {...}? => ( BINARY LPAREN RPAREN ) -> ^( BinaryTest BINARY LPAREN RPAREN ) | ( ITEM LPAREN RPAREN ) -> ^( ItemTest ITEM LPAREN RPAREN ) | p_AtomicType );";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA156_11 = input.LA(1);
+
+
+ var index156_11 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA156_11==LPAREN) && ((false))) {s = 15;}
+
+ else if ( (LA156_11==EOF||(LA156_11>=AND && LA156_11<=AT)||LA156_11==CASE||LA156_11==COLLATION||LA156_11==DEFAULT||(LA156_11>=DESCENDING && LA156_11<=DIV)||(LA156_11>=ELSE && LA156_11<=EMPTY)||LA156_11==EQ||(LA156_11>=EXCEPT && LA156_11<=EXTERNAL)||LA156_11==FOR||LA156_11==GE||(LA156_11>=GT && LA156_11<=IDIV)||LA156_11==IN||(LA156_11>=INSTANCE && LA156_11<=IS)||LA156_11==LE||(LA156_11>=LT && LA156_11<=MOD)||LA156_11==NE||(LA156_11>=OR && LA156_11<=ORDER)||(LA156_11>=RETURN && LA156_11<=SATISFIES)||LA156_11==STABLE||LA156_11==TO||LA156_11==UNION||LA156_11==WHERE||LA156_11==COUNT||(LA156_11>=END && LA156_11<=GROUP)||LA156_11==ONLY||LA156_11==START||(LA156_11>=AFTER && LA156_11<=BEFORE)||LA156_11==INTO||LA156_11==MODIFY||LA156_11==WITH||LA156_11==RPAREN||(LA156_11>=LBRACKET && LA156_11<=RBRACKET)||(LA156_11>=RSQUARE && LA156_11<=NOTEQUAL)||(LA156_11>=COMMA && LA156_11<=GREATER_GREATER)||LA156_11==COLON||(LA156_11>=SEMICOLON && LA156_11<=VBAR)||LA156_11==LETDOLLAR) ) {s = 13;}
+
+
+ input.seek(index156_11);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 156, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+
+
+// public class variables
+org.antlr.lang.augmentObject(XQueryParser, {
+ tokenNames: ["", "", "", "", "L_QuotAttrContentChar", "L_AposAttrContentChar", "L_ElementContentChar", "L_CDataSection", "L_PredefinedEntityRef", "L_CharRef", "ESCAPE_LBRACKET", "ESCAPE_RBRACKET", "ESCAPE_APOS", "ESCAPE_QUOT", "CDATA_START", "CDATA_END", "ANCESTOR", "ANCESTOR_OR_SELF", "AND", "AS", "ASCENDING", "AT", "ATTRIBUTE", "BASE_URI", "BOUNDARY_SPACE", "BY", "CASE", "CAST", "CASTABLE", "CHILD", "COLLATION", "COMMENT", "CONSTRUCTION", "COPY_NAMESPACES", "DECLARE", "DEFAULT", "DESCENDANT", "DESCENDANT_OR_SELF", "DESCENDING", "DIV", "DOCUMENT", "DOCUMENT_NODE", "ELEMENT", "ELSE", "EMPTY", "EMPTY_SEQUENCE", "ENCODING", "EQ", "EVERY", "EXCEPT", "EXTERNAL", "FOLLOWING", "FOLLOWING_SIBLING", "FOR", "FUNCTION", "GE", "GREATEST", "GT", "IDIV", "IF", "IMPORT", "IN", "INHERIT", "INSTANCE", "INTERSECT", "IS", "ITEM", "LAX", "LE", "LEAST", "LET", "LT", "MOD", "MODULE", "NAMESPACE", "NE", "NO_INHERIT", "NO_PRESERVE", "NODE", "OF", "OPTION", "OR", "ORDER", "ORDERED", "ORDERING", "PARENT", "PRECEDING", "PRECEDING_SIBLING", "PRESERVE", "PROCESSING_INSTRUCTION", "RETURN", "SATISFIES", "SCHEMA", "SCHEMA_ATTRIBUTE", "SCHEMA_ELEMENT", "SELF", "SOME", "STABLE", "STRICT", "STRIP", "TEXT", "THEN", "TO", "TREAT", "TYPESWITCH", "UNION", "UNORDERED", "VALIDATE", "VARIABLE", "VERSION", "WHERE", "XQUERY", "CATCH", "CONTEXT", "COUNT", "DECIMAL_FORMAT", "DECIMAL_SEPARATOR", "DIGIT", "END", "GROUP", "GROUPING_SEPARATOR", "INFINITY", "MINUS_SIGN", "NAMESPACE_NODE", "NAN", "NEXT", "ONLY", "OUTER", "PATTERN_SEPARATOR", "PERCENT", "PER_MILLE", "PREVIOUS", "SLIDING", "START", "TRY", "TUMBLING", "WHEN", "WINDOW", "ZERO_DIGIT", "AFTER", "BEFORE", "COPY", "DELETE", "FIRST", "INSERT", "INTO", "LAST", "MODIFY", "NODES", "RENAME", "REPLACE", "REVALIDATION", "SKIP", "UPDATING", "VALUE", "WITH", "BLOCK", "CONSTANT", "EXIT", "RETURNING", "SEQUENTIAL", "SET", "SIMPLE", "WHILE", "EVAL", "USING", "APPEND_ONLY", "AUTOMATICALLY", "CHECK", "COLLECTION", "CONSTRAINT", "CONST", "EQUALITY", "FOREACH", "FOREIGN", "FROM", "INDEX", "INTEGRITY", "KEY", "MAINTAINED", "MANUALLY", "MUTABLE", "NON", "ON", "QUEUE", "RANGE", "READ_ONLY", "UNIQUE", "BINARY", "PRIVATE", "AMP_ER", "APOS_ER", "QUOT_ER", "LPAREN", "RPAREN", "DOLLAR", "LBRACKET", "RBRACKET", "LSQUARE", "RSQUARE", "EQUAL", "BIND", "NOTEQUAL", "AMP", "COMMA", "QUESTION", "STAR", "PLUS", "MINUS", "SMALLER", "GREATER", "SMALLEREQ", "GREATEREQ", "SMALLER_SMALLER", "GREATER_GREATER", "SLASH", "SLASH_SLASH", "DOT", "DOT_DOT", "COLON", "COLON_COLON", "EMPTY_CLOSE_TAG", "CLOSE_TAG", "SEMICOLON", "VBAR", "PRAGMA_START", "PRAGMA_END", "XML_COMMENT_START", "XML_COMMENT_END", "PI_START", "PI_END", "ATTR_SIGN", "CHARREF_DEC", "CHARREF_HEX", "APOS", "QUOT", "NCNameStartChar", "NCNameChar", "L_NCName", "Letter", "HexLetter", "Digit", "Digits", "S", "SU", "L_Pragma", "L_DirCommentConstructor", "L_DirPIConstructor", "L_IntegerLiteral", "L_DecimalLiteral", "L_DoubleLiteral", "L_Comment", "L_AnyChar", "L_QuotStringLiteralChar", "L_AposStringLiteralChar", "LibraryModule", "MainModule", "VersionDecl", "VersionDeclEncoding", "VersionDeclVersion", "ModuleDecl", "Prolog", "DefaultNamespaceDecls", "DefaultNamespaceDecl", "Setters", "Setter", "NamespaceDecls", "NamespaceDecl", "Imports", "SchemaImport", "SchemaPrefix", "NamespaceName", "DefaultElementNamespace", "AtHints", "ModuleImport", "BaseURIDecl", "OrderedDecls", "VarDecl", "VarType", "VarValue", "VarDefaultValue", "VarConstantDecl", "VarVariableDecl", "FunctionDecl", "ParamList", "ReturnType", "OptionDecl", "TypeDeclaration", "Param", "EnclosedExpr", "QueryBody", "UnaryExpr", "DirElemConstructor", "DirAttributeList", "DirAttributeValue", "DirElemContent", "CommonContent", "SequenceType", "EmptySequenceTest", "KindTest", "ItemTest", "AtomicType", "StringLiteral", "ElementContentChar", "AttributeValueChar", "QName", "Block", "BlockDecls", "BlockVarDecl", "BinaryTest", "LETDOLLAR", "EXPLICITLY"],
+ FOLLOW_p_VersionDecl_in_p_Module523: new org.antlr.runtime.BitSet([0x00000000, 0x10000004,0x00000200, 0x00000000]),
+ FOLLOW_p_LibraryModule_in_p_Module558: new org.antlr.runtime.BitSet([0x00000000, 0x00000000]),
+ FOLLOW_p_MainModule_in_p_Module584: new org.antlr.runtime.BitSet([0x00000000, 0x00000000]),
+ FOLLOW_EOF_in_p_Module613: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_XQUERY_in_p_VersionDecl641: new org.antlr.runtime.BitSet([0x00000000, 0x00004000,0x00000000, 0x00002000]),
+ FOLLOW_ENCODING_in_p_VersionDecl647: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_VersionDecl651: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_VERSION_in_p_VersionDecl672: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_VersionDecl676: new org.antlr.runtime.BitSet([0x00000000, 0x00004000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_ENCODING_in_p_VersionDecl682: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_VersionDecl686: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_VersionDecl692: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_Prolog_in_p_MainModule758: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_QueryBody_in_p_MainModule760: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ModuleDecl_in_p_LibraryModule816: new org.antlr.runtime.BitSet([0x00000000, 0x10000004,0x00000200, 0x00000000]),
+ FOLLOW_pm_Prolog_in_p_LibraryModule818: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_MODULE_in_p_ModuleDecl874: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000]),
+ FOLLOW_NAMESPACE_in_p_ModuleDecl878: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_ModuleDecl880: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_EQUAL_in_p_ModuleDecl882: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_ModuleDecl884: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_ModuleDecl886: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_DefaultNamespaceDecl_in_pm_Prolog945: new org.antlr.runtime.BitSet([0x00000000, 0x10000004]),
+ FOLLOW_p_Setter_in_pm_Prolog951: new org.antlr.runtime.BitSet([0x00000000, 0x10000004]),
+ FOLLOW_pm_NamespaceDecl_in_pm_Prolog957: new org.antlr.runtime.BitSet([0x00000000, 0x10000004]),
+ FOLLOW_p_Import_in_pm_Prolog963: new org.antlr.runtime.BitSet([0x00000000, 0x10000004]),
+ FOLLOW_pg_OrderedDecl_in_pm_Prolog970: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_VarDecl_in_pg_OrderedDecl1248: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_pm_ContextItemDecl_in_pg_OrderedDecl1252: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_pm_FunctionDecl_in_pg_OrderedDecl1256: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_pm_OptionDecl_in_pg_OrderedDecl1260: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_p_CollectionDecl_in_pg_OrderedDecl1275: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_p_IndexDecl_in_pg_OrderedDecl1290: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_p_ICDecl_in_pg_OrderedDecl1305: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_pm_BoundarySpaceDecl_in_p_Setter1334: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_DefaultCollationDecl_in_p_Setter1346: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_BaseURIDecl_in_p_Setter1358: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_ConstructionDecl_in_p_Setter1370: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_OrderingModeDecl_in_p_Setter1382: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_EmptyOrderDecl_in_p_Setter1394: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_RevalidationDecl_in_p_Setter1409: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_CopyNamespacesDecl_in_p_Setter1421: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_SchemaImport_in_p_Import1447: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_ModuleImport_in_p_Import1451: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_NamespaceDecl1482: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000]),
+ FOLLOW_NAMESPACE_in_pm_NamespaceDecl1486: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_pm_NamespaceDecl1490: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_EQUAL_in_pm_NamespaceDecl1492: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_NamespaceDecl1496: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_NamespaceDecl1498: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_BoundarySpaceDecl1561: new org.antlr.runtime.BitSet([0x01000000, 0x00000000]),
+ FOLLOW_BOUNDARY_SPACE_in_pm_BoundarySpaceDecl1565: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x01000000, 0x00000008]),
+ FOLLOW_PRESERVE_in_pm_BoundarySpaceDecl1570: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_STRIP_in_pm_BoundarySpaceDecl1576: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_BoundarySpaceDecl1579: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_DefaultNamespaceDecl1607: new org.antlr.runtime.BitSet([0x00000000, 0x00000008]),
+ FOLLOW_DEFAULT_in_pm_DefaultNamespaceDecl1611: new org.antlr.runtime.BitSet([0x00000000, 0x00400400]),
+ FOLLOW_ELEMENT_in_pm_DefaultNamespaceDecl1616: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000]),
+ FOLLOW_FUNCTION_in_pm_DefaultNamespaceDecl1622: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000]),
+ FOLLOW_NAMESPACE_in_pm_DefaultNamespaceDecl1627: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_DefaultNamespaceDecl1629: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_DefaultNamespaceDecl1631: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_OptionDecl1662: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00010000, 0x00000000]),
+ FOLLOW_OPTION_in_pm_OptionDecl1666: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_pm_OptionDecl1668: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_OptionDecl1670: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_OptionDecl1672: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_OrderingModeDecl1703: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00100000, 0x00000000]),
+ FOLLOW_ORDERING_in_pm_OrderingModeDecl1707: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00080000, 0x00000400]),
+ FOLLOW_ORDERED_in_pm_OrderingModeDecl1712: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_UNORDERED_in_pm_OrderingModeDecl1718: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_OrderingModeDecl1721: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_EmptyOrderDecl1752: new org.antlr.runtime.BitSet([0x00000000, 0x00000008]),
+ FOLLOW_DEFAULT_in_pm_EmptyOrderDecl1756: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00040000, 0x00000000]),
+ FOLLOW_ORDER_in_pm_EmptyOrderDecl1760: new org.antlr.runtime.BitSet([0x00000000, 0x00001000]),
+ FOLLOW_EMPTY_in_pm_EmptyOrderDecl1764: new org.antlr.runtime.BitSet([0x00000000, 0x01000000,0x00000020, 0x00000000]),
+ FOLLOW_GREATEST_in_pm_EmptyOrderDecl1769: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_LEAST_in_pm_EmptyOrderDecl1775: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_EmptyOrderDecl1778: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_CopyNamespacesDecl1809: new org.antlr.runtime.BitSet([0x00000000, 0x00000002]),
+ FOLLOW_COPY_NAMESPACES_in_pm_CopyNamespacesDecl1813: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x01002000, 0x00000000]),
+ FOLLOW_p_PreserveMode_in_pm_CopyNamespacesDecl1815: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_pm_CopyNamespacesDecl1817: new org.antlr.runtime.BitSet([0x00000000, 0x40000000,0x00001000, 0x00000000]),
+ FOLLOW_p_InheritMode_in_pm_CopyNamespacesDecl1819: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_CopyNamespacesDecl1821: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_p_DecimalFormatDecl1852: new org.antlr.runtime.BitSet([0x00000000, 0x00000008,0x00000000, 0x00080000]),
+ FOLLOW_DECIMAL_FORMAT_in_p_DecimalFormatDecl1856: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_DecimalFormatDecl1858: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x17300000,0x00000407, 0x00000000]),
+ FOLLOW_DEFAULT_in_p_DecimalFormatDecl1864: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00080000]),
+ FOLLOW_DECIMAL_FORMAT_in_p_DecimalFormatDecl1866: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x17300000,0x00000407, 0x00000000]),
+ FOLLOW_p_DFPropertyName_in_p_DecimalFormatDecl1871: new org.antlr.runtime.BitSet([0x00000000, 0x00008000]),
+ FOLLOW_EQ_in_p_DecimalFormatDecl1874: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_DecimalFormatDecl1876: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_DecimalFormatDecl1878: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECIMAL_SEPARATOR_in_p_DFPropertyName1907: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GROUPING_SEPARATOR_in_p_DFPropertyName1913: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_INFINITY_in_p_DFPropertyName1919: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_MINUS_SIGN_in_p_DFPropertyName1925: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NAN_in_p_DFPropertyName1931: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PERCENT_in_p_DFPropertyName1937: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PER_MILLE_in_p_DFPropertyName1943: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ZERO_DIGIT_in_p_DFPropertyName1949: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DIGIT_in_p_DFPropertyName1955: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PATTERN_SEPARATOR_in_p_DFPropertyName1961: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PRESERVE_in_p_PreserveMode1993: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NO_PRESERVE_in_p_PreserveMode1999: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_INHERIT_in_p_InheritMode2032: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NO_INHERIT_in_p_InheritMode2038: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_DefaultCollationDecl2078: new org.antlr.runtime.BitSet([0x00000000, 0x00000008]),
+ FOLLOW_DEFAULT_in_pm_DefaultCollationDecl2082: new org.antlr.runtime.BitSet([0x40000000, 0x00000000]),
+ FOLLOW_COLLATION_in_pm_DefaultCollationDecl2086: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_DefaultCollationDecl2088: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_DefaultCollationDecl2090: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_BaseURIDecl2129: new org.antlr.runtime.BitSet([0x00800000, 0x00000000]),
+ FOLLOW_BASE_URI_in_pm_BaseURIDecl2133: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_BaseURIDecl2137: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_BaseURIDecl2139: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_IMPORT_in_pm_SchemaImport2193: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_SCHEMA_in_pm_SchemaImport2197: new org.antlr.runtime.BitSet([0x00000000, 0x00000008,0x00000400, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_SchemaPrefix_in_pm_SchemaImport2201: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_SchemaImport2206: new org.antlr.runtime.BitSet([0x00200000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_AT_in_pm_SchemaImport2211: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_SchemaImport2215: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_COMMA_in_pm_SchemaImport2218: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_SchemaImport2222: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_SchemaImport2228: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NAMESPACE_in_p_SchemaPrefix2299: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_SchemaPrefix2303: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_EQUAL_in_p_SchemaPrefix2305: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DEFAULT_in_p_SchemaPrefix2345: new org.antlr.runtime.BitSet([0x00000000, 0x00000400]),
+ FOLLOW_ELEMENT_in_p_SchemaPrefix2349: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000]),
+ FOLLOW_NAMESPACE_in_p_SchemaPrefix2353: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_IMPORT_in_pm_ModuleImport2402: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_MODULE_in_pm_ModuleImport2406: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_NAMESPACE_in_pm_ModuleImport2411: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_pm_ModuleImport2415: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_EQUAL_in_pm_ModuleImport2417: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_ModuleImport2423: new org.antlr.runtime.BitSet([0x00200000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_AT_in_pm_ModuleImport2428: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_ModuleImport2432: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_COMMA_in_pm_ModuleImport2435: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_ModuleImport2439: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_ModuleImport2445: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_VarDecl2515: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00001000,0x20000000, 0x20000000]),
+ FOLLOW_p_PrivateOption_in_pm_VarDecl2517: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00001000,0x20000000, 0x20000000]),
+ FOLLOW_pg_VarDeclType_in_pm_VarDecl2521: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_pm_VarDecl2523: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_pm_VarDecl2527: new org.antlr.runtime.BitSet([0x00080000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_pm_VarDecl2531: new org.antlr.runtime.BitSet([0x00000000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_pm_VarDecl2536: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_VarDecl2540: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_EXTERNAL_in_pm_VarDecl2548: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000200, 0x00000000]),
+ FOLLOW_BIND_in_pm_VarDecl2551: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_VarDecl2555: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_VarDecl2561: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_CONSTANT_in_pg_VarDeclType2648: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_VARIABLE_in_pg_VarDeclType2682: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_ContextItemDecl2739: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00020000]),
+ FOLLOW_CONTEXT_in_pm_ContextItemDecl2743: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_ITEM_in_pm_ContextItemDecl2747: new org.antlr.runtime.BitSet([0x00080000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_AS_in_pm_ContextItemDecl2752: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_ItemType_in_pm_ContextItemDecl2754: new org.antlr.runtime.BitSet([0x00000000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_pm_ContextItemDecl2760: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_ContextItemDecl2762: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_EXTERNAL_in_pm_ContextItemDecl2770: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000200, 0x00000000]),
+ FOLLOW_BIND_in_pm_ContextItemDecl2773: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_ContextItemDecl2775: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_ContextItemDecl2781: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_ConstructionDecl2815: new org.antlr.runtime.BitSet([0x00000000, 0x00000001]),
+ FOLLOW_CONSTRUCTION_in_pm_ConstructionDecl2819: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x01000000, 0x00000008]),
+ FOLLOW_STRIP_in_pm_ConstructionDecl2824: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_PRESERVE_in_pm_ConstructionDecl2830: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_ConstructionDecl2833: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_FunctionDecl2869: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000001]),
+ FOLLOW_SEQUENTIAL_in_pm_FunctionDecl2873: new org.antlr.runtime.BitSet([0x00000000, 0x00400000]),
+ FOLLOW_FUNCTION_in_pm_FunctionDecl2877: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_pm_FunctionDecl2881: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_pm_FunctionDecl2883: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x0000000C, 0x00000000]),
+ FOLLOW_p_ParamList_in_pm_FunctionDecl2887: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_pm_FunctionDecl2890: new org.antlr.runtime.BitSet([0x00080000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_pm_FunctionDecl2894: new org.antlr.runtime.BitSet([0x00000000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_Block_in_pm_FunctionDecl2900: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_EXTERNAL_in_pm_FunctionDecl2906: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_FunctionDecl2909: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_FunctionDecl2971: new org.antlr.runtime.BitSet([0x00000000, 0x00400000,0x00000000, 0x00000000,0x02000000, 0x20000004]),
+ FOLLOW_p_PrivateOption_in_pm_FunctionDecl2973: new org.antlr.runtime.BitSet([0x00000000, 0x00400000,0x00000000, 0x00000000,0x02000000, 0x00000004]),
+ FOLLOW_p_FunctionType_in_pm_FunctionDecl2975: new org.antlr.runtime.BitSet([0x00000000, 0x00400000]),
+ FOLLOW_FUNCTION_in_pm_FunctionDecl2979: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_pm_FunctionDecl2983: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_pm_FunctionDecl2985: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x0000000C, 0x00000000]),
+ FOLLOW_p_ParamList_in_pm_FunctionDecl2989: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_pm_FunctionDecl2992: new org.antlr.runtime.BitSet([0x00080000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_pm_FunctionDecl2996: new org.antlr.runtime.BitSet([0x00000000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_EnclosedExpr_in_pm_FunctionDecl3002: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_EXTERNAL_in_pm_FunctionDecl3008: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_FunctionDecl3011: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_UPDATING_in_p_FunctionType3091: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SIMPLE_in_p_FunctionType3108: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PRIVATE_in_p_PrivateOption3150: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Param_in_p_ParamList3193: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_ParamList3196: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_p_Param_in_p_ParamList3200: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_Param3258: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_Param3262: new org.antlr.runtime.BitSet([0x00080002, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_p_Param3266: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_EnclosedExpr3322: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_EnclosedExpr3324: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_EnclosedExpr3326: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_Expr_in_p_QueryBody3376: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ConcatExpr_in_pm_Expr3427: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_Expr3444: new org.antlr.runtime.BitSet([0xFFFF0002, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x8783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_ApplyExpr_in_pm_Expr3446: new org.antlr.runtime.BitSet([0xFFFF0002, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x8783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_SEMICOLON_in_pm_Expr3471: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ConcatExpr_in_pm_Expr3473: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_p_FLWORExpr_in_p_ExprSingle3507: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QuantifiedExpr_in_p_ExprSingle3519: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_TypeswitchExpr_in_p_ExprSingle3531: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_IfExpr_in_p_ExprSingle3543: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_TryCatchExpr_in_p_ExprSingle3555: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_EvalExpr_in_p_ExprSingle3570: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_InsertExpr_in_p_ExprSingle3585: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_DeleteExpr_in_p_ExprSingle3600: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_RenameExpr_in_p_ExprSingle3615: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ReplaceExpr_in_p_ExprSingle3630: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_TransformExpr_in_p_ExprSingle3645: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_BlockExpr_in_p_ExprSingle3660: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AssignmentExpr_in_p_ExprSingle3675: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExitExpr_in_p_ExprSingle3690: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_WhileExpr_in_p_ExprSingle3705: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OrExpr_in_p_ExprSingle3717: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_InitialClause_in_p_FLWORExpr3743: new org.antlr.runtime.BitSet([0x00000000, 0x00200000,0x04040000, 0x00844002,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00400000]),
+ FOLLOW_p_IntermediateClause_in_p_FLWORExpr3745: new org.antlr.runtime.BitSet([0x00000000, 0x00200000,0x04040000, 0x00844002,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00400000]),
+ FOLLOW_p_ReturnClause_in_p_FLWORExpr3748: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ForClause_in_p_InitialClause3774: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_LetClause_in_p_InitialClause3778: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_WindowClause_in_p_InitialClause3782: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_InitialClause_in_p_IntermediateClause3808: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_WhereClause_in_p_IntermediateClause3812: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_GroupByClause_in_p_IntermediateClause3816: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OrderByClause_in_p_IntermediateClause3820: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CountClause_in_p_IntermediateClause3824: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FOR_in_p_ForClause3852: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ForClause3854: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_ForClause3856: new org.antlr.runtime.BitSet([0x00280000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_ForClause3858: new org.antlr.runtime.BitSet([0x00200000, 0x20000000]),
+ FOLLOW_p_PositionalVar_in_p_ForClause3861: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_ForClause3866: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ForClause3868: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_ForClause3871: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ForClause3873: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_ForClause3875: new org.antlr.runtime.BitSet([0x00280000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_ForClause3877: new org.antlr.runtime.BitSet([0x00200000, 0x20000000]),
+ FOLLOW_p_PositionalVar_in_p_ForClause3880: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_ForClause3885: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ForClause3887: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_AT_in_p_PositionalVar3918: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_PositionalVar3920: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_PositionalVar3922: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LETDOLLAR_in_p_LetClause3950: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_LetClause3952: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_p_LetClause3954: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_p_LetClause3957: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_LetClause3959: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_LetClause3962: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_LetClause3964: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_LetClause3966: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_p_LetClause3968: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_p_LetClause3971: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_LetClause3973: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_FOR_in_p_WindowClause4003: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000090, 0x00000000]),
+ FOLLOW_p_TumblingWindowClause_in_p_WindowClause4006: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_SlidingWindowClause_in_p_WindowClause4010: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_TUMBLING_in_p_TumblingWindowClause4047: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_WINDOW_in_p_TumblingWindowClause4051: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_TumblingWindowClause4053: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_TumblingWindowClause4055: new org.antlr.runtime.BitSet([0x00080000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_TumblingWindowClause4057: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_TumblingWindowClause4060: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TumblingWindowClause4062: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_p_WindowStartCondition_in_p_TumblingWindowClause4064: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x40400000]),
+ FOLLOW_p_WindowEndCondition_in_p_TumblingWindowClause4066: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SLIDING_in_p_SlidingWindowClause4096: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_WINDOW_in_p_SlidingWindowClause4100: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_SlidingWindowClause4102: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_SlidingWindowClause4104: new org.antlr.runtime.BitSet([0x00080000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_SlidingWindowClause4106: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_SlidingWindowClause4109: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_SlidingWindowClause4111: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_p_WindowStartCondition_in_p_SlidingWindowClause4113: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x40400000]),
+ FOLLOW_p_WindowEndCondition_in_p_SlidingWindowClause4115: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_START_in_p_WindowStartCondition4145: new org.antlr.runtime.BitSet([0x00200000, 0x00000000,0x00000000, 0x20000000,0x00000108, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_p_WindowVars_in_p_WindowStartCondition4147: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_WHEN_in_p_WindowStartCondition4151: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_WindowStartCondition4153: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ONLY_in_p_WindowEndCondition4182: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00400000]),
+ FOLLOW_END_in_p_WindowEndCondition4187: new org.antlr.runtime.BitSet([0x00200000, 0x00000000,0x00000000, 0x20000000,0x00000108, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_p_WindowVars_in_p_WindowEndCondition4189: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_WHEN_in_p_WindowEndCondition4193: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_WindowEndCondition4195: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_WindowVars4223: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_WindowVars4225: new org.antlr.runtime.BitSet([0x00200002, 0x00000000,0x00000000, 0x20000000,0x00000008, 0x00000000]),
+ FOLLOW_p_PositionalVar_in_p_WindowVars4229: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x20000000,0x00000008, 0x00000000]),
+ FOLLOW_PREVIOUS_in_p_WindowVars4235: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_WindowVars4237: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_WindowVars4239: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x20000000]),
+ FOLLOW_NEXT_in_p_WindowVars4246: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_WindowVars4248: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_WindowVars4250: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COUNT_in_p_CountClause4290: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_CountClause4292: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_CountClause4294: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_WHERE_in_p_WhereClause4330: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_WhereClause4332: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GROUP_in_p_GroupByClause4362: new org.antlr.runtime.BitSet([0x02000000, 0x00000000]),
+ FOLLOW_BY_in_p_GroupByClause4366: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_p_GroupingSpecList_in_p_GroupByClause4368: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_GroupingSpec_in_p_GroupingSpecList4397: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_GroupingSpecList4400: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_p_GroupingSpec_in_p_GroupingSpecList4402: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_GroupingSpec4432: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_GroupingSpec4434: new org.antlr.runtime.BitSet([0x40000002, 0x00000000]),
+ FOLLOW_COLLATION_in_p_GroupingSpec4439: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_GroupingSpec4441: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ORDER_in_p_OrderByClause4476: new org.antlr.runtime.BitSet([0x02000000, 0x00000000]),
+ FOLLOW_BY_in_p_OrderByClause4480: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_STABLE_in_p_OrderByClause4488: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00040000, 0x00000000]),
+ FOLLOW_ORDER_in_p_OrderByClause4492: new org.antlr.runtime.BitSet([0x02000000, 0x00000000]),
+ FOLLOW_BY_in_p_OrderByClause4496: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_OrderSpecList_in_p_OrderByClause4500: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OrderSpec_in_p_OrderSpecList4529: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_OrderSpecList4532: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_OrderSpec_in_p_OrderSpecList4534: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_p_ExprSingle_in_p_OrderSpec4564: new org.antlr.runtime.BitSet([0x40100000, 0x00001040]),
+ FOLLOW_p_OrderModifier_in_p_OrderSpec4566: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ASCENDING_in_p_OrderModifier4595: new org.antlr.runtime.BitSet([0x40000002, 0x00001000]),
+ FOLLOW_DESCENDING_in_p_OrderModifier4601: new org.antlr.runtime.BitSet([0x40000002, 0x00001000]),
+ FOLLOW_EMPTY_in_p_OrderModifier4608: new org.antlr.runtime.BitSet([0x00000000, 0x01000000,0x00000020, 0x00000000]),
+ FOLLOW_GREATEST_in_p_OrderModifier4613: new org.antlr.runtime.BitSet([0x40000002, 0x00000000]),
+ FOLLOW_LEAST_in_p_OrderModifier4619: new org.antlr.runtime.BitSet([0x40000002, 0x00000000]),
+ FOLLOW_COLLATION_in_p_OrderModifier4627: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_OrderModifier4629: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_RETURN_in_p_ReturnClause4660: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ReturnClause4662: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SOME_in_p_QuantifiedExpr4693: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_EVERY_in_p_QuantifiedExpr4699: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_QuantifiedExpr4702: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_QuantifiedExpr4704: new org.antlr.runtime.BitSet([0x00080000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_QuantifiedExpr4706: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_QuantifiedExpr4711: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4713: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x08000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_QuantifiedExpr4716: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_QuantifiedExpr4718: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_QuantifiedExpr4720: new org.antlr.runtime.BitSet([0x00080000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_QuantifiedExpr4722: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_QuantifiedExpr4727: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4729: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x08000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_SATISFIES_in_p_QuantifiedExpr4735: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4737: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_TYPESWITCH_in_p_TypeswitchExpr4766: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_TypeswitchExpr4768: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_TypeswitchExpr4770: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_TypeswitchExpr4772: new org.antlr.runtime.BitSet([0x04000000, 0x00000000]),
+ FOLLOW_p_CaseClause_in_p_TypeswitchExpr4774: new org.antlr.runtime.BitSet([0x04000000, 0x00000008]),
+ FOLLOW_DEFAULT_in_p_TypeswitchExpr4779: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x04000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_TypeswitchExpr4782: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_TypeswitchExpr4784: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x04000000, 0x00000000]),
+ FOLLOW_RETURN_in_p_TypeswitchExpr4790: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TypeswitchExpr4792: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_CASE_in_p_CaseClause4821: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000009, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_DOLLAR_in_p_CaseClause4824: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_CaseClause4826: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_AS_in_p_CaseClause4830: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000009, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SequenceType_in_p_CaseClause4834: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x04000000, 0x00000000]),
+ FOLLOW_RETURN_in_p_CaseClause4838: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_CaseClause4840: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_IF_in_p_IfExpr4869: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_IfExpr4871: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_IfExpr4873: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_IfExpr4875: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000020]),
+ FOLLOW_THEN_in_p_IfExpr4879: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_IfExpr4881: new org.antlr.runtime.BitSet([0x00000000, 0x00000800]),
+ FOLLOW_ELSE_in_p_IfExpr4885: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_IfExpr4887: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AndExpr_in_p_OrExpr4914: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00020000, 0x00000000]),
+ FOLLOW_OR_in_p_OrExpr4920: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_AndExpr_in_p_OrExpr4923: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00020000, 0x00000000]),
+ FOLLOW_p_ComparisonExpr_in_p_AndExpr4954: new org.antlr.runtime.BitSet([0x00040002, 0x00000000]),
+ FOLLOW_AND_in_p_AndExpr4960: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ComparisonExpr_in_p_AndExpr4963: new org.antlr.runtime.BitSet([0x00040002, 0x00000000]),
+ FOLLOW_p_RangeExpr_in_p_ComparisonExpr4994: new org.antlr.runtime.BitSet([0x00000002, 0x02808000,0x00000892, 0x00000000,0x00000000, 0x00000000,0x007E0500, 0x00000000]),
+ FOLLOW_p_ValueComp_in_p_ComparisonExpr4999: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_GeneralComp_in_p_ComparisonExpr5003: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_NodeComp_in_p_ComparisonExpr5007: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_RangeExpr_in_p_ComparisonExpr5010: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AdditiveExpr_in_p_RangeExpr5041: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000040]),
+ FOLLOW_TO_in_p_RangeExpr5047: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_AdditiveExpr_in_p_RangeExpr5050: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_MultiplicativeExpr_in_p_AdditiveExpr5081: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00018000, 0x00000000]),
+ FOLLOW_set_in_p_AdditiveExpr5085: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_MultiplicativeExpr_in_p_AdditiveExpr5093: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00018000, 0x00000000]),
+ FOLLOW_p_UnionExpr_in_p_MultiplicativeExpr5124: new org.antlr.runtime.BitSet([0x00000002, 0x04000080,0x00000100, 0x00000000,0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_STAR_in_p_MultiplicativeExpr5129: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_DIV_in_p_MultiplicativeExpr5135: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_IDIV_in_p_MultiplicativeExpr5141: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_MOD_in_p_MultiplicativeExpr5149: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_UnionExpr_in_p_MultiplicativeExpr5153: new org.antlr.runtime.BitSet([0x00000002, 0x04000080,0x00000100, 0x00000000,0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_p_IntersectExceptExpr_in_p_UnionExpr5184: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000200,0x00000000, 0x00000000,0x00000000, 0x00000001]),
+ FOLLOW_UNION_in_p_UnionExpr5191: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_VBAR_in_p_UnionExpr5195: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_IntersectExceptExpr_in_p_UnionExpr5198: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000200,0x00000000, 0x00000000,0x00000000, 0x00000001]),
+ FOLLOW_p_InstanceofExpr_in_p_IntersectExceptExpr5229: new org.antlr.runtime.BitSet([0x00000002, 0x00020000,0x00000001, 0x00000000]),
+ FOLLOW_INTERSECT_in_p_IntersectExceptExpr5236: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_EXCEPT_in_p_IntersectExceptExpr5242: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_InstanceofExpr_in_p_IntersectExceptExpr5246: new org.antlr.runtime.BitSet([0x00000002, 0x00020000,0x00000001, 0x00000000]),
+ FOLLOW_p_TreatExpr_in_p_InstanceofExpr5277: new org.antlr.runtime.BitSet([0x00000002, 0x80000000]),
+ FOLLOW_INSTANCE_in_p_InstanceofExpr5283: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00008000, 0x00000000]),
+ FOLLOW_OF_in_p_InstanceofExpr5287: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000009, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SequenceType_in_p_InstanceofExpr5289: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CastableExpr_in_p_TreatExpr5319: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000080]),
+ FOLLOW_TREAT_in_p_TreatExpr5325: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_AS_in_p_TreatExpr5329: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000009, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SequenceType_in_p_TreatExpr5331: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CastExpr_in_p_CastableExpr5370: new org.antlr.runtime.BitSet([0x10000002, 0x00000000]),
+ FOLLOW_CASTABLE_in_p_CastableExpr5376: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_AS_in_p_CastableExpr5380: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SingleType_in_p_CastableExpr5382: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_UnaryExpr_in_p_CastExpr5421: new org.antlr.runtime.BitSet([0x08000002, 0x00000000]),
+ FOLLOW_CAST_in_p_CastExpr5427: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_AS_in_p_CastExpr5431: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SingleType_in_p_CastExpr5433: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PLUS_in_p_UnaryExpr5465: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_MINUS_in_p_UnaryExpr5469: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ValueExpr_in_p_UnaryExpr5473: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ValidateExpr_in_p_ValueExpr5529: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_PathExpr_in_p_ValueExpr5541: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExtensionExpr_in_p_ValueExpr5553: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_GeneralComp0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_EQ_in_p_ValueComp5632: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NE_in_p_ValueComp5638: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LT_in_p_ValueComp5644: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LE_in_p_ValueComp5650: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GT_in_p_ValueComp5656: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GE_in_p_ValueComp5662: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_IS_in_p_NodeComp5694: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SMALLER_SMALLER_in_p_NodeComp5698: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GREATER_GREATER_in_p_NodeComp5702: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_VALIDATE_in_p_ValidateExpr5732: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000008, 0x00000004,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_ValidationMode_in_p_ValidateExpr5734: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_ValidateExpr5737: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_ValidateExpr5739: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_ValidateExpr5741: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LAX_in_p_ValidationMode5772: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_STRICT_in_p_ValidationMode5778: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_AS_in_p_ValidationMode5785: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ValidationMode5787: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_Pragma_in_p_ExtensionExpr5818: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00200000]),
+ FOLLOW_LBRACKET_in_p_ExtensionExpr5821: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C02B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_ExtensionExpr5823: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_ExtensionExpr5826: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SLASH_in_p_PathExpr5868: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_RelativePathExpr_in_p_PathExpr5870: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SLASH_in_p_PathExpr5883: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SLASH_SLASH_in_p_PathExpr5895: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_RelativePathExpr_in_p_PathExpr5897: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_RelativePathExpr_in_p_PathExpr5909: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_StepExpr_in_p_RelativePathExpr5937: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x01800000, 0x00000000]),
+ FOLLOW_set_in_p_RelativePathExpr5940: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_StepExpr_in_p_RelativePathExpr5948: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x01800000, 0x00000000]),
+ FOLLOW_p_AxisStep_in_p_StepExpr5976: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_FilterExpr_in_p_StepExpr5988: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ReverseStep_in_p_AxisStep6015: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000040, 0x00000000]),
+ FOLLOW_p_ForwardStep_in_p_AxisStep6019: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000040, 0x00000000]),
+ FOLLOW_p_PredicateList_in_p_AxisStep6022: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ForwardAxis_in_p_ForwardStep6049: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x04004001, 0x00004080,0x00000000, 0x00800000]),
+ FOLLOW_p_NodeTest_in_p_ForwardStep6051: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AbbrevForwardStep_in_p_ForwardStep6056: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_CHILD_in_p_ForwardAxis6082: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6084: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DESCENDANT_in_p_ForwardAxis6096: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6098: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ATTRIBUTE_in_p_ForwardAxis6110: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6112: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SELF_in_p_ForwardAxis6124: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6126: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DESCENDANT_OR_SELF_in_p_ForwardAxis6138: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6140: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FOLLOWING_SIBLING_in_p_ForwardAxis6152: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6154: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FOLLOWING_in_p_ForwardAxis6166: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6168: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ATTR_SIGN_in_p_AbbrevForwardStep6194: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x04004001, 0x00004080,0x00000000, 0x00800000]),
+ FOLLOW_p_NodeTest_in_p_AbbrevForwardStep6197: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ReverseAxis_in_p_ReverseStep6224: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x04004001, 0x00004080,0x00000000, 0x00800000]),
+ FOLLOW_p_NodeTest_in_p_ReverseStep6226: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AbbrevReverseStep_in_p_ReverseStep6231: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PARENT_in_p_ReverseAxis6257: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ReverseAxis6259: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ANCESTOR_in_p_ReverseAxis6271: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ReverseAxis6273: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PRECEDING_SIBLING_in_p_ReverseAxis6285: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ReverseAxis6287: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PRECEDING_in_p_ReverseAxis6299: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ReverseAxis6301: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ANCESTOR_OR_SELF_in_p_ReverseAxis6313: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ReverseAxis6315: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOT_DOT_in_p_AbbrevReverseStep6341: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_KindTest_in_p_NodeTest6367: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_NameTest_in_p_NodeTest6371: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_NameTest6397: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Wildcard_in_p_NameTest6401: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_STAR_in_p_Wildcard6427: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000]),
+ FOLLOW_COLON_in_p_Wildcard6430: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_Wildcard6432: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_NCName_in_p_Wildcard6439: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000]),
+ FOLLOW_COLON_in_p_Wildcard6441: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_STAR_in_p_Wildcard6443: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_PrimaryExpr_in_p_FilterExpr6479: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000040, 0x00000000]),
+ FOLLOW_p_PredicateList_in_p_FilterExpr6481: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Predicate_in_p_PredicateList6509: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000040, 0x00000000]),
+ FOLLOW_LSQUARE_in_p_Predicate6538: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_Predicate6540: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000080, 0x00000000]),
+ FOLLOW_RSQUARE_in_p_Predicate6542: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Literal_in_p_PrimaryExpr6570: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_VarRef_in_p_PrimaryExpr6582: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ParenthesizedExpr_in_p_PrimaryExpr6594: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ContextItemExpr_in_p_PrimaryExpr6606: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_FunctionCall_in_p_PrimaryExpr6618: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OrderedExpr_in_p_PrimaryExpr6630: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_UnorderedExpr_in_p_PrimaryExpr6642: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Constructor_in_p_PrimaryExpr6654: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_NumericLiteral_in_p_Literal6682: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_StringLiteral_in_p_Literal6686: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_NumericLiteral0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_VarRef6758: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_VarRef6760: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_VarName6788: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_ParenthesizedExpr6816: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00F, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_ParenthesizedExpr6818: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_ParenthesizedExpr6821: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOT_in_p_ContextItemExpr6849: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ORDERED_in_p_OrderedExpr6879: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_OrderedExpr6882: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_OrderedExpr6884: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_OrderedExpr6886: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_UNORDERED_in_p_UnorderedExpr6916: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_UnorderedExpr6919: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_UnorderedExpr6921: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_UnorderedExpr6923: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_FQName_in_p_FunctionCall6952: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_FunctionCall6954: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00F, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_FunctionCall6957: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_COMMA_in_p_FunctionCall6960: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_FunctionCall6962: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_FunctionCall6968: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_DirectConstructor_in_p_Constructor7000: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ComputedConstructor_in_p_Constructor7004: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_DirElemConstructor_in_p_DirectConstructor7032: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_DirCommentConstructor_in_p_DirectConstructor7044: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_DirPIConstructor_in_p_DirectConstructor7056: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SMALLER_in_p_DirElemConstructor7084: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_DirElemConstructor7100: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x20040000, 0x00080000]),
+ FOLLOW_p_DirAttributeList_in_p_DirElemConstructor7102: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x20040000, 0x00000000]),
+ FOLLOW_EMPTY_CLOSE_TAG_in_p_DirElemConstructor7118: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GREATER_in_p_DirElemConstructor7123: new org.antlr.runtime.BitSet([0x00000FC0, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x40020010, 0x00C00000]),
+ FOLLOW_pm_DirElemContent_in_p_DirElemConstructor7125: new org.antlr.runtime.BitSet([0x00000FC0, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x40020010, 0x00C00000]),
+ FOLLOW_CLOSE_TAG_in_p_DirElemConstructor7128: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_DirElemConstructor7130: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00040000, 0x00080000]),
+ FOLLOW_S_in_p_DirElemConstructor7132: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00040000, 0x00000000]),
+ FOLLOW_GREATER_in_p_DirElemConstructor7135: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_S_in_p_DirAttributeList7212: new org.antlr.runtime.BitSet([0xFFFF0002, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00084000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_DirAttributeList7215: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00080000]),
+ FOLLOW_S_in_p_DirAttributeList7217: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_EQUAL_in_p_DirAttributeList7220: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00080C00]),
+ FOLLOW_S_in_p_DirAttributeList7222: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00080C00]),
+ FOLLOW_p_DirAttributeValue_in_p_DirAttributeList7225: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00080000]),
+ FOLLOW_QUOT_in_p_DirAttributeValue7256: new org.antlr.runtime.BitSet([0x00002F10, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000800]),
+ FOLLOW_ESCAPE_QUOT_in_p_DirAttributeValue7259: new org.antlr.runtime.BitSet([0x00002F10, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000800]),
+ FOLLOW_pm_QuotAttrValueContent_in_p_DirAttributeValue7263: new org.antlr.runtime.BitSet([0x00002F10, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000800]),
+ FOLLOW_QUOT_in_p_DirAttributeValue7267: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_APOS_in_p_DirAttributeValue7306: new org.antlr.runtime.BitSet([0x00001F20, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000400]),
+ FOLLOW_ESCAPE_APOS_in_p_DirAttributeValue7309: new org.antlr.runtime.BitSet([0x00001F20, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000400]),
+ FOLLOW_pm_AposAttrValueContent_in_p_DirAttributeValue7313: new org.antlr.runtime.BitSet([0x00001F20, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000400]),
+ FOLLOW_APOS_in_p_DirAttributeValue7317: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_QuotAttrContentChar_in_pm_QuotAttrValueContent7369: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_CommonContent_in_pm_QuotAttrValueContent7373: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ElemEnclosedExpr_in_pm_QuotAttrValueContent7377: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_QuotAttrContentChar_in_pg_QuotAttrContentChar7406: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_AposAttrContentChar_in_pm_AposAttrValueContent7459: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_CommonContent_in_pm_AposAttrValueContent7463: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ElemEnclosedExpr_in_pm_AposAttrValueContent7467: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_AposAttrContentChar_in_pg_AposAttrContentChar7496: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_DirectConstructor_in_pm_DirElemContent7547: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_CDataSection_in_pm_DirElemContent7559: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ElemEnclosedExpr_in_pm_DirElemContent7571: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_CommonContent_in_pm_DirElemContent7583: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_ElementContentChar_in_pm_DirElemContent7595: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_ElementContentChar_in_pg_ElementContentChar7624: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_CommonContent_in_pg_CommonContent7680: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_pm_CommonContent0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_ElemEnclosedExpr7776: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_ElemEnclosedExpr7793: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_ElemEnclosedExpr7810: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompDocConstructor_in_p_ComputedConstructor7861: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompElemConstructor_in_p_ComputedConstructor7873: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompAttrConstructor_in_p_ComputedConstructor7885: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompNamespaceConstructor_in_p_ComputedConstructor7897: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompTextConstructor_in_p_ComputedConstructor7909: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompCommentConstructor_in_p_ComputedConstructor7921: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompPIConstructor_in_p_ComputedConstructor7933: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompBinaryConstructor_in_p_ComputedConstructor7948: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOCUMENT_in_p_CompDocConstructor7982: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompDocConstructor7985: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompDocConstructor7987: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompDocConstructor7989: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ELEMENT_in_p_CompElemConstructor8030: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000011, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_CompElemConstructor8034: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompElemConstructor8039: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompElemConstructor8041: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompElemConstructor8043: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompElemConstructor8047: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C02B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompElemConstructor8049: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompElemConstructor8052: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ATTRIBUTE_in_p_CompAttrConstructor8085: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000011, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_CompAttrConstructor8089: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompAttrConstructor8094: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompAttrConstructor8096: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompAttrConstructor8098: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompAttrConstructor8102: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C02B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompAttrConstructor8104: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompAttrConstructor8107: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NAMESPACE_in_p_CompNamespaceConstructor8135: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000011, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_CompNamespaceConstructor8139: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompNamespaceConstructor8144: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompNamespaceConstructor8146: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompNamespaceConstructor8148: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompNamespaceConstructor8152: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C02B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompNamespaceConstructor8154: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompNamespaceConstructor8157: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_TEXT_in_p_CompTextConstructor8193: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompTextConstructor8196: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompTextConstructor8198: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompTextConstructor8200: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_BINARY_in_p_CompBinaryConstructor8230: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompBinaryConstructor8233: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompBinaryConstructor8235: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompBinaryConstructor8237: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COMMENT_in_p_CompCommentConstructor8267: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompCommentConstructor8270: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompCommentConstructor8272: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompCommentConstructor8274: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PROCESSING_INSTRUCTION_in_p_CompPIConstructor8305: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000011, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_CompPIConstructor8309: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompPIConstructor8314: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompPIConstructor8316: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompPIConstructor8318: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompPIConstructor8322: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C02B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompPIConstructor8324: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompPIConstructor8327: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AtomicType_in_p_SingleType8355: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00002000, 0x00000000]),
+ FOLLOW_QUESTION_in_p_SingleType8357: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_AS_in_p_TypeDeclaration8388: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000009, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SequenceType_in_p_TypeDeclaration8393: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_EMPTY_SEQUENCE_in_p_SequenceType8448: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_SequenceType8453: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_SequenceType8457: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ItemType_in_p_SequenceType8506: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x0000E000, 0x00000000]),
+ FOLLOW_p_OccurrenceIndicator_in_p_SequenceType8517: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_OccurrenceIndicator0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_KindTest_in_p_ItemType8619: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_BINARY_in_p_ItemType8659: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_ItemType8661: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_ItemType8663: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ITEM_in_p_ItemType8705: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_ItemType8707: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_ItemType8709: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AtomicType_in_p_ItemType8750: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_AtomicType8776: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_DocumentTest_in_p_KindTest8826: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ElementTest_in_p_KindTest8838: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AttributeTest_in_p_KindTest8850: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_SchemaElementTest_in_p_KindTest8862: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_SchemaAttributeTest_in_p_KindTest8874: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_NamespaceNodeTest_in_p_KindTest8886: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_PITest_in_p_KindTest8898: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CommentTest_in_p_KindTest8910: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_TextTest_in_p_KindTest8922: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AnyKindTest_in_p_KindTest8934: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NODE_in_p_AnyKindTest8962: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_AnyKindTest8964: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_AnyKindTest8966: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOCUMENT_NODE_in_p_DocumentTest8994: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_DocumentTest8996: new org.antlr.runtime.BitSet([0x00000000, 0x00000400,0x40000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_p_ElementTest_in_p_DocumentTest8999: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_p_SchemaElementTest_in_p_DocumentTest9003: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_DocumentTest9007: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_TEXT_in_p_TextTest9027: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_TextTest9029: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_TextTest9031: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COMMENT_in_p_CommentTest9059: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_CommentTest9061: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_CommentTest9063: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NAMESPACE_NODE_in_p_NamespaceNodeTest9089: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_NamespaceNodeTest9091: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_NamespaceNodeTest9093: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PROCESSING_INSTRUCTION_in_p_PITest9121: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_PITest9123: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000005, 0x00004C00,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_PITest9126: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_p_StringLiteral_in_p_PITest9130: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_PITest9134: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ATTRIBUTE_in_p_AttributeTest9162: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_AttributeTest9164: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00004005, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_AttribNameOrWildcard_in_p_AttributeTest9167: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_COMMA_in_p_AttributeTest9170: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_TypeName_in_p_AttributeTest9172: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_AttributeTest9178: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_AttribNameOrWildcard9208: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_STAR_in_p_AttribNameOrWildcard9212: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SCHEMA_ATTRIBUTE_in_p_SchemaAttributeTest9240: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_SchemaAttributeTest9242: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_AttributeDeclaration_in_p_SchemaAttributeTest9244: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_SchemaAttributeTest9246: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AttributeName_in_p_AttributeDeclaration9272: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ELEMENT_in_p_ElementTest9300: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_ElementTest9302: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00004005, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_ElementNameOrWildcard_in_p_ElementTest9305: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_COMMA_in_p_ElementTest9308: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_TypeName_in_p_ElementTest9310: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00002004, 0x00000000]),
+ FOLLOW_QUESTION_in_p_ElementTest9312: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_ElementTest9319: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_ElementNameOrWildcard9347: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_STAR_in_p_ElementNameOrWildcard9351: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SCHEMA_ELEMENT_in_p_SchemaElementTest9371: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_SchemaElementTest9373: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_ElementDeclaration_in_p_SchemaElementTest9375: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_SchemaElementTest9377: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ElementName_in_p_ElementDeclaration9403: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_AttributeName9431: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_ElementName9459: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_TypeName9487: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_TryClause_in_p_TryCatchExpr9519: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00010000]),
+ FOLLOW_p_CatchClause_in_p_TryCatchExpr9521: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00010000]),
+ FOLLOW_TRY_in_p_TryClause9550: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_TryClause9552: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_TryClause9554: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_TryClause9556: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_CATCH_in_p_CatchClause9587: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x04004013, 0x00004080,0x00000000, 0x00800000]),
+ FOLLOW_p_CatchErrorList_in_p_CatchClause9589: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000012, 0x00000000]),
+ FOLLOW_p_CatchVars_in_p_CatchClause9591: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CatchClause9594: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CatchClause9596: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CatchClause9598: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_NameTest_in_p_CatchErrorList9624: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000001]),
+ FOLLOW_VBAR_in_p_CatchErrorList9627: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x04004001, 0x00004080,0x00000000, 0x00800000]),
+ FOLLOW_p_NameTest_in_p_CatchErrorList9629: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000001]),
+ FOLLOW_LPAREN_in_p_CatchVars9675: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_CatchVars9677: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_CatchVars9679: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_COMMA_in_p_CatchVars9682: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_CatchVars9684: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_CatchVars9686: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_COMMA_in_p_CatchVars9689: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_CatchVars9691: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_CatchVars9693: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_CatchVars9699: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_QUOT_in_p_StringLiteral9748: new org.antlr.runtime.BitSet([0xFFFFFFF0, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFF7FF, 0xFFFFFFFF,0xFFFFFFFF, 0x00FFFFFF]),
+ FOLLOW_p_QuotStringLiteralContent_in_p_StringLiteral9752: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000800]),
+ FOLLOW_QUOT_in_p_StringLiteral9754: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_APOS_in_p_StringLiteral9795: new org.antlr.runtime.BitSet([0xFFFFFFF0, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFF7FF, 0xFFFFFFFF,0xFFFFFFFF, 0x00FFFFFF]),
+ FOLLOW_p_AposStringLiteralContent_in_p_StringLiteral9799: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000400]),
+ FOLLOW_APOS_in_p_StringLiteral9801: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_QuotStringLiteralContent9857: new org.antlr.runtime.BitSet([0xFFFFFFF2, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFF7FF, 0xFFFFF7FF,0xFFFFFFFF, 0x00FFFFFF]),
+ FOLLOW_set_in_p_AposStringLiteralContent9909: new org.antlr.runtime.BitSet([0xFFFFFFF2, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFF7FF, 0xFFFFFBFF,0xFFFFFFFF, 0x00FFFFFF]),
+ FOLLOW_p_NCName_in_p_QName9994: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000]),
+ FOLLOW_p_LocalNCName_in_p_QName9996: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COLON_in_p_LocalNCName10051: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_LocalNCName10053: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_FNCName_in_p_FQName10083: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000]),
+ FOLLOW_p_LocalFNCName_in_p_FQName10085: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COLON_in_p_LocalFNCName10113: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_LocalFNCName10115: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_NCName0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_FNCName0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_RevalidationDecl11839: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00800000, 0x00000000]),
+ FOLLOW_REVALIDATION_in_pm_RevalidationDecl11843: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000008, 0x00000004,0x01000000, 0x00000000]),
+ FOLLOW_STRICT_in_pm_RevalidationDecl11848: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LAX_in_pm_RevalidationDecl11854: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SKIP_in_pm_RevalidationDecl11860: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_AS_in_p_InsertExprTargetChoice11892: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00048000, 0x00000000]),
+ FOLLOW_FIRST_in_p_InsertExprTargetChoice11897: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00020000, 0x00000000]),
+ FOLLOW_LAST_in_p_InsertExprTargetChoice11903: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00020000, 0x00000000]),
+ FOLLOW_INTO_in_p_InsertExprTargetChoice11910: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_AFTER_in_p_InsertExprTargetChoice11926: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_BEFORE_in_p_InsertExprTargetChoice11940: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_INSERT_in_p_InsertExpr11968: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000,0x00100000, 0x00000000]),
+ FOLLOW_NODE_in_p_InsertExpr11973: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_NODES_in_p_InsertExpr11979: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_SourceExpr_in_p_InsertExpr11982: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x00021800, 0x00000000]),
+ FOLLOW_p_InsertExprTargetChoice_in_p_InsertExpr11984: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_TargetExpr_in_p_InsertExpr11986: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DELETE_in_p_DeleteExpr12015: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000,0x00100000, 0x00000000]),
+ FOLLOW_NODE_in_p_DeleteExpr12020: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_NODES_in_p_DeleteExpr12026: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_TargetExpr_in_p_DeleteExpr12029: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_REPLACE_in_p_ReplaceExpr12058: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000,0x04000000, 0x00000000]),
+ FOLLOW_VALUE_in_p_ReplaceExpr12063: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00008000, 0x00000000]),
+ FOLLOW_OF_in_p_ReplaceExpr12067: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_NODE_in_p_ReplaceExpr12073: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ReplaceExpr12075: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000]),
+ FOLLOW_WITH_in_p_ReplaceExpr12079: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ReplaceExpr12081: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_RENAME_in_p_RenameExpr12110: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_NODE_in_p_RenameExpr12114: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_TargetExpr_in_p_RenameExpr12116: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_AS_in_p_RenameExpr12118: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_NewNameExpr_in_p_RenameExpr12120: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExprSingle_in_p_SourceExpr12147: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExprSingle_in_p_TargetExpr12173: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExprSingle_in_p_NewNameExpr12199: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COPY_in_p_TransformExpr12227: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_TransformExpr12229: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_TransformExpr12231: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_p_TransformExpr12233: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TransformExpr12235: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00080000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_TransformExpr12238: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_TransformExpr12240: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_TransformExpr12242: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_p_TransformExpr12244: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TransformExpr12246: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00080000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_MODIFY_in_p_TransformExpr12252: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TransformExpr12254: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x04000000, 0x00000000]),
+ FOLLOW_RETURN_in_p_TransformExpr12258: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TransformExpr12260: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ConcatExpr_in_pm_ApplyExpr12294: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_ApplyExpr12296: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExprSingle_in_p_ConcatExpr12322: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_ConcatExpr12325: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ConcatExpr12327: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_BLOCK_in_p_BlockExpr12357: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_Block_in_p_BlockExpr12359: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_Block12385: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_BlockDecls_in_p_Block12389: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_BlockBody_in_p_Block12393: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_Block12395: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_BlockVarDecl_in_pm_BlockDecls12451: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_DECLARE_in_pm_BlockVarDecl12506: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_pm_BlockVarDecl12508: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_pm_BlockVarDecl12512: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001200, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_pm_BlockVarDecl12516: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001200, 0x00000000]),
+ FOLLOW_BIND_in_pm_BlockVarDecl12520: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_BlockVarDecl12524: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_COMMA_in_pm_BlockVarDecl12529: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_pm_BlockVarDecl12531: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_pm_BlockVarDecl12533: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001200, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_pm_BlockVarDecl12535: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001200, 0x00000000]),
+ FOLLOW_BIND_in_pm_BlockVarDecl12539: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_BlockVarDecl12541: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_BlockVarDecl12547: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_Expr_in_p_BlockBody12607: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SET_in_p_AssignmentExpr12635: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_AssignmentExpr12637: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_AssignmentExpr12639: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_p_AssignmentExpr12641: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_AssignmentExpr12643: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_EXIT_in_p_ExitExpr12671: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_RETURNING_in_p_ExitExpr12675: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ExitExpr12677: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_WHILE_in_p_WhileExpr12705: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_WhileExpr12707: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_WhileExpr12709: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_WhileExpr12711: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_WhileBody_in_p_WhileExpr12713: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Block_in_p_WhileBody12739: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_UsingClause_in_p_EvalExpr12769: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000010]),
+ FOLLOW_EVAL_in_p_EvalExpr12774: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_EvalExpr12776: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_EvalExpr12778: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_EvalExpr12780: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_USING_in_p_UsingClause12807: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_UsingClause12809: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_UsingClause12811: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_UsingClause12814: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_UsingClause12816: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_UsingClause12818: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_DECLARE_in_p_CollectionDecl12853: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200A40]),
+ FOLLOW_p_CollProperties_in_p_CollectionDecl12855: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000200]),
+ FOLLOW_COLLECTION_in_p_CollectionDecl12859: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_CollectionDecl12861: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_p_CollectionTypeDecl_in_p_CollectionDecl12863: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_WITH_in_p_CollectionDecl12869: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x04200000]),
+ FOLLOW_p_NodeModifier_in_p_CollectionDecl12871: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00100000, 0x00000000]),
+ FOLLOW_NODES_in_p_CollectionDecl12875: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_CollectionDecl12879: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_CONST_in_p_CollProperties12909: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_MUTABLE_in_p_CollProperties12915: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_APPEND_ONLY_in_p_CollProperties12929: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_QUEUE_in_p_CollProperties12935: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_ORDERED_in_p_CollProperties12949: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_UNORDERED_in_p_CollProperties12955: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_AS_in_p_CollectionTypeDecl12987: new org.antlr.runtime.BitSet([0x80400000, 0x00000600,0x62004000, 0x08000010]),
+ FOLLOW_p_KindTest_in_p_CollectionTypeDecl12989: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x0000E000, 0x00000000]),
+ FOLLOW_p_OccurrenceIndicator_in_p_CollectionTypeDecl12998: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_READ_ONLY_in_p_NodeModifier13029: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_MUTABLE_in_p_NodeModifier13035: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_p_IndexDecl13064: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08510080]),
+ FOLLOW_p_IndexProperties_in_p_IndexDecl13066: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00010000]),
+ FOLLOW_INDEX_in_p_IndexDecl13070: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_IndexName_in_p_IndexDecl13072: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00800000]),
+ FOLLOW_ON_in_p_IndexDecl13076: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00100000, 0x00000000]),
+ FOLLOW_NODES_in_p_IndexDecl13080: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_IndexDomainExpr_in_p_IndexDecl13082: new org.antlr.runtime.BitSet([0x02000000, 0x00000000]),
+ FOLLOW_BY_in_p_IndexDecl13086: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_IndexKeySpec_in_p_IndexDecl13088: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_IndexDecl13091: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_IndexKeySpec_in_p_IndexDecl13093: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_IndexDecl13097: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_IndexName13123: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_UNIQUE_in_p_IndexProperties13152: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_NON_in_p_IndexProperties13158: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x08000000]),
+ FOLLOW_UNIQUE_in_p_IndexProperties13162: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_VALUE_in_p_IndexProperties13176: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x02000000]),
+ FOLLOW_RANGE_in_p_IndexProperties13180: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_VALUE_in_p_IndexProperties13186: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00001000]),
+ FOLLOW_EQUALITY_in_p_IndexProperties13190: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_AUTOMATICALLY_in_p_IndexProperties13204: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00080000]),
+ FOLLOW_MAINTAINED_in_p_IndexProperties13208: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_MANUALLY_in_p_IndexProperties13214: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00080000]),
+ FOLLOW_MAINTAINED_in_p_IndexProperties13218: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_p_PathExpr_in_p_IndexDomainExpr13247: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_IndexKeyExpr_in_p_IndexKeySpec13272: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_p_IndexKeyTypeDecl_in_p_IndexKeySpec13274: new org.antlr.runtime.BitSet([0x40000002, 0x00000000]),
+ FOLLOW_p_IndexKeyCollation_in_p_IndexKeySpec13276: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_PathExpr_in_p_IndexKeyExpr13302: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_AS_in_p_IndexKeyTypeDecl13329: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_AtomicType_in_p_IndexKeyTypeDecl13331: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COLLATION_in_p_IndexKeyCollation13358: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_IndexKeyCollation13360: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_p_ICDecl13387: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00020000]),
+ FOLLOW_INTEGRITY_in_p_ICDecl13391: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000400]),
+ FOLLOW_CONSTRAINT_in_p_ICDecl13395: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICDecl13398: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00804000]),
+ FOLLOW_p_ICCollection_in_p_ICDecl13401: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_p_ICForeignKey_in_p_ICDecl13405: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_ICDecl13408: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ON_in_p_ICCollection13435: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000200]),
+ FOLLOW_COLLECTION_in_p_ICCollection13439: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICCollection13442: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000,0x00000000, 0x00002000,0x00000008, 0x00000000]),
+ FOLLOW_p_ICCollSequence_in_p_ICCollection13445: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ICCollSequenceUnique_in_p_ICCollection13449: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ICCollNode_in_p_ICCollection13453: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ICCollSequence13479: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICCollSequence13481: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000100]),
+ FOLLOW_CHECK_in_p_ICCollSequence13485: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ICCollSequence13487: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NODE_in_p_ICCollSequenceUnique13514: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ICCollSequenceUnique13518: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICCollSequenceUnique13520: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000100]),
+ FOLLOW_CHECK_in_p_ICCollSequenceUnique13524: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x08000000]),
+ FOLLOW_UNIQUE_in_p_ICCollSequenceUnique13528: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00040000]),
+ FOLLOW_KEY_in_p_ICCollSequenceUnique13532: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_PathExpr_in_p_ICCollSequenceUnique13534: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FOREACH_in_p_ICCollNode13562: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_NODE_in_p_ICCollNode13566: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ICCollNode13568: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICCollNode13570: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000100]),
+ FOLLOW_CHECK_in_p_ICCollNode13574: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ICCollNode13576: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FOREIGN_in_p_ICForeignKey13604: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00040000]),
+ FOLLOW_KEY_in_p_ICForeignKey13608: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00008000]),
+ FOLLOW_p_ICForeignKeySource_in_p_ICForeignKey13610: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000040]),
+ FOLLOW_p_ICForeignKeyTarget_in_p_ICForeignKey13612: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FROM_in_p_ICForeignKeySource13640: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000200]),
+ FOLLOW_p_ICForeignKeyValues_in_p_ICForeignKeySource13642: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_TO_in_p_ICForeignKeyTarget13669: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000200]),
+ FOLLOW_p_ICForeignKeyValues_in_p_ICForeignKeyTarget13671: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COLLECTION_in_p_ICForeignKeyValues13698: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICForeignKeyValues13700: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_NODE_in_p_ICForeignKeyValues13704: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ICForeignKeyValues13706: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICForeignKeyValues13708: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00040000]),
+ FOLLOW_KEY_in_p_ICForeignKeyValues13712: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_PathExpr_in_p_ICForeignKeyValues13714: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SLASH_in_synpred1_XQueryParser5860: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_RelativePathExpr_in_synpred1_XQueryParser5862: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OccurrenceIndicator_in_synpred2_XQueryParser8510: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OccurrenceIndicator_in_synpred3_XQueryParser12993: new org.antlr.runtime.BitSet([0x00000002, 0x00000000])
+});
+
+})();
+
+});
diff --git a/build/kitchen-sink.html b/build/kitchen-sink.html
new file mode 100644
index 00000000..99bf1ec3
--- /dev/null
+++ b/build/kitchen-sink.html
@@ -0,0 +1,222 @@
+
+
+
+
+
+ Ace Kitchen Sink
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+' )
+ // XQueryLexer.g:269:27: '-->'
+ this.match("-->");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "XML_COMMENT_END",
+
+ // $ANTLR start PI_START
+ mPI_START: function() {
+ try {
+ var _type = this.PI_START;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:270:25: ( '' )
+ // XQueryLexer.g:270:27: ''
+ this.match("");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PI_START",
+
+ // $ANTLR start PI_END
+ mPI_END: function() {
+ try {
+ var _type = this.PI_END;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:271:25: ( '?>' )
+ // XQueryLexer.g:271:27: '?>'
+ this.match("?>");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "PI_END",
+
+ // $ANTLR start ATTR_SIGN
+ mATTR_SIGN: function() {
+ try {
+ var _type = this.ATTR_SIGN;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:272:25: ( '@' )
+ // XQueryLexer.g:272:27: '@'
+ this.match('@');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "ATTR_SIGN",
+
+ // $ANTLR start CHARREF_DEC
+ mCHARREF_DEC: function() {
+ try {
+ var _type = this.CHARREF_DEC;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:273:25: ( '' )
+ // XQueryLexer.g:273:27: ''
+ this.match("");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CHARREF_DEC",
+
+ // $ANTLR start CHARREF_HEX
+ mCHARREF_HEX: function() {
+ try {
+ var _type = this.CHARREF_HEX;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:274:25: ( '' )
+ // XQueryLexer.g:274:27: ''
+ this.match("");
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "CHARREF_HEX",
+
+ // $ANTLR start APOS
+ mAPOS: function() {
+ try {
+ var _type = this.APOS;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:275:25: ( '\\'' )
+ // XQueryLexer.g:275:27: '\\''
+ this.match('\'');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "APOS",
+
+ // $ANTLR start QUOT
+ mQUOT: function() {
+ try {
+ var _type = this.QUOT;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:276:25: ( '\"' )
+ // XQueryLexer.g:276:27: '\"'
+ this.match('\"');
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "QUOT",
+
+ // $ANTLR start L_NCName
+ mL_NCName: function() {
+ try {
+ var _type = this.L_NCName;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:280:9: ( NCNameStartChar ( NCNameChar )* )
+ // XQueryLexer.g:280:13: NCNameStartChar ( NCNameChar )*
+ this.mNCNameStartChar();
+ // XQueryLexer.g:280:29: ( NCNameChar )*
+ loop1:
+ do {
+ var alt1=2;
+ var LA1_0 = this.input.LA(1);
+
+ if ( ((LA1_0>='-' && LA1_0<='.')||(LA1_0>='0' && LA1_0<='9')||(LA1_0>='A' && LA1_0<='Z')||LA1_0=='_'||(LA1_0>='a' && LA1_0<='z')) ) {
+ alt1=1;
+ }
+
+
+ switch (alt1) {
+ case 1 :
+ // XQueryLexer.g:280:29: NCNameChar
+ this.mNCNameChar();
+
+
+ break;
+
+ default :
+ break loop1;
+ }
+ } while (true);
+
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_NCName",
+
+ // $ANTLR start Letter
+ mLetter: function() {
+ try {
+ // XQueryLexer.g:283:29: ( 'a' .. 'z' | 'A' .. 'Z' )
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='A' && this.input.LA(1)<='Z')||(this.input.LA(1)>='a' && this.input.LA(1)<='z') ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "Letter",
+
+ // $ANTLR start HexLetter
+ mHexLetter: function() {
+ try {
+ // XQueryLexer.g:284:29: ( 'a' .. 'f' | 'A' .. 'F' )
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='A' && this.input.LA(1)<='F')||(this.input.LA(1)>='a' && this.input.LA(1)<='f') ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "HexLetter",
+
+ // $ANTLR start Digit
+ mDigit: function() {
+ try {
+ // XQueryLexer.g:285:29: ( '0' .. '9' )
+ // XQueryLexer.g:285:31: '0' .. '9'
+ this.matchRange('0','9');
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "Digit",
+
+ // $ANTLR start Digits
+ mDigits: function() {
+ try {
+ // XQueryLexer.g:286:29: ( ( Digit )+ )
+ // XQueryLexer.g:286:31: ( Digit )+
+ // XQueryLexer.g:286:31: ( Digit )+
+ var cnt2=0;
+ loop2:
+ do {
+ var alt2=2;
+ var LA2_0 = this.input.LA(1);
+
+ if ( ((LA2_0>='0' && LA2_0<='9')) ) {
+ alt2=1;
+ }
+
+
+ switch (alt2) {
+ case 1 :
+ // XQueryLexer.g:286:31: Digit
+ this.mDigit();
+
+
+ break;
+
+ default :
+ if ( cnt2 >= 1 ) {
+ break loop2;
+ }
+ var eee = new org.antlr.runtime.EarlyExitException(2, this.input);
+ throw eee;
+ }
+ cnt2++;
+ } while (true);
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "Digits",
+
+ // $ANTLR start NCNameStartChar
+ mNCNameStartChar: function() {
+ try {
+ // XQueryLexer.g:288:29: ( Letter | '_' )
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='A' && this.input.LA(1)<='Z')||this.input.LA(1)=='_'||(this.input.LA(1)>='a' && this.input.LA(1)<='z') ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NCNameStartChar",
+
+ // $ANTLR start NCNameChar
+ mNCNameChar: function() {
+ try {
+ // XQueryLexer.g:289:29: ( Letter | Digit | '.' | '-' | '_' )
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='-' && this.input.LA(1)<='.')||(this.input.LA(1)>='0' && this.input.LA(1)<='9')||(this.input.LA(1)>='A' && this.input.LA(1)<='Z')||this.input.LA(1)=='_'||(this.input.LA(1)>='a' && this.input.LA(1)<='z') ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "NCNameChar",
+
+ // $ANTLR start S
+ mS: function() {
+ try {
+ var _type = this.S;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:292:9: ( ( '\\t' | ' ' | '\\n' | '\\r' )+ )
+ // XQueryLexer.g:292:11: ( '\\t' | ' ' | '\\n' | '\\r' )+
+ // XQueryLexer.g:292:11: ( '\\t' | ' ' | '\\n' | '\\r' )+
+ var cnt3=0;
+ loop3:
+ do {
+ var alt3=2;
+ var LA3_0 = this.input.LA(1);
+
+ if ( ((LA3_0>='\t' && LA3_0<='\n')||LA3_0=='\r'||LA3_0==' ') ) {
+ alt3=1;
+ }
+
+
+ switch (alt3) {
+ case 1 :
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='\t' && this.input.LA(1)<='\n')||this.input.LA(1)=='\r'||this.input.LA(1)==' ' ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+ break;
+
+ default :
+ if ( cnt3 >= 1 ) {
+ break loop3;
+ }
+ var eee = new org.antlr.runtime.EarlyExitException(3, this.input);
+ throw eee;
+ }
+ cnt3++;
+ } while (true);
+
+ _channel = HIDDEN;
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "S",
+
+ // $ANTLR start SU
+ mSU: function() {
+ try {
+ // XQueryLexer.g:295:9: ( ( '\\t' | ' ' | '\\n' | '\\r' )+ )
+ // XQueryLexer.g:295:11: ( '\\t' | ' ' | '\\n' | '\\r' )+
+ // XQueryLexer.g:295:11: ( '\\t' | ' ' | '\\n' | '\\r' )+
+ var cnt4=0;
+ loop4:
+ do {
+ var alt4=2;
+ var LA4_0 = this.input.LA(1);
+
+ if ( ((LA4_0>='\t' && LA4_0<='\n')||LA4_0=='\r'||LA4_0==' ') ) {
+ alt4=1;
+ }
+
+
+ switch (alt4) {
+ case 1 :
+ // XQueryLexer.g:
+ if ( (this.input.LA(1)>='\t' && this.input.LA(1)<='\n')||this.input.LA(1)=='\r'||this.input.LA(1)==' ' ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+ break;
+
+ default :
+ if ( cnt4 >= 1 ) {
+ break loop4;
+ }
+ var eee = new org.antlr.runtime.EarlyExitException(4, this.input);
+ throw eee;
+ }
+ cnt4++;
+ } while (true);
+
+
+
+
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "SU",
+
+ // $ANTLR start L_Pragma
+ mL_Pragma: function() {
+ try {
+ var _type = this.L_Pragma;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:306:9: ( PRAGMA_START ( SU )? L_NCName COLON L_NCName ( SU ( options {greedy=false; } : . )* )? PRAGMA_END )
+ // XQueryLexer.g:306:11: PRAGMA_START ( SU )? L_NCName COLON L_NCName ( SU ( options {greedy=false; } : . )* )? PRAGMA_END
+ this.mPRAGMA_START();
+ // XQueryLexer.g:306:24: ( SU )?
+ var alt5=2;
+ var LA5_0 = this.input.LA(1);
+
+ if ( ((LA5_0>='\t' && LA5_0<='\n')||LA5_0=='\r'||LA5_0==' ') ) {
+ alt5=1;
+ }
+ switch (alt5) {
+ case 1 :
+ // XQueryLexer.g:306:24: SU
+ this.mSU();
+
+
+ break;
+
+ }
+
+ this.mL_NCName();
+ this.mCOLON();
+ this.mL_NCName();
+ // XQueryLexer.g:306:52: ( SU ( options {greedy=false; } : . )* )?
+ var alt7=2;
+ var LA7_0 = this.input.LA(1);
+
+ if ( ((LA7_0>='\t' && LA7_0<='\n')||LA7_0=='\r'||LA7_0==' ') ) {
+ alt7=1;
+ }
+ switch (alt7) {
+ case 1 :
+ // XQueryLexer.g:306:53: SU ( options {greedy=false; } : . )*
+ this.mSU();
+ // XQueryLexer.g:306:56: ( options {greedy=false; } : . )*
+ loop6:
+ do {
+ var alt6=2;
+ var LA6_0 = this.input.LA(1);
+
+ if ( (LA6_0=='#') ) {
+ var LA6_1 = this.input.LA(2);
+
+ if ( (LA6_1==')') ) {
+ alt6=2;
+ }
+ else if ( ((LA6_1>='\u0000' && LA6_1<='(')||(LA6_1>='*' && LA6_1<='\uFFFF')) ) {
+ alt6=1;
+ }
+
+
+ }
+ else if ( ((LA6_0>='\u0000' && LA6_0<='\"')||(LA6_0>='$' && LA6_0<='\uFFFF')) ) {
+ alt6=1;
+ }
+
+
+ switch (alt6) {
+ case 1 :
+ // XQueryLexer.g:306:83: .
+ this.matchAny();
+
+
+ break;
+
+ default :
+ break loop6;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+ this.mPRAGMA_END();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_Pragma",
+
+ // $ANTLR start L_DirCommentConstructor
+ mL_DirCommentConstructor: function() {
+ try {
+ var _type = this.L_DirCommentConstructor;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:316:9: ( XML_COMMENT_START ( options {greedy=false; } : ( . )* ) XML_COMMENT_END )
+ // XQueryLexer.g:316:11: XML_COMMENT_START ( options {greedy=false; } : ( . )* ) XML_COMMENT_END
+ this.mXML_COMMENT_START();
+ // XQueryLexer.g:316:29: ( options {greedy=false; } : ( . )* )
+ // XQueryLexer.g:316:56: ( . )*
+ // XQueryLexer.g:316:56: ( . )*
+ loop8:
+ do {
+ var alt8=2;
+ var LA8_0 = this.input.LA(1);
+
+ if ( (LA8_0=='-') ) {
+ var LA8_1 = this.input.LA(2);
+
+ if ( (LA8_1=='-') ) {
+ var LA8_3 = this.input.LA(3);
+
+ if ( (LA8_3=='>') ) {
+ alt8=2;
+ }
+ else if ( ((LA8_3>='\u0000' && LA8_3<='=')||(LA8_3>='?' && LA8_3<='\uFFFF')) ) {
+ alt8=1;
+ }
+
+
+ }
+ else if ( ((LA8_1>='\u0000' && LA8_1<=',')||(LA8_1>='.' && LA8_1<='\uFFFF')) ) {
+ alt8=1;
+ }
+
+
+ }
+ else if ( ((LA8_0>='\u0000' && LA8_0<=',')||(LA8_0>='.' && LA8_0<='\uFFFF')) ) {
+ alt8=1;
+ }
+
+
+ switch (alt8) {
+ case 1 :
+ // XQueryLexer.g:316:56: .
+ this.matchAny();
+
+
+ break;
+
+ default :
+ break loop8;
+ }
+ } while (true);
+
+
+
+
+ this.mXML_COMMENT_END();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_DirCommentConstructor",
+
+ // $ANTLR start L_DirPIConstructor
+ mL_DirPIConstructor: function() {
+ try {
+ var _type = this.L_DirPIConstructor;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:325:9: ( PI_START ( SU )? L_NCName ( SU ( options {greedy=false; } : ( . )* ) )? PI_END )
+ // XQueryLexer.g:325:11: PI_START ( SU )? L_NCName ( SU ( options {greedy=false; } : ( . )* ) )? PI_END
+ this.mPI_START();
+ // XQueryLexer.g:325:20: ( SU )?
+ var alt9=2;
+ var LA9_0 = this.input.LA(1);
+
+ if ( ((LA9_0>='\t' && LA9_0<='\n')||LA9_0=='\r'||LA9_0==' ') ) {
+ alt9=1;
+ }
+ switch (alt9) {
+ case 1 :
+ // XQueryLexer.g:325:20: SU
+ this.mSU();
+
+
+ break;
+
+ }
+
+ this.mL_NCName();
+ // XQueryLexer.g:325:33: ( SU ( options {greedy=false; } : ( . )* ) )?
+ var alt11=2;
+ var LA11_0 = this.input.LA(1);
+
+ if ( ((LA11_0>='\t' && LA11_0<='\n')||LA11_0=='\r'||LA11_0==' ') ) {
+ alt11=1;
+ }
+ switch (alt11) {
+ case 1 :
+ // XQueryLexer.g:325:34: SU ( options {greedy=false; } : ( . )* )
+ this.mSU();
+ // XQueryLexer.g:325:36: ( options {greedy=false; } : ( . )* )
+ // XQueryLexer.g:325:63: ( . )*
+ // XQueryLexer.g:325:63: ( . )*
+ loop10:
+ do {
+ var alt10=2;
+ var LA10_0 = this.input.LA(1);
+
+ if ( (LA10_0=='?') ) {
+ var LA10_1 = this.input.LA(2);
+
+ if ( (LA10_1=='>') ) {
+ alt10=2;
+ }
+ else if ( ((LA10_1>='\u0000' && LA10_1<='=')||(LA10_1>='?' && LA10_1<='\uFFFF')) ) {
+ alt10=1;
+ }
+
+
+ }
+ else if ( ((LA10_0>='\u0000' && LA10_0<='>')||(LA10_0>='@' && LA10_0<='\uFFFF')) ) {
+ alt10=1;
+ }
+
+
+ switch (alt10) {
+ case 1 :
+ // XQueryLexer.g:325:63: .
+ this.matchAny();
+
+
+ break;
+
+ default :
+ break loop10;
+ }
+ } while (true);
+
+
+
+
+
+
+ break;
+
+ }
+
+ this.mPI_END();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_DirPIConstructor",
+
+ // $ANTLR start L_IntegerLiteral
+ mL_IntegerLiteral: function() {
+ try {
+ var _type = this.L_IntegerLiteral;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:333:9: ( Digits )
+ // XQueryLexer.g:333:13: Digits
+ this.mDigits();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_IntegerLiteral",
+
+ // $ANTLR start L_DecimalLiteral
+ mL_DecimalLiteral: function() {
+ try {
+ var _type = this.L_DecimalLiteral;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:338:9: ( ( '.' Digits ) | ( Digits '.' ( Digit )* ) )
+ var alt13=2;
+ var LA13_0 = this.input.LA(1);
+
+ if ( (LA13_0=='.') ) {
+ alt13=1;
+ }
+ else if ( ((LA13_0>='0' && LA13_0<='9')) ) {
+ alt13=2;
+ }
+ else {
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 13, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt13) {
+ case 1 :
+ // XQueryLexer.g:338:11: ( '.' Digits )
+ // XQueryLexer.g:338:11: ( '.' Digits )
+ // XQueryLexer.g:338:12: '.' Digits
+ this.match('.');
+ this.mDigits();
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryLexer.g:338:26: ( Digits '.' ( Digit )* )
+ // XQueryLexer.g:338:26: ( Digits '.' ( Digit )* )
+ // XQueryLexer.g:338:27: Digits '.' ( Digit )*
+ this.mDigits();
+ this.match('.');
+ // XQueryLexer.g:338:38: ( Digit )*
+ loop12:
+ do {
+ var alt12=2;
+ var LA12_0 = this.input.LA(1);
+
+ if ( ((LA12_0>='0' && LA12_0<='9')) ) {
+ alt12=1;
+ }
+
+
+ switch (alt12) {
+ case 1 :
+ // XQueryLexer.g:338:38: Digit
+ this.mDigit();
+
+
+ break;
+
+ default :
+ break loop12;
+ }
+ } while (true);
+
+
+
+
+
+
+ break;
+
+ }
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_DecimalLiteral",
+
+ // $ANTLR start L_DoubleLiteral
+ mL_DoubleLiteral: function() {
+ try {
+ var _type = this.L_DoubleLiteral;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:343:9: ( ( ( '.' Digits ) | ( Digits ( '.' ( Digit )* )? ) ) ( 'e' | 'E' ) ( '+' | '-' )? Digits )
+ // XQueryLexer.g:343:11: ( ( '.' Digits ) | ( Digits ( '.' ( Digit )* )? ) ) ( 'e' | 'E' ) ( '+' | '-' )? Digits
+ // XQueryLexer.g:343:11: ( ( '.' Digits ) | ( Digits ( '.' ( Digit )* )? ) )
+ var alt16=2;
+ var LA16_0 = this.input.LA(1);
+
+ if ( (LA16_0=='.') ) {
+ alt16=1;
+ }
+ else if ( ((LA16_0>='0' && LA16_0<='9')) ) {
+ alt16=2;
+ }
+ else {
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 16, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt16) {
+ case 1 :
+ // XQueryLexer.g:343:12: ( '.' Digits )
+ // XQueryLexer.g:343:12: ( '.' Digits )
+ // XQueryLexer.g:343:13: '.' Digits
+ this.match('.');
+ this.mDigits();
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryLexer.g:343:27: ( Digits ( '.' ( Digit )* )? )
+ // XQueryLexer.g:343:27: ( Digits ( '.' ( Digit )* )? )
+ // XQueryLexer.g:343:28: Digits ( '.' ( Digit )* )?
+ this.mDigits();
+ // XQueryLexer.g:343:35: ( '.' ( Digit )* )?
+ var alt15=2;
+ var LA15_0 = this.input.LA(1);
+
+ if ( (LA15_0=='.') ) {
+ alt15=1;
+ }
+ switch (alt15) {
+ case 1 :
+ // XQueryLexer.g:343:36: '.' ( Digit )*
+ this.match('.');
+ // XQueryLexer.g:343:40: ( Digit )*
+ loop14:
+ do {
+ var alt14=2;
+ var LA14_0 = this.input.LA(1);
+
+ if ( ((LA14_0>='0' && LA14_0<='9')) ) {
+ alt14=1;
+ }
+
+
+ switch (alt14) {
+ case 1 :
+ // XQueryLexer.g:343:40: Digit
+ this.mDigit();
+
+
+ break;
+
+ default :
+ break loop14;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+
+
+
+
+
+ break;
+
+ }
+
+ if ( this.input.LA(1)=='E'||this.input.LA(1)=='e' ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+ // XQueryLexer.g:343:63: ( '+' | '-' )?
+ var alt17=2;
+ var LA17_0 = this.input.LA(1);
+
+ if ( (LA17_0=='+'||LA17_0=='-') ) {
+ alt17=1;
+ }
+ switch (alt17) {
+ case 1 :
+ // XQueryLexer.g:
+ if ( this.input.LA(1)=='+'||this.input.LA(1)=='-' ) {
+ this.input.consume();
+
+ }
+ else {
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ this.recover(mse);
+ throw mse;}
+
+
+
+ break;
+
+ }
+
+ this.mDigits();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_DoubleLiteral",
+
+ // $ANTLR start L_Comment
+ mL_Comment: function() {
+ try {
+ var _type = this.L_Comment;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:348:9: ( '(:' ( options {greedy=false; } : L_Comment | . )* ':)' )
+ // XQueryLexer.g:348:11: '(:' ( options {greedy=false; } : L_Comment | . )* ':)'
+ this.match("(:");
+
+ // XQueryLexer.g:348:16: ( options {greedy=false; } : L_Comment | . )*
+ loop18:
+ do {
+ var alt18=3;
+ var LA18_0 = this.input.LA(1);
+
+ if ( (LA18_0==':') ) {
+ var LA18_1 = this.input.LA(2);
+
+ if ( (LA18_1==')') ) {
+ alt18=3;
+ }
+ else if ( ((LA18_1>='\u0000' && LA18_1<='(')||(LA18_1>='*' && LA18_1<='\uFFFF')) ) {
+ alt18=2;
+ }
+
+
+ }
+ else if ( (LA18_0=='(') ) {
+ var LA18_2 = this.input.LA(2);
+
+ if ( (LA18_2==':') ) {
+ alt18=1;
+ }
+ else if ( ((LA18_2>='\u0000' && LA18_2<='9')||(LA18_2>=';' && LA18_2<='\uFFFF')) ) {
+ alt18=2;
+ }
+
+
+ }
+ else if ( ((LA18_0>='\u0000' && LA18_0<='\'')||(LA18_0>=')' && LA18_0<='9')||(LA18_0>=';' && LA18_0<='\uFFFF')) ) {
+ alt18=2;
+ }
+
+
+ switch (alt18) {
+ case 1 :
+ // XQueryLexer.g:348:42: L_Comment
+ this.mL_Comment();
+
+
+ break;
+ case 2 :
+ // XQueryLexer.g:348:54: .
+ this.matchAny();
+
+
+ break;
+
+ default :
+ break loop18;
+ }
+ } while (true);
+
+ this.match(":)");
+
+ _channel = HIDDEN;
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_Comment",
+
+ // $ANTLR start L_AnyChar
+ mL_AnyChar: function() {
+ try {
+ var _type = this.L_AnyChar;
+ var _channel = org.antlr.runtime.BaseRecognizer.DEFAULT_TOKEN_CHANNEL;
+ // XQueryLexer.g:351:11: ( . )
+ // XQueryLexer.g:351:13: .
+ this.matchAny();
+
+
+
+ this.state.type = _type;
+ this.state.channel = _channel;
+ }
+ finally {
+ }
+ },
+ // $ANTLR end "L_AnyChar",
+
+ mTokens: function() {
+ // XQueryLexer.g:1:8: ( ANCESTOR | ANCESTOR_OR_SELF | AND | AS | ASCENDING | AT | ATTRIBUTE | BASE_URI | BOUNDARY_SPACE | BY | CASE | CAST | CASTABLE | CHILD | COLLATION | COMMENT | CONSTRUCTION | COPY_NAMESPACES | DECLARE | DEFAULT | DESCENDANT | DESCENDANT_OR_SELF | DESCENDING | DIV | DOCUMENT | DOCUMENT_NODE | ELEMENT | ELSE | EMPTY | EMPTY_SEQUENCE | ENCODING | EQ | EVERY | EXCEPT | EXTERNAL | FOLLOWING | FOLLOWING_SIBLING | FOR | FUNCTION | GE | GREATEST | GT | IDIV | IF | IMPORT | IN | INHERIT | INSTANCE | INTERSECT | IS | ITEM | LAX | LE | LEAST | LET | LT | MOD | MODULE | NAMESPACE | NE | NO_INHERIT | NO_PRESERVE | NODE | OF | OPTION | OR | ORDER | ORDERED | ORDERING | PARENT | PRECEDING | PRECEDING_SIBLING | PRESERVE | PROCESSING_INSTRUCTION | RETURN | SATISFIES | SCHEMA | SCHEMA_ATTRIBUTE | SCHEMA_ELEMENT | SELF | SOME | STABLE | STRICT | STRIP | TEXT | THEN | TO | TREAT | TYPESWITCH | UNION | UNORDERED | VALIDATE | VARIABLE | VERSION | WHERE | XQUERY | CATCH | CONTEXT | COUNT | DECIMAL_FORMAT | DECIMAL_SEPARATOR | DIGIT | END | GROUP | GROUPING_SEPARATOR | INFINITY | MINUS_SIGN | NAMESPACE_NODE | NAN | NEXT | ONLY | OUTER | PATTERN_SEPARATOR | PERCENT | PER_MILLE | PREVIOUS | SLIDING | START | TRY | TUMBLING | WHEN | WINDOW | ZERO_DIGIT | AFTER | BEFORE | COPY | DELETE | FIRST | INSERT | INTO | LAST | MODIFY | NODES | RENAME | REPLACE | REVALIDATION | SKIP | UPDATING | VALUE | WITH | BLOCK | CONSTANT | EXIT | RETURNING | SEQUENTIAL | SET | SIMPLE | WHILE | EVAL | USING | APPEND_ONLY | AUTOMATICALLY | CHECK | COLLECTION | CONSTRAINT | CONST | EQUALITY | FOREACH | FOREIGN | FROM | INDEX | INTEGRITY | KEY | MAINTAINED | MANUALLY | MUTABLE | NON | ON | QUEUE | RANGE | READ_ONLY | UNIQUE | BINARY | PRIVATE | AMP_ER | APOS_ER | QUOT_ER | LPAREN | RPAREN | DOLLAR | LBRACKET | RBRACKET | LSQUARE | RSQUARE | EQUAL | BIND | NOTEQUAL | AMP | COMMA | QUESTION | STAR | PLUS | MINUS | SMALLER | GREATER | SMALLEREQ | GREATEREQ | SMALLER_SMALLER | GREATER_GREATER | SLASH | SLASH_SLASH | DOT | DOT_DOT | COLON | COLON_COLON | EMPTY_CLOSE_TAG | CLOSE_TAG | SEMICOLON | VBAR | PRAGMA_START | PRAGMA_END | XML_COMMENT_START | XML_COMMENT_END | PI_START | PI_END | ATTR_SIGN | CHARREF_DEC | CHARREF_HEX | APOS | QUOT | L_NCName | S | L_Pragma | L_DirCommentConstructor | L_DirPIConstructor | L_IntegerLiteral | L_DecimalLiteral | L_DoubleLiteral | L_Comment | L_AnyChar )
+ var alt19=230;
+ alt19 = this.dfa19.predict(this.input);
+ switch (alt19) {
+ case 1 :
+ // XQueryLexer.g:1:10: ANCESTOR
+ this.mANCESTOR();
+
+
+ break;
+ case 2 :
+ // XQueryLexer.g:1:19: ANCESTOR_OR_SELF
+ this.mANCESTOR_OR_SELF();
+
+
+ break;
+ case 3 :
+ // XQueryLexer.g:1:36: AND
+ this.mAND();
+
+
+ break;
+ case 4 :
+ // XQueryLexer.g:1:40: AS
+ this.mAS();
+
+
+ break;
+ case 5 :
+ // XQueryLexer.g:1:43: ASCENDING
+ this.mASCENDING();
+
+
+ break;
+ case 6 :
+ // XQueryLexer.g:1:53: AT
+ this.mAT();
+
+
+ break;
+ case 7 :
+ // XQueryLexer.g:1:56: ATTRIBUTE
+ this.mATTRIBUTE();
+
+
+ break;
+ case 8 :
+ // XQueryLexer.g:1:66: BASE_URI
+ this.mBASE_URI();
+
+
+ break;
+ case 9 :
+ // XQueryLexer.g:1:75: BOUNDARY_SPACE
+ this.mBOUNDARY_SPACE();
+
+
+ break;
+ case 10 :
+ // XQueryLexer.g:1:90: BY
+ this.mBY();
+
+
+ break;
+ case 11 :
+ // XQueryLexer.g:1:93: CASE
+ this.mCASE();
+
+
+ break;
+ case 12 :
+ // XQueryLexer.g:1:98: CAST
+ this.mCAST();
+
+
+ break;
+ case 13 :
+ // XQueryLexer.g:1:103: CASTABLE
+ this.mCASTABLE();
+
+
+ break;
+ case 14 :
+ // XQueryLexer.g:1:112: CHILD
+ this.mCHILD();
+
+
+ break;
+ case 15 :
+ // XQueryLexer.g:1:118: COLLATION
+ this.mCOLLATION();
+
+
+ break;
+ case 16 :
+ // XQueryLexer.g:1:128: COMMENT
+ this.mCOMMENT();
+
+
+ break;
+ case 17 :
+ // XQueryLexer.g:1:136: CONSTRUCTION
+ this.mCONSTRUCTION();
+
+
+ break;
+ case 18 :
+ // XQueryLexer.g:1:149: COPY_NAMESPACES
+ this.mCOPY_NAMESPACES();
+
+
+ break;
+ case 19 :
+ // XQueryLexer.g:1:165: DECLARE
+ this.mDECLARE();
+
+
+ break;
+ case 20 :
+ // XQueryLexer.g:1:173: DEFAULT
+ this.mDEFAULT();
+
+
+ break;
+ case 21 :
+ // XQueryLexer.g:1:181: DESCENDANT
+ this.mDESCENDANT();
+
+
+ break;
+ case 22 :
+ // XQueryLexer.g:1:192: DESCENDANT_OR_SELF
+ this.mDESCENDANT_OR_SELF();
+
+
+ break;
+ case 23 :
+ // XQueryLexer.g:1:211: DESCENDING
+ this.mDESCENDING();
+
+
+ break;
+ case 24 :
+ // XQueryLexer.g:1:222: DIV
+ this.mDIV();
+
+
+ break;
+ case 25 :
+ // XQueryLexer.g:1:226: DOCUMENT
+ this.mDOCUMENT();
+
+
+ break;
+ case 26 :
+ // XQueryLexer.g:1:235: DOCUMENT_NODE
+ this.mDOCUMENT_NODE();
+
+
+ break;
+ case 27 :
+ // XQueryLexer.g:1:249: ELEMENT
+ this.mELEMENT();
+
+
+ break;
+ case 28 :
+ // XQueryLexer.g:1:257: ELSE
+ this.mELSE();
+
+
+ break;
+ case 29 :
+ // XQueryLexer.g:1:262: EMPTY
+ this.mEMPTY();
+
+
+ break;
+ case 30 :
+ // XQueryLexer.g:1:268: EMPTY_SEQUENCE
+ this.mEMPTY_SEQUENCE();
+
+
+ break;
+ case 31 :
+ // XQueryLexer.g:1:283: ENCODING
+ this.mENCODING();
+
+
+ break;
+ case 32 :
+ // XQueryLexer.g:1:292: EQ
+ this.mEQ();
+
+
+ break;
+ case 33 :
+ // XQueryLexer.g:1:295: EVERY
+ this.mEVERY();
+
+
+ break;
+ case 34 :
+ // XQueryLexer.g:1:301: EXCEPT
+ this.mEXCEPT();
+
+
+ break;
+ case 35 :
+ // XQueryLexer.g:1:308: EXTERNAL
+ this.mEXTERNAL();
+
+
+ break;
+ case 36 :
+ // XQueryLexer.g:1:317: FOLLOWING
+ this.mFOLLOWING();
+
+
+ break;
+ case 37 :
+ // XQueryLexer.g:1:327: FOLLOWING_SIBLING
+ this.mFOLLOWING_SIBLING();
+
+
+ break;
+ case 38 :
+ // XQueryLexer.g:1:345: FOR
+ this.mFOR();
+
+
+ break;
+ case 39 :
+ // XQueryLexer.g:1:349: FUNCTION
+ this.mFUNCTION();
+
+
+ break;
+ case 40 :
+ // XQueryLexer.g:1:358: GE
+ this.mGE();
+
+
+ break;
+ case 41 :
+ // XQueryLexer.g:1:361: GREATEST
+ this.mGREATEST();
+
+
+ break;
+ case 42 :
+ // XQueryLexer.g:1:370: GT
+ this.mGT();
+
+
+ break;
+ case 43 :
+ // XQueryLexer.g:1:373: IDIV
+ this.mIDIV();
+
+
+ break;
+ case 44 :
+ // XQueryLexer.g:1:378: IF
+ this.mIF();
+
+
+ break;
+ case 45 :
+ // XQueryLexer.g:1:381: IMPORT
+ this.mIMPORT();
+
+
+ break;
+ case 46 :
+ // XQueryLexer.g:1:388: IN
+ this.mIN();
+
+
+ break;
+ case 47 :
+ // XQueryLexer.g:1:391: INHERIT
+ this.mINHERIT();
+
+
+ break;
+ case 48 :
+ // XQueryLexer.g:1:399: INSTANCE
+ this.mINSTANCE();
+
+
+ break;
+ case 49 :
+ // XQueryLexer.g:1:408: INTERSECT
+ this.mINTERSECT();
+
+
+ break;
+ case 50 :
+ // XQueryLexer.g:1:418: IS
+ this.mIS();
+
+
+ break;
+ case 51 :
+ // XQueryLexer.g:1:421: ITEM
+ this.mITEM();
+
+
+ break;
+ case 52 :
+ // XQueryLexer.g:1:426: LAX
+ this.mLAX();
+
+
+ break;
+ case 53 :
+ // XQueryLexer.g:1:430: LE
+ this.mLE();
+
+
+ break;
+ case 54 :
+ // XQueryLexer.g:1:433: LEAST
+ this.mLEAST();
+
+
+ break;
+ case 55 :
+ // XQueryLexer.g:1:439: LET
+ this.mLET();
+
+
+ break;
+ case 56 :
+ // XQueryLexer.g:1:443: LT
+ this.mLT();
+
+
+ break;
+ case 57 :
+ // XQueryLexer.g:1:446: MOD
+ this.mMOD();
+
+
+ break;
+ case 58 :
+ // XQueryLexer.g:1:450: MODULE
+ this.mMODULE();
+
+
+ break;
+ case 59 :
+ // XQueryLexer.g:1:457: NAMESPACE
+ this.mNAMESPACE();
+
+
+ break;
+ case 60 :
+ // XQueryLexer.g:1:467: NE
+ this.mNE();
+
+
+ break;
+ case 61 :
+ // XQueryLexer.g:1:470: NO_INHERIT
+ this.mNO_INHERIT();
+
+
+ break;
+ case 62 :
+ // XQueryLexer.g:1:481: NO_PRESERVE
+ this.mNO_PRESERVE();
+
+
+ break;
+ case 63 :
+ // XQueryLexer.g:1:493: NODE
+ this.mNODE();
+
+
+ break;
+ case 64 :
+ // XQueryLexer.g:1:498: OF
+ this.mOF();
+
+
+ break;
+ case 65 :
+ // XQueryLexer.g:1:501: OPTION
+ this.mOPTION();
+
+
+ break;
+ case 66 :
+ // XQueryLexer.g:1:508: OR
+ this.mOR();
+
+
+ break;
+ case 67 :
+ // XQueryLexer.g:1:511: ORDER
+ this.mORDER();
+
+
+ break;
+ case 68 :
+ // XQueryLexer.g:1:517: ORDERED
+ this.mORDERED();
+
+
+ break;
+ case 69 :
+ // XQueryLexer.g:1:525: ORDERING
+ this.mORDERING();
+
+
+ break;
+ case 70 :
+ // XQueryLexer.g:1:534: PARENT
+ this.mPARENT();
+
+
+ break;
+ case 71 :
+ // XQueryLexer.g:1:541: PRECEDING
+ this.mPRECEDING();
+
+
+ break;
+ case 72 :
+ // XQueryLexer.g:1:551: PRECEDING_SIBLING
+ this.mPRECEDING_SIBLING();
+
+
+ break;
+ case 73 :
+ // XQueryLexer.g:1:569: PRESERVE
+ this.mPRESERVE();
+
+
+ break;
+ case 74 :
+ // XQueryLexer.g:1:578: PROCESSING_INSTRUCTION
+ this.mPROCESSING_INSTRUCTION();
+
+
+ break;
+ case 75 :
+ // XQueryLexer.g:1:601: RETURN
+ this.mRETURN();
+
+
+ break;
+ case 76 :
+ // XQueryLexer.g:1:608: SATISFIES
+ this.mSATISFIES();
+
+
+ break;
+ case 77 :
+ // XQueryLexer.g:1:618: SCHEMA
+ this.mSCHEMA();
+
+
+ break;
+ case 78 :
+ // XQueryLexer.g:1:625: SCHEMA_ATTRIBUTE
+ this.mSCHEMA_ATTRIBUTE();
+
+
+ break;
+ case 79 :
+ // XQueryLexer.g:1:642: SCHEMA_ELEMENT
+ this.mSCHEMA_ELEMENT();
+
+
+ break;
+ case 80 :
+ // XQueryLexer.g:1:657: SELF
+ this.mSELF();
+
+
+ break;
+ case 81 :
+ // XQueryLexer.g:1:662: SOME
+ this.mSOME();
+
+
+ break;
+ case 82 :
+ // XQueryLexer.g:1:667: STABLE
+ this.mSTABLE();
+
+
+ break;
+ case 83 :
+ // XQueryLexer.g:1:674: STRICT
+ this.mSTRICT();
+
+
+ break;
+ case 84 :
+ // XQueryLexer.g:1:681: STRIP
+ this.mSTRIP();
+
+
+ break;
+ case 85 :
+ // XQueryLexer.g:1:687: TEXT
+ this.mTEXT();
+
+
+ break;
+ case 86 :
+ // XQueryLexer.g:1:692: THEN
+ this.mTHEN();
+
+
+ break;
+ case 87 :
+ // XQueryLexer.g:1:697: TO
+ this.mTO();
+
+
+ break;
+ case 88 :
+ // XQueryLexer.g:1:700: TREAT
+ this.mTREAT();
+
+
+ break;
+ case 89 :
+ // XQueryLexer.g:1:706: TYPESWITCH
+ this.mTYPESWITCH();
+
+
+ break;
+ case 90 :
+ // XQueryLexer.g:1:717: UNION
+ this.mUNION();
+
+
+ break;
+ case 91 :
+ // XQueryLexer.g:1:723: UNORDERED
+ this.mUNORDERED();
+
+
+ break;
+ case 92 :
+ // XQueryLexer.g:1:733: VALIDATE
+ this.mVALIDATE();
+
+
+ break;
+ case 93 :
+ // XQueryLexer.g:1:742: VARIABLE
+ this.mVARIABLE();
+
+
+ break;
+ case 94 :
+ // XQueryLexer.g:1:751: VERSION
+ this.mVERSION();
+
+
+ break;
+ case 95 :
+ // XQueryLexer.g:1:759: WHERE
+ this.mWHERE();
+
+
+ break;
+ case 96 :
+ // XQueryLexer.g:1:765: XQUERY
+ this.mXQUERY();
+
+
+ break;
+ case 97 :
+ // XQueryLexer.g:1:772: CATCH
+ this.mCATCH();
+
+
+ break;
+ case 98 :
+ // XQueryLexer.g:1:778: CONTEXT
+ this.mCONTEXT();
+
+
+ break;
+ case 99 :
+ // XQueryLexer.g:1:786: COUNT
+ this.mCOUNT();
+
+
+ break;
+ case 100 :
+ // XQueryLexer.g:1:792: DECIMAL_FORMAT
+ this.mDECIMAL_FORMAT();
+
+
+ break;
+ case 101 :
+ // XQueryLexer.g:1:807: DECIMAL_SEPARATOR
+ this.mDECIMAL_SEPARATOR();
+
+
+ break;
+ case 102 :
+ // XQueryLexer.g:1:825: DIGIT
+ this.mDIGIT();
+
+
+ break;
+ case 103 :
+ // XQueryLexer.g:1:831: END
+ this.mEND();
+
+
+ break;
+ case 104 :
+ // XQueryLexer.g:1:835: GROUP
+ this.mGROUP();
+
+
+ break;
+ case 105 :
+ // XQueryLexer.g:1:841: GROUPING_SEPARATOR
+ this.mGROUPING_SEPARATOR();
+
+
+ break;
+ case 106 :
+ // XQueryLexer.g:1:860: INFINITY
+ this.mINFINITY();
+
+
+ break;
+ case 107 :
+ // XQueryLexer.g:1:869: MINUS_SIGN
+ this.mMINUS_SIGN();
+
+
+ break;
+ case 108 :
+ // XQueryLexer.g:1:880: NAMESPACE_NODE
+ this.mNAMESPACE_NODE();
+
+
+ break;
+ case 109 :
+ // XQueryLexer.g:1:895: NAN
+ this.mNAN();
+
+
+ break;
+ case 110 :
+ // XQueryLexer.g:1:899: NEXT
+ this.mNEXT();
+
+
+ break;
+ case 111 :
+ // XQueryLexer.g:1:904: ONLY
+ this.mONLY();
+
+
+ break;
+ case 112 :
+ // XQueryLexer.g:1:909: OUTER
+ this.mOUTER();
+
+
+ break;
+ case 113 :
+ // XQueryLexer.g:1:915: PATTERN_SEPARATOR
+ this.mPATTERN_SEPARATOR();
+
+
+ break;
+ case 114 :
+ // XQueryLexer.g:1:933: PERCENT
+ this.mPERCENT();
+
+
+ break;
+ case 115 :
+ // XQueryLexer.g:1:941: PER_MILLE
+ this.mPER_MILLE();
+
+
+ break;
+ case 116 :
+ // XQueryLexer.g:1:951: PREVIOUS
+ this.mPREVIOUS();
+
+
+ break;
+ case 117 :
+ // XQueryLexer.g:1:960: SLIDING
+ this.mSLIDING();
+
+
+ break;
+ case 118 :
+ // XQueryLexer.g:1:968: START
+ this.mSTART();
+
+
+ break;
+ case 119 :
+ // XQueryLexer.g:1:974: TRY
+ this.mTRY();
+
+
+ break;
+ case 120 :
+ // XQueryLexer.g:1:978: TUMBLING
+ this.mTUMBLING();
+
+
+ break;
+ case 121 :
+ // XQueryLexer.g:1:987: WHEN
+ this.mWHEN();
+
+
+ break;
+ case 122 :
+ // XQueryLexer.g:1:992: WINDOW
+ this.mWINDOW();
+
+
+ break;
+ case 123 :
+ // XQueryLexer.g:1:999: ZERO_DIGIT
+ this.mZERO_DIGIT();
+
+
+ break;
+ case 124 :
+ // XQueryLexer.g:1:1010: AFTER
+ this.mAFTER();
+
+
+ break;
+ case 125 :
+ // XQueryLexer.g:1:1016: BEFORE
+ this.mBEFORE();
+
+
+ break;
+ case 126 :
+ // XQueryLexer.g:1:1023: COPY
+ this.mCOPY();
+
+
+ break;
+ case 127 :
+ // XQueryLexer.g:1:1028: DELETE
+ this.mDELETE();
+
+
+ break;
+ case 128 :
+ // XQueryLexer.g:1:1035: FIRST
+ this.mFIRST();
+
+
+ break;
+ case 129 :
+ // XQueryLexer.g:1:1041: INSERT
+ this.mINSERT();
+
+
+ break;
+ case 130 :
+ // XQueryLexer.g:1:1048: INTO
+ this.mINTO();
+
+
+ break;
+ case 131 :
+ // XQueryLexer.g:1:1053: LAST
+ this.mLAST();
+
+
+ break;
+ case 132 :
+ // XQueryLexer.g:1:1058: MODIFY
+ this.mMODIFY();
+
+
+ break;
+ case 133 :
+ // XQueryLexer.g:1:1065: NODES
+ this.mNODES();
+
+
+ break;
+ case 134 :
+ // XQueryLexer.g:1:1071: RENAME
+ this.mRENAME();
+
+
+ break;
+ case 135 :
+ // XQueryLexer.g:1:1078: REPLACE
+ this.mREPLACE();
+
+
+ break;
+ case 136 :
+ // XQueryLexer.g:1:1086: REVALIDATION
+ this.mREVALIDATION();
+
+
+ break;
+ case 137 :
+ // XQueryLexer.g:1:1099: SKIP
+ this.mSKIP();
+
+
+ break;
+ case 138 :
+ // XQueryLexer.g:1:1104: UPDATING
+ this.mUPDATING();
+
+
+ break;
+ case 139 :
+ // XQueryLexer.g:1:1113: VALUE
+ this.mVALUE();
+
+
+ break;
+ case 140 :
+ // XQueryLexer.g:1:1119: WITH
+ this.mWITH();
+
+
+ break;
+ case 141 :
+ // XQueryLexer.g:1:1124: BLOCK
+ this.mBLOCK();
+
+
+ break;
+ case 142 :
+ // XQueryLexer.g:1:1130: CONSTANT
+ this.mCONSTANT();
+
+
+ break;
+ case 143 :
+ // XQueryLexer.g:1:1139: EXIT
+ this.mEXIT();
+
+
+ break;
+ case 144 :
+ // XQueryLexer.g:1:1144: RETURNING
+ this.mRETURNING();
+
+
+ break;
+ case 145 :
+ // XQueryLexer.g:1:1154: SEQUENTIAL
+ this.mSEQUENTIAL();
+
+
+ break;
+ case 146 :
+ // XQueryLexer.g:1:1165: SET
+ this.mSET();
+
+
+ break;
+ case 147 :
+ // XQueryLexer.g:1:1169: SIMPLE
+ this.mSIMPLE();
+
+
+ break;
+ case 148 :
+ // XQueryLexer.g:1:1176: WHILE
+ this.mWHILE();
+
+
+ break;
+ case 149 :
+ // XQueryLexer.g:1:1182: EVAL
+ this.mEVAL();
+
+
+ break;
+ case 150 :
+ // XQueryLexer.g:1:1187: USING
+ this.mUSING();
+
+
+ break;
+ case 151 :
+ // XQueryLexer.g:1:1193: APPEND_ONLY
+ this.mAPPEND_ONLY();
+
+
+ break;
+ case 152 :
+ // XQueryLexer.g:1:1205: AUTOMATICALLY
+ this.mAUTOMATICALLY();
+
+
+ break;
+ case 153 :
+ // XQueryLexer.g:1:1219: CHECK
+ this.mCHECK();
+
+
+ break;
+ case 154 :
+ // XQueryLexer.g:1:1225: COLLECTION
+ this.mCOLLECTION();
+
+
+ break;
+ case 155 :
+ // XQueryLexer.g:1:1236: CONSTRAINT
+ this.mCONSTRAINT();
+
+
+ break;
+ case 156 :
+ // XQueryLexer.g:1:1247: CONST
+ this.mCONST();
+
+
+ break;
+ case 157 :
+ // XQueryLexer.g:1:1253: EQUALITY
+ this.mEQUALITY();
+
+
+ break;
+ case 158 :
+ // XQueryLexer.g:1:1262: FOREACH
+ this.mFOREACH();
+
+
+ break;
+ case 159 :
+ // XQueryLexer.g:1:1270: FOREIGN
+ this.mFOREIGN();
+
+
+ break;
+ case 160 :
+ // XQueryLexer.g:1:1278: FROM
+ this.mFROM();
+
+
+ break;
+ case 161 :
+ // XQueryLexer.g:1:1283: INDEX
+ this.mINDEX();
+
+
+ break;
+ case 162 :
+ // XQueryLexer.g:1:1289: INTEGRITY
+ this.mINTEGRITY();
+
+
+ break;
+ case 163 :
+ // XQueryLexer.g:1:1299: KEY
+ this.mKEY();
+
+
+ break;
+ case 164 :
+ // XQueryLexer.g:1:1303: MAINTAINED
+ this.mMAINTAINED();
+
+
+ break;
+ case 165 :
+ // XQueryLexer.g:1:1314: MANUALLY
+ this.mMANUALLY();
+
+
+ break;
+ case 166 :
+ // XQueryLexer.g:1:1323: MUTABLE
+ this.mMUTABLE();
+
+
+ break;
+ case 167 :
+ // XQueryLexer.g:1:1331: NON
+ this.mNON();
+
+
+ break;
+ case 168 :
+ // XQueryLexer.g:1:1335: ON
+ this.mON();
+
+
+ break;
+ case 169 :
+ // XQueryLexer.g:1:1338: QUEUE
+ this.mQUEUE();
+
+
+ break;
+ case 170 :
+ // XQueryLexer.g:1:1344: RANGE
+ this.mRANGE();
+
+
+ break;
+ case 171 :
+ // XQueryLexer.g:1:1350: READ_ONLY
+ this.mREAD_ONLY();
+
+
+ break;
+ case 172 :
+ // XQueryLexer.g:1:1360: UNIQUE
+ this.mUNIQUE();
+
+
+ break;
+ case 173 :
+ // XQueryLexer.g:1:1367: BINARY
+ this.mBINARY();
+
+
+ break;
+ case 174 :
+ // XQueryLexer.g:1:1374: PRIVATE
+ this.mPRIVATE();
+
+
+ break;
+ case 175 :
+ // XQueryLexer.g:1:1382: AMP_ER
+ this.mAMP_ER();
+
+
+ break;
+ case 176 :
+ // XQueryLexer.g:1:1389: APOS_ER
+ this.mAPOS_ER();
+
+
+ break;
+ case 177 :
+ // XQueryLexer.g:1:1397: QUOT_ER
+ this.mQUOT_ER();
+
+
+ break;
+ case 178 :
+ // XQueryLexer.g:1:1405: LPAREN
+ this.mLPAREN();
+
+
+ break;
+ case 179 :
+ // XQueryLexer.g:1:1412: RPAREN
+ this.mRPAREN();
+
+
+ break;
+ case 180 :
+ // XQueryLexer.g:1:1419: DOLLAR
+ this.mDOLLAR();
+
+
+ break;
+ case 181 :
+ // XQueryLexer.g:1:1426: LBRACKET
+ this.mLBRACKET();
+
+
+ break;
+ case 182 :
+ // XQueryLexer.g:1:1435: RBRACKET
+ this.mRBRACKET();
+
+
+ break;
+ case 183 :
+ // XQueryLexer.g:1:1444: LSQUARE
+ this.mLSQUARE();
+
+
+ break;
+ case 184 :
+ // XQueryLexer.g:1:1452: RSQUARE
+ this.mRSQUARE();
+
+
+ break;
+ case 185 :
+ // XQueryLexer.g:1:1460: EQUAL
+ this.mEQUAL();
+
+
+ break;
+ case 186 :
+ // XQueryLexer.g:1:1466: BIND
+ this.mBIND();
+
+
+ break;
+ case 187 :
+ // XQueryLexer.g:1:1471: NOTEQUAL
+ this.mNOTEQUAL();
+
+
+ break;
+ case 188 :
+ // XQueryLexer.g:1:1480: AMP
+ this.mAMP();
+
+
+ break;
+ case 189 :
+ // XQueryLexer.g:1:1484: COMMA
+ this.mCOMMA();
+
+
+ break;
+ case 190 :
+ // XQueryLexer.g:1:1490: QUESTION
+ this.mQUESTION();
+
+
+ break;
+ case 191 :
+ // XQueryLexer.g:1:1499: STAR
+ this.mSTAR();
+
+
+ break;
+ case 192 :
+ // XQueryLexer.g:1:1504: PLUS
+ this.mPLUS();
+
+
+ break;
+ case 193 :
+ // XQueryLexer.g:1:1509: MINUS
+ this.mMINUS();
+
+
+ break;
+ case 194 :
+ // XQueryLexer.g:1:1515: SMALLER
+ this.mSMALLER();
+
+
+ break;
+ case 195 :
+ // XQueryLexer.g:1:1523: GREATER
+ this.mGREATER();
+
+
+ break;
+ case 196 :
+ // XQueryLexer.g:1:1531: SMALLEREQ
+ this.mSMALLEREQ();
+
+
+ break;
+ case 197 :
+ // XQueryLexer.g:1:1541: GREATEREQ
+ this.mGREATEREQ();
+
+
+ break;
+ case 198 :
+ // XQueryLexer.g:1:1551: SMALLER_SMALLER
+ this.mSMALLER_SMALLER();
+
+
+ break;
+ case 199 :
+ // XQueryLexer.g:1:1567: GREATER_GREATER
+ this.mGREATER_GREATER();
+
+
+ break;
+ case 200 :
+ // XQueryLexer.g:1:1583: SLASH
+ this.mSLASH();
+
+
+ break;
+ case 201 :
+ // XQueryLexer.g:1:1589: SLASH_SLASH
+ this.mSLASH_SLASH();
+
+
+ break;
+ case 202 :
+ // XQueryLexer.g:1:1601: DOT
+ this.mDOT();
+
+
+ break;
+ case 203 :
+ // XQueryLexer.g:1:1605: DOT_DOT
+ this.mDOT_DOT();
+
+
+ break;
+ case 204 :
+ // XQueryLexer.g:1:1613: COLON
+ this.mCOLON();
+
+
+ break;
+ case 205 :
+ // XQueryLexer.g:1:1619: COLON_COLON
+ this.mCOLON_COLON();
+
+
+ break;
+ case 206 :
+ // XQueryLexer.g:1:1631: EMPTY_CLOSE_TAG
+ this.mEMPTY_CLOSE_TAG();
+
+
+ break;
+ case 207 :
+ // XQueryLexer.g:1:1647: CLOSE_TAG
+ this.mCLOSE_TAG();
+
+
+ break;
+ case 208 :
+ // XQueryLexer.g:1:1657: SEMICOLON
+ this.mSEMICOLON();
+
+
+ break;
+ case 209 :
+ // XQueryLexer.g:1:1667: VBAR
+ this.mVBAR();
+
+
+ break;
+ case 210 :
+ // XQueryLexer.g:1:1672: PRAGMA_START
+ this.mPRAGMA_START();
+
+
+ break;
+ case 211 :
+ // XQueryLexer.g:1:1685: PRAGMA_END
+ this.mPRAGMA_END();
+
+
+ break;
+ case 212 :
+ // XQueryLexer.g:1:1696: XML_COMMENT_START
+ this.mXML_COMMENT_START();
+
+
+ break;
+ case 213 :
+ // XQueryLexer.g:1:1714: XML_COMMENT_END
+ this.mXML_COMMENT_END();
+
+
+ break;
+ case 214 :
+ // XQueryLexer.g:1:1730: PI_START
+ this.mPI_START();
+
+
+ break;
+ case 215 :
+ // XQueryLexer.g:1:1739: PI_END
+ this.mPI_END();
+
+
+ break;
+ case 216 :
+ // XQueryLexer.g:1:1746: ATTR_SIGN
+ this.mATTR_SIGN();
+
+
+ break;
+ case 217 :
+ // XQueryLexer.g:1:1756: CHARREF_DEC
+ this.mCHARREF_DEC();
+
+
+ break;
+ case 218 :
+ // XQueryLexer.g:1:1768: CHARREF_HEX
+ this.mCHARREF_HEX();
+
+
+ break;
+ case 219 :
+ // XQueryLexer.g:1:1780: APOS
+ this.mAPOS();
+
+
+ break;
+ case 220 :
+ // XQueryLexer.g:1:1785: QUOT
+ this.mQUOT();
+
+
+ break;
+ case 221 :
+ // XQueryLexer.g:1:1790: L_NCName
+ this.mL_NCName();
+
+
+ break;
+ case 222 :
+ // XQueryLexer.g:1:1799: S
+ this.mS();
+
+
+ break;
+ case 223 :
+ // XQueryLexer.g:1:1801: L_Pragma
+ this.mL_Pragma();
+
+
+ break;
+ case 224 :
+ // XQueryLexer.g:1:1810: L_DirCommentConstructor
+ this.mL_DirCommentConstructor();
+
+
+ break;
+ case 225 :
+ // XQueryLexer.g:1:1834: L_DirPIConstructor
+ this.mL_DirPIConstructor();
+
+
+ break;
+ case 226 :
+ // XQueryLexer.g:1:1853: L_IntegerLiteral
+ this.mL_IntegerLiteral();
+
+
+ break;
+ case 227 :
+ // XQueryLexer.g:1:1870: L_DecimalLiteral
+ this.mL_DecimalLiteral();
+
+
+ break;
+ case 228 :
+ // XQueryLexer.g:1:1887: L_DoubleLiteral
+ this.mL_DoubleLiteral();
+
+
+ break;
+ case 229 :
+ // XQueryLexer.g:1:1903: L_Comment
+ this.mL_Comment();
+
+
+ break;
+ case 230 :
+ // XQueryLexer.g:1:1913: L_AnyChar
+ this.mL_AnyChar();
+
+
+ break;
+
+ }
+
+ }
+
+}, true); // important to pass true to overwrite default implementations
+
+org.antlr.lang.augmentObject(XQueryLexer, {
+ DFA19_eotS:
+ "\u0001\uffff\u0018\u003e\u0001\u008e\u0007\uffff\u0001\u0098\u0001"+
+ "\u0036\u0001\u009b\u0001\uffff\u0001\u009e\u0002\uffff\u0001\u00a2\u0001"+
+ "\u00a8\u0001\u00ab\u0001\u00ae\u0001\u00b0\u0002\uffff\u0001\u0036\u0005"+
+ "\uffff\u0001\u00b9\u0001\uffff\u0001\u003e\u0001\u00c0\u0001\u00c2\u0004"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u00ca\u000c\u003e\u0001\u00e4\u0006"+
+ "\u003e\u0001\u00ef\u0001\u003e\u0001\u00f2\u0001\u003e\u0001\u00f4\u0001"+
+ "\u003e\u0001\u00fb\u0001\u00fc\u0002\u003e\u0001\u0102\u0001\u0103\u0005"+
+ "\u003e\u0001\u010b\u0001\u003e\u0001\u010f\u0001\u003e\u0001\u0112\u0001"+
+ "\u0114\u0010\u003e\u0001\u012f\u000f\u003e\u0001\u0145\u000d\uffff\u0001"+
+ "\u0148\u000c\uffff\u0001\u014a\u0009\uffff\u0001\u014c\u0008\uffff\u0001"+
+ "\u00b9\u0001\u014c\u0001\uffff\u0001\u003e\u0001\u014f\u0001\u003e\u0001"+
+ "\uffff\u0001\u003e\u0001\uffff\u0004\u003e\u0001\u0156\u0002\u003e\u0001"+
+ "\uffff\u0010\u003e\u0001\u016c\u0006\u003e\u0001\u0173\u0001\u003e\u0001"+
+ "\uffff\u0006\u003e\u0001\u017c\u0003\u003e\u0001\uffff\u0002\u003e\u0001"+
+ "\uffff\u0001\u003e\u0001\uffff\u0006\u003e\u0002\uffff\u0001\u003e\u0001"+
+ "\u018c\u0002\u003e\u0001\u018f\u0002\uffff\u0001\u0192\u0006\u003e\u0001"+
+ "\uffff\u0002\u003e\u0001\u019c\u0001\uffff\u0002\u003e\u0001\uffff\u0001"+
+ "\u003e\u0001\uffff\u0011\u003e\u0001\u01b4\u0008\u003e\u0001\uffff\u0001"+
+ "\u003e\u0001\u01bf\u000e\u003e\u0001\u01d1\u0001\u003e\u0001\u01d3\u0002"+
+ "\u003e\u0008\uffff\u0001\u014c\u0001\u003e\u0001\uffff\u0004\u003e\u0001"+
+ "\u01dc\u0001\u003e\u0001\uffff\u0005\u003e\u0001\u01e3\u0001\u01e5\u0007"+
+ "\u003e\u0001\u01ef\u0006\u003e\u0001\uffff\u0003\u003e\u0001\u01f9\u0002"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u01fe\u0002\u003e\u0001\u0201\u0002"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u0207\u0002\u003e\u0001\u020a\u0005"+
+ "\u003e\u0001\u0211\u0002\u003e\u0001\u0214\u0001\uffff\u0001\u0215\u0001"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\uffff\u0005\u003e\u0001\u021e\u0002"+
+ "\u003e\u0001\u0222\u0001\uffff\u0002\u003e\u0001\u0225\u0012\u003e\u0001"+
+ "\u0238\u0001\u003e\u0001\uffff\u0001\u023a\u0004\u003e\u0001\u0240\u0001"+
+ "\u003e\u0001\u0242\u0001\u0243\u0001\u003e\u0001\uffff\u000c\u003e\u0001"+
+ "\u0251\u0002\u003e\u0001\u0254\u0001\u003e\u0001\uffff\u0001\u003e\u0001"+
+ "\uffff\u0001\u003e\u0001\u0258\u0001\u0259\u0003\u003e\u0001\u025e\u0001"+
+ "\u003e\u0001\uffff\u0004\u003e\u0001\u0264\u0001\u003e\u0001\uffff\u0001"+
+ "\u003e\u0001\uffff\u0001\u0267\u0001\u0268\u0001\u0269\u0003\u003e\u0001"+
+ "\u026f\u0002\u003e\u0001\uffff\u0001\u0272\u0005\u003e\u0001\u0278\u0002"+
+ "\u003e\u0001\uffff\u0001\u027c\u0002\u003e\u0001\u027f\u0001\uffff\u0002"+
+ "\u003e\u0001\uffff\u0004\u003e\u0001\u0286\u0001\uffff\u0001\u003e\u0001"+
+ "\u0289\u0001\uffff\u0006\u003e\u0001\uffff\u0001\u003e\u0001\u0291\u0002"+
+ "\uffff\u0001\u0292\u0007\u003e\u0001\uffff\u0002\u003e\u0001\u029c\u0001"+
+ "\uffff\u0001\u003e\u0001\u02a0\u0001\uffff\u0001\u02a1\u000e\u003e\u0001"+
+ "\u02b0\u0002\u003e\u0001\uffff\u0001\u003e\u0001\uffff\u0001\u003e\u0001"+
+ "\u02b5\u0001\u003e\u0001\u02b7\u0001\u003e\u0001\uffff\u0001\u003e\u0002"+
+ "\uffff\u0001\u02ba\u0002\u003e\u0001\u02bd\u0003\u003e\u0001\u02c1\u0001"+
+ "\u003e\u0001\u02c3\u0002\u003e\u0001\u02c6\u0001\uffff\u0001\u02c7\u0001"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u02cb\u0003\uffff\u0003\u003e\u0001"+
+ "\uffff\u0004\u003e\u0001\u02d3\u0001\uffff\u0001\u02d4\u0001\u003e\u0003"+
+ "\uffff\u0005\u003e\u0001\uffff\u0002\u003e\u0001\uffff\u0004\u003e\u0001"+
+ "\u02e2\u0001\uffff\u0003\u003e\u0001\uffff\u0002\u003e\u0001\uffff\u0001"+
+ "\u02e8\u0005\u003e\u0001\uffff\u0002\u003e\u0001\uffff\u0001\u02f0\u0002"+
+ "\u003e\u0001\u02f3\u0003\u003e\u0002\uffff\u0001\u02f7\u0001\u02f8\u0007"+
+ "\u003e\u0001\uffff\u0001\u0300\u0002\u003e\u0002\uffff\u0001\u0303\u0008"+
+ "\u003e\u0001\u030d\u0001\u030e\u0003\u003e\u0001\uffff\u0001\u003e\u0001"+
+ "\u0314\u0001\u003e\u0001\u0316\u0001\uffff\u0001\u0317\u0001\uffff\u0001"+
+ "\u003e\u0001\u0319\u0001\uffff\u0002\u003e\u0001\uffff\u0001\u031c\u0002"+
+ "\u003e\u0001\uffff\u0001\u003e\u0001\uffff\u0002\u003e\u0002\uffff\u0001"+
+ "\u0322\u0001\u0323\u0001\u003e\u0001\uffff\u0007\u003e\u0002\uffff\u0003"+
+ "\u003e\u0001\u032f\u0003\u003e\u0001\u0333\u0001\u003e\u0001\u0335\u0001"+
+ "\u003e\u0001\u0337\u0001\u003e\u0001\uffff\u0001\u003e\u0001\u033b\u0003"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u0341\u0001\u0342\u0003\u003e\u0001"+
+ "\uffff\u0001\u0346\u0001\u003e\u0001\uffff\u0003\u003e\u0002\uffff\u0003"+
+ "\u003e\u0001\u034e\u0003\u003e\u0001\uffff\u0001\u0352\u0001\u003e\u0001"+
+ "\uffff\u0005\u003e\u0001\u0359\u0001\u035a\u0002\u003e\u0002\uffff\u0001"+
+ "\u035d\u0004\u003e\u0001\uffff\u0001\u003e\u0002\uffff\u0001\u0364\u0001"+
+ "\uffff\u0002\u003e\u0001\uffff\u0004\u003e\u0001\u036b\u0002\uffff\u0001"+
+ "\u003e\u0001\u036e\u0004\u003e\u0001\u0373\u0001\u003e\u0001\u0375\u0002"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u037a\u0001\uffff\u0001\u003e\u0001"+
+ "\uffff\u0001\u003e\u0001\uffff\u0002\u003e\u0001\u0381\u0001\uffff\u0001"+
+ "\u003e\u0001\u0383\u0001\u0384\u0001\u0385\u0001\u003e\u0002\uffff\u0001"+
+ "\u0387\u0001\u0388\u0001\u003e\u0001\uffff\u0001\u038a\u0002\u003e\u0001"+
+ "\u038d\u0002\u003e\u0001\u0390\u0001\uffff\u0003\u003e\u0001\uffff\u0001"+
+ "\u0394\u0002\u003e\u0001\u0397\u0001\u0398\u0001\u003e\u0002\uffff\u0002"+
+ "\u003e\u0001\uffff\u0006\u003e\u0001\uffff\u0001\u003e\u0001\u03a3\u0001"+
+ "\u003e\u0001\u03a5\u0001\u03a6\u0001\u03a7\u0001\uffff\u0002\u003e\u0001"+
+ "\uffff\u0001\u03aa\u0001\u03ab\u0002\u003e\u0001\uffff\u0001\u003e\u0001"+
+ "\uffff\u0001\u03af\u0003\u003e\u0001\uffff\u0006\u003e\u0001\uffff\u0001"+
+ "\u003e\u0003\uffff\u0001\u03bb\u0002\uffff\u0001\u003e\u0001\uffff\u0001"+
+ "\u03bd\u0001\u03be\u0001\uffff\u0002\u003e\u0001\uffff\u0001\u03c2\u0002"+
+ "\u003e\u0001\uffff\u0001\u003e\u0001\u03c7\u0002\uffff\u0001\u003e\u0001"+
+ "\u03c9\u0001\u03ca\u0001\u003e\u0001\u03cc\u0001\u03cd\u0004\u003e\u0001"+
+ "\uffff\u0001\u03d2\u0003\uffff\u0002\u003e\u0002\uffff\u0003\u003e\u0001"+
+ "\uffff\u0001\u03d8\u0001\u003e\u0001\u03da\u0003\u003e\u0001\u03df\u0001"+
+ "\u03e0\u0003\u003e\u0001\uffff\u0001\u003e\u0002\uffff\u0001\u03e5\u0001"+
+ "\u03e6\u0001\u003e\u0001\uffff\u0001\u03e8\u0003\u003e\u0001\uffff\u0001"+
+ "\u003e\u0002\uffff\u0001\u003e\u0002\uffff\u0002\u003e\u0001\u03f0\u0001"+
+ "\u03f1\u0001\uffff\u0001\u03f2\u0001\u003e\u0001\u03f4\u0002\u003e\u0001"+
+ "\uffff\u0001\u003e\u0001\uffff\u0004\u003e\u0002\uffff\u0004\u003e\u0002"+
+ "\uffff\u0001\u003e\u0001\uffff\u0001\u0401\u0006\u003e\u0003\uffff\u0001"+
+ "\u003e\u0001\uffff\u0002\u003e\u0001\u040b\u0009\u003e\u0001\uffff\u0003"+
+ "\u003e\u0001\u0418\u0003\u003e\u0001\u041c\u0001\u003e\u0001\uffff\u0004"+
+ "\u003e\u0001\u0422\u0007\u003e\u0001\uffff\u0003\u003e\u0001\uffff\u0001"+
+ "\u042d\u0001\u003e\u0001\u042f\u0002\u003e\u0001\uffff\u0001\u0432\u0002"+
+ "\u003e\u0001\u0435\u0004\u003e\u0001\u043a\u0001\u003e\u0001\uffff\u0001"+
+ "\u043c\u0001\uffff\u0002\u003e\u0001\uffff\u0002\u003e\u0001\uffff\u0004"+
+ "\u003e\u0001\uffff\u0001\u0445\u0001\uffff\u0007\u003e\u0001\u044d\u0001"+
+ "\uffff\u0001\u044e\u0001\u003e\u0001\u0450\u0001\u003e\u0001\u0452\u0001"+
+ "\u0453\u0001\u003e\u0002\uffff\u0001\u0455\u0001\uffff\u0001\u0456\u0002"+
+ "\uffff\u0001\u003e\u0002\uffff\u0003\u003e\u0001\u045b\u0001\uffff",
+ DFA19_eofS:
+ "\u045c\uffff",
+ DFA19_minS:
+ "\u0001\u0000\u0001\u0066\u0002\u0061\u0001\u0065\u0001\u006c\u0001"+
+ "\u0069\u0001\u0065\u0001\u0064\u0003\u0061\u0001\u0066\u0003\u0061\u0001"+
+ "\u0065\u0001\u006e\u0001\u0061\u0001\u0068\u0001\u0071\u0001\u0061\u0002"+
+ "\u0065\u0001\u0075\u0001\u0023\u0007\uffff\u0001\u003a\u0001\u003d\u0001"+
+ "\u0023\u0001\uffff\u0001\u003e\u0002\uffff\u0001\u002d\u0001\u0021\u0001"+
+ "\u003d\u0001\u002f\u0001\u002e\u0002\uffff\u0001\u0029\u0005\uffff\u0001"+
+ "\u002e\u0001\uffff\u0001\u0063\u0002\u002d\u0001\u0074\u0001\u006f\u0001"+
+ "\u0074\u0001\u0070\u0001\uffff\u0001\u0073\u0001\u0075\u0001\u002d\u0001"+
+ "\u0066\u0001\u006f\u0001\u006e\u0001\u0073\u0001\u0065\u0001\u006c\u0001"+
+ "\u0063\u0001\u0067\u0001\u0063\u0001\u0065\u0001\u0070\u0001\u0063\u0001"+
+ "\u002d\u0001\u0061\u0001\u0063\u0001\u006c\u0001\u006e\u0001\u0072\u0001"+
+ "\u006f\u0001\u002d\u0001\u0065\u0001\u002d\u0001\u0069\u0001\u002d\u0001"+
+ "\u0070\u0002\u002d\u0001\u0065\u0001\u0073\u0002\u002d\u0001\u0064\u0001"+
+ "\u006e\u0001\u0069\u0001\u0074\u0001\u006d\u0003\u002d\u0001\u0074\u0002"+
+ "\u002d\u0001\u0074\u0001\u0072\u0001\u0065\u0001\u0072\u0001\u0061\u0001"+
+ "\u006e\u0001\u0074\u0001\u0068\u0001\u006c\u0001\u006d\u0001\u0061\u0002"+
+ "\u0069\u0001\u006d\u0001\u0078\u0001\u0065\u0001\u002d\u0001\u0065\u0001"+
+ "\u0070\u0001\u006d\u0001\u0069\u0001\u0064\u0001\u0069\u0001\u006c\u0001"+
+ "\u0072\u0001\u0065\u0001\u006e\u0001\u0075\u0001\u004e\u0001\u0072\u0001"+
+ "\u0079\u0001\u0065\u0001\u0009\u000d\uffff\u0001\u0078\u000b\uffff\u0001"+
+ "\u002d\u0001\u0009\u0009\uffff\u0001\u0030\u0008\uffff\u0001\u002e\u0001"+
+ "\u0030\u0001\uffff\u0001\u0065\u0001\u002d\u0001\u0065\u0001\uffff\u0001"+
+ "\u0072\u0001\uffff\u0002\u0065\u0001\u0073\u0001\u006f\u0001\u002d\u0001"+
+ "\u0065\u0001\u006e\u0001\uffff\u0001\u006f\u0001\u0063\u0001\u0061\u0001"+
+ "\u0065\u0001\u0063\u0001\u006c\u0001\u0063\u0001\u006c\u0001\u006d\u0001"+
+ "\u0073\u0001\u0079\u0001\u006e\u0001\u0069\u0001\u0061\u0001\u0063\u0001"+
+ "\u0065\u0001\u002d\u0001\u0069\u0001\u0075\u0001\u006d\u0001\u0065\u0001"+
+ "\u0074\u0001\u006f\u0001\u002d\u0001\u0061\u0001\uffff\u0001\u0072\u0001"+
+ "\u006c\u0002\u0065\u0001\u0074\u0001\u006c\u0001\u002d\u0001\u0063\u0001"+
+ "\u0073\u0001\u006d\u0001\uffff\u0001\u0061\u0001\u0075\u0001\uffff\u0001"+
+ "\u0076\u0001\uffff\u0001\u006f\u0003\u0065\u0001\u0069\u0001\u0065\u0002"+
+ "\uffff\u0001\u006d\u0001\u002d\u0001\u0074\u0001\u0073\u0001\u002d\u0002"+
+ "\uffff\u0001\u002d\u0001\u0075\u0001\u006e\u0001\u0075\u0001\u0061\u0001"+
+ "\u0065\u0001\u0074\u0001\uffff\u0001\u0069\u0001\u0065\u0001\u002d\u0001"+
+ "\uffff\u0001\u0069\u0001\u0065\u0001\uffff\u0001\u0079\u0001\uffff\u0002"+
+ "\u0065\u0001\u0074\u0002\u0063\u0001\u0076\u0001\u002d\u0001\u0075\u0001"+
+ "\u0061\u0001\u006c\u0001\u0061\u0001\u0064\u0001\u0067\u0001\u0069\u0001"+
+ "\u0065\u0001\u0066\u0001\u0075\u0001\u002d\u0001\u0065\u0001\u0062\u0001"+
+ "\u0069\u0001\u0064\u0002\u0070\u0001\u0074\u0001\u006e\u0001\uffff\u0001"+
+ "\u0061\u0001\u002d\u0001\u0065\u0001\u0062\u0001\u006f\u0001\u0072\u0001"+
+ "\u0061\u0001\u006e\u0002\u0069\u0001\u0073\u0001\u006e\u0001\u006c\u0001"+
+ "\u0064\u0001\u0068\u0001\u0065\u0001\u002d\u0001\u006f\u0001\u002d\u0001"+
+ "\u0075\u0001\u0074\u0004\uffff\u0001\u002d\u0003\uffff\u0001\u0030\u0001"+
+ "\u0073\u0001\uffff\u0001\u006e\u0001\u0069\u0001\u0072\u0001\u006e\u0001"+
+ "\u002d\u0001\u006d\u0001\uffff\u0001\u002d\u0001\u0064\u0001\u0072\u0001"+
+ "\u006b\u0001\u0072\u0002\u002d\u0001\u0068\u0001\u0064\u0001\u006b\u0001"+
+ "\u0061\u0001\u0065\u0001\u0074\u0001\u0065\u0001\u002d\u0001\u0074\u0001"+
+ "\u0061\u0001\u006d\u0001\u0075\u0001\u0065\u0001\u0074\u0001\uffff\u0001"+
+ "\u0074\u0001\u006d\u0001\u0065\u0001\u002d\u0001\u0079\u0001\u0064\u0001"+
+ "\uffff\u0001\u006c\u0001\u0079\u0001\u002d\u0001\u0070\u0001\u0072\u0001"+
+ "\u002d\u0001\u006f\u0001\u0061\u0001\uffff\u0002\u0074\u0001\u002d\u0001"+
+ "\u0074\u0001\u0070\u0001\u002d\u0002\u0072\u0001\u0061\u0001\u0072\u0001"+
+ "\u0067\u0001\u002d\u0001\u006e\u0001\u0078\u0001\u002d\u0001\uffff\u0001"+
+ "\u002d\u0001\u0074\u0001\uffff\u0001\u006c\u0001\u0066\u0001\uffff\u0001"+
+ "\u0073\u0001\u0074\u0001\u0061\u0001\u0062\u0001\u0073\u0001\u002d\u0001"+
+ "\u006e\u0001\u0072\u0001\u002d\u0001\uffff\u0001\u006f\u0001\u0072\u0001"+
+ "\u002d\u0001\u0072\u0001\u006e\u0003\u0065\u0001\u0069\u0001\u0065\u0001"+
+ "\u0061\u0001\u0065\u0001\u006d\u0001\u0072\u0001\u006d\u0001\u0061\u0001"+
+ "\u006c\u0001\u002d\u0001\u0065\u0001\u0073\u0001\u006d\u0001\u002d\u0001"+
+ "\u0065\u0001\uffff\u0001\u002d\u0001\u006c\u0001\u0074\u0001\u0063\u0001"+
+ "\u0069\u0001\u002d\u0001\u006c\u0002\u002d\u0001\u0074\u0001\uffff\u0001"+
+ "\u0073\u0001\u006c\u0001\u006e\u0001\u0075\u0001\u0064\u0001\u0074\u0001"+
+ "\u0067\u0001\u0064\u0001\u0065\u0001\u0061\u0001\u0069\u0001\u0065\u0001"+
+ "\u002d\u0001\u0065\u0001\u006f\u0001\u002d\u0001\u0072\u0001\uffff\u0001"+
+ "\u002d\u0001\uffff\u0001\u0065\u0001\u002d\u0001\u0000\u0001\u0074\u0001"+
+ "\u0064\u0001\u0062\u0001\u002d\u0001\u0064\u0001\uffff\u0001\u0061\u0001"+
+ "\u0075\u0001\u0061\u0001\u0065\u0001\u002d\u0001\u0079\u0001\uffff\u0001"+
+ "\u0062\u0001\uffff\u0003\u002d\u0001\u0074\u0001\u0063\u0001\u006e\u0001"+
+ "\u002d\u0001\u0078\u0001\u006e\u0001\uffff\u0001\u002d\u0001\u0072\u0001"+
+ "\u0061\u0001\u006c\u0001\u006e\u0001\u0065\u0001\u002d\u0001\u0065\u0001"+
+ "\u006e\u0001\uffff\u0001\u002d\u0002\u0069\u0001\u002d\u0001\uffff\u0001"+
+ "\u0074\u0001\u006e\u0001\uffff\u0001\u0077\u0001\u0063\u0001\u0067\u0001"+
+ "\u0069\u0001\u002d\u0001\uffff\u0001\u0065\u0001\u002d\u0001\uffff\u0001"+
+ "\u0074\u0001\u0069\u0001\u006e\u0001\u0074\u0001\u0073\u0001\u0072\u0001"+
+ "\uffff\u0001\u0069\u0001\u002d\u0002\uffff\u0001\u002d\u0001\u0065\u0001"+
+ "\u0079\u0001\u002d\u0001\u0061\u0002\u006c\u0001\u0070\u0001\uffff\u0001"+
+ "\u0068\u0001\u0065\u0001\u002d\u0001\uffff\u0001\u006e\u0001\u002d\u0001"+
+ "\uffff\u0001\u002d\u0001\u0074\u0001\u0072\u0001\u0064\u0001\u0072\u0001"+
+ "\u006f\u0001\u0073\u0001\u0074\u0001\u006e\u0001\u0069\u0001\u006e\u0001"+
+ "\u0065\u0001\u0063\u0001\u0069\u0001\u006f\u0001\u002d\u0001\u0066\u0001"+
+ "\u0061\u0001\uffff\u0001\u006e\u0001\uffff\u0001\u0065\u0001\u002d\u0001"+
+ "\u0074\u0001\u002d\u0001\u006e\u0001\uffff\u0001\u0065\u0002\uffff\u0001"+
+ "\u002d\u0001\u0077\u0001\u0069\u0001\u002d\u0002\u0065\u0001\u0069\u0001"+
+ "\u002d\u0001\u0061\u0001\u002d\u0001\u0062\u0001\u006f\u0001\u002d\u0001"+
+ "\uffff\u0001\u002d\u0001\u0077\u0001\uffff\u0001\u0079\u0001\u0064\u0001"+
+ "\u002d\u0003\uffff\u0001\u006f\u0001\u0069\u0001\u0075\u0001\uffff\u0001"+
+ "\u002d\u0001\u0074\u0002\u0072\u0001\u002d\u0001\uffff\u0001\u002d\u0001"+
+ "\u006c\u0003\uffff\u0001\u0069\u0002\u0074\u0001\u0061\u0001\u006e\u0001"+
+ "\uffff\u0001\u0074\u0001\u0061\u0001\uffff\u0001\u0065\u0001\u006c\u0001"+
+ "\u0074\u0001\u0064\u0001\u002d\u0001\uffff\u0001\u006e\u0001\u0074\u0001"+
+ "\u0073\u0001\uffff\u0001\u006e\u0001\u0074\u0001\uffff\u0001\u002d\u0001"+
+ "\u0061\u0001\u0069\u0001\u0068\u0001\u006e\u0001\u006f\u0001\uffff\u0001"+
+ "\u0073\u0001\u006e\u0001\uffff\u0001\u002d\u0001\u0074\u0001\u0063\u0001"+
+ "\u002d\u0001\u0065\u0001\u0069\u0001\u0074\u0002\uffff\u0002\u002d\u0001"+
+ "\u0073\u0001\u0069\u0001\u006c\u0001\u0065\u0001\u0061\u0001\u0065\u0001"+
+ "\u0073\u0001\uffff\u0001\u002d\u0001\u0064\u0001\u006e\u0002\uffff\u0001"+
+ "\u002d\u0001\u006e\u0001\u0069\u0001\u0076\u0001\u0075\u0001\u0073\u0001"+
+ "\u0065\u0001\u0074\u0001\u006c\u0002\u002d\u0001\u0065\u0001\u0064\u0001"+
+ "\u006e\u0001\uffff\u0001\u0069\u0001\u002d\u0001\u0074\u0001\u002d\u0001"+
+ "\uffff\u0001\u002d\u0001\uffff\u0001\u0067\u0001\u002d\u0001\uffff\u0001"+
+ "\u0069\u0001\u006e\u0001\uffff\u0001\u002d\u0001\u0072\u0001\u006e\u0001"+
+ "\uffff\u0001\u0074\u0001\uffff\u0001\u006c\u0001\u006e\u0002\uffff\u0002"+
+ "\u002d\u0001\u0069\u0001\uffff\u0001\u0072\u0001\u006e\u0001\u0074\u0001"+
+ "\u006f\u0002\u0069\u0001\u0079\u0002\uffff\u0001\u0065\u0001\u006f\u0001"+
+ "\u0069\u0001\u002d\u0001\u0063\u0001\u0069\u0001\u0074\u0001\u002d\u0001"+
+ "\u006d\u0003\u002d\u0001\u0061\u0001\uffff\u0001\u0074\u0001\u002d\u0001"+
+ "\u0065\u0001\u0067\u0001\u0079\u0001\uffff\u0001\u006c\u0001\u006e\u0002"+
+ "\u002d\u0001\u006e\u0001\u0074\u0001\u0067\u0001\uffff\u0001\u002d\u0001"+
+ "\u0065\u0001\uffff\u0001\u0063\u0001\u0074\u0001\u0079\u0002\uffff\u0001"+
+ "\u0069\u0001\u006e\u0001\u0079\u0001\u002d\u0001\u0063\u0001\u0072\u0001"+
+ "\u0065\u0001\uffff\u0001\u002d\u0001\u0067\u0001\uffff\u0001\u002d\u0001"+
+ "\u006e\u0001\u0065\u0001\u0073\u0001\u0069\u0002\u002d\u0001\u006c\u0001"+
+ "\u006e\u0002\uffff\u0001\u002d\u0001\u0061\u0001\u006c\u0001\u0065\u0001"+
+ "\u0061\u0001\uffff\u0001\u0069\u0002\uffff\u0001\u002d\u0001\uffff\u0001"+
+ "\u0074\u0001\u0067\u0001\uffff\u0001\u0065\u0001\u0067\u0002\u0065\u0001"+
+ "\u002d\u0002\uffff\u0001\u0067\u0001\u002d\u0001\u0067\u0001\u0065\u0001"+
+ "\u006e\u0001\u0063\u0003\u002d\u0001\u006e\u0001\u006f\u0001\uffff\u0001"+
+ "\u0074\u0001\u006e\u0001\u002d\u0001\uffff\u0001\u0065\u0001\uffff\u0001"+
+ "\u0066\u0001\uffff\u0002\u006e\u0001\u002d\u0001\uffff\u0001\u0071\u0003"+
+ "\u002d\u0001\u0067\u0002\uffff\u0003\u002d\u0001\uffff\u0001\u002d\u0001"+
+ "\u0074\u0001\u0079\u0001\u002d\u0001\u0067\u0001\u0065\u0001\u002d\u0001"+
+ "\uffff\u0001\u0065\u0001\u0069\u0001\u0072\u0001\uffff\u0001\u002d\u0001"+
+ "\u0073\u0001\u0067\u0002\u002d\u0001\u006e\u0002\uffff\u0001\u0065\u0001"+
+ "\u0067\u0001\uffff\u0001\u0074\u0001\u0079\u0001\u0073\u0001\u0074\u0001"+
+ "\u006c\u0001\u0061\u0001\uffff\u0001\u0063\u0001\u002d\u0001\u0064\u0003"+
+ "\u002d\u0001\uffff\u0001\u0069\u0001\u006f\u0001\uffff\u0002\u002d\u0001"+
+ "\u006c\u0001\u0061\u0001\uffff\u0001\u0073\u0001\uffff\u0001\u002d\u0001"+
+ "\u006e\u0001\u0069\u0001\u0074\u0001\uffff\u0001\u0073\u0001\u006f\u0001"+
+ "\u0065\u0001\u0074\u0001\u0067\u0001\u006e\u0001\uffff\u0001\u0075\u0003"+
+ "\uffff\u0001\u002d\u0002\uffff\u0001\u0073\u0001\uffff\u0002\u002d\u0001"+
+ "\uffff\u0001\u006e\u0001\u0064\u0001\uffff\u0001\u002d\u0001\u0074\u0001"+
+ "\u0076\u0001\uffff\u0001\u0065\u0001\u002d\u0002\uffff\u0001\u0067\u0002"+
+ "\u002d\u0001\u0069\u0002\u002d\u0001\u0074\u0001\u0065\u0001\u006c\u0001"+
+ "\u0068\u0001\uffff\u0001\u002d\u0003\uffff\u0001\u0074\u0001\u0072\u0002"+
+ "\uffff\u0001\u0079\u0001\u006c\u0001\u0070\u0001\uffff\u0001\u002d\u0001"+
+ "\u006f\u0001\u002d\u0001\u0070\u0001\u0072\u0001\u0070\u0002\u002d\u0001"+
+ "\u006f\u0001\u0065\u0001\u0073\u0001\uffff\u0001\u0065\u0002\uffff\u0002"+
+ "\u002d\u0001\u006e\u0001\uffff\u0001\u002d\u0001\u0065\u0001\u0070\u0001"+
+ "\u0073\u0001\uffff\u0001\u002d\u0002\uffff\u0001\u006f\u0002\uffff\u0001"+
+ "\u0072\u0001\u006d\u0002\u002d\u0001\uffff\u0003\u002d\u0001\u006c\u0001"+
+ "\u0061\u0001\uffff\u0001\u006e\u0001\uffff\u0001\u0061\u0001\u006d\u0001"+
+ "\u0061\u0001\u006f\u0002\uffff\u0001\u0064\u0001\u006e\u0001\u0069\u0001"+
+ "\u0070\u0002\uffff\u0001\u006f\u0001\uffff\u0001\u002d\u0001\u0061\u0002"+
+ "\u0069\u0001\u006e\u0001\u0069\u0001\u0065\u0003\uffff\u0001\u0073\u0001"+
+ "\uffff\u0001\u0079\u0001\u0063\u0001\u002d\u0001\u0063\u0001\u0061\u0002"+
+ "\u0072\u0001\u0065\u0001\u0063\u0001\u0062\u0001\u0061\u0001\u0064\u0001"+
+ "\uffff\u0001\u0072\u0001\u0062\u0001\u006e\u0001\u002d\u0001\u0062\u0001"+
+ "\u006e\u0001\u0065\u0001\u002d\u0001\u0065\u0001\uffff\u0001\u0065\u0001"+
+ "\u0074\u0001\u0061\u0002\u002d\u0001\u0065\u0001\u006c\u0001\u0072\u0001"+
+ "\u0065\u0001\u0061\u0001\u006c\u0001\u0073\u0001\uffff\u0001\u0075\u0001"+
+ "\u0074\u0001\u006c\u0001\uffff\u0001\u002d\u0001\u0073\u0001\u002d\u0001"+
+ "\u0074\u0001\u0073\u0001\uffff\u0001\u002d\u0001\u0069\u0001\u0061\u0001"+
+ "\u002d\u0001\u0074\u0001\u0069\u0002\u0074\u0001\u002d\u0001\u0066\u0001"+
+ "\uffff\u0001\u002d\u0001\uffff\u0001\u006f\u0001\u0065\u0001\uffff\u0001"+
+ "\u006e\u0001\u0074\u0001\uffff\u0001\u006f\u0001\u006e\u0001\u0072\u0001"+
+ "\u0065\u0001\uffff\u0001\u002d\u0001\uffff\u0001\u0072\u0001\u006c\u0001"+
+ "\u0067\u0001\u006f\u0001\u0072\u0001\u0067\u0001\u0075\u0001\u002d\u0001"+
+ "\uffff\u0001\u002d\u0001\u0066\u0001\u002d\u0001\u0072\u0002\u002d\u0001"+
+ "\u0063\u0002\uffff\u0001\u002d\u0001\uffff\u0001\u002d\u0002\uffff\u0001"+
+ "\u0074\u0002\uffff\u0001\u0069\u0001\u006f\u0001\u006e\u0001\u002d\u0001"+
+ "\uffff",
+ DFA19_maxS:
+ "\u0001\uffff\u0001\u0075\u0001\u0079\u0002\u006f\u0001\u0078\u0001"+
+ "\u0075\u0003\u0074\u0001\u0075\u0001\u006f\u0001\u0075\u0001\u0072\u0001"+
+ "\u0065\u0001\u0074\u0001\u0079\u0001\u0073\u0001\u0065\u0001\u0069\u0001"+
+ "\u0071\u0001\u0061\u0002\u0065\u0001\u0075\u0001\u003a\u0007\uffff\u0002"+
+ "\u003d\u0001\u0023\u0001\uffff\u0001\u003e\u0002\uffff\u0001\u002d\u0001"+
+ "\u003f\u0002\u003e\u0001\u0039\u0002\uffff\u0001\u0029\u0005\uffff\u0001"+
+ "\u0065\u0001\uffff\u0001\u0064\u0002\u007a\u0001\u0074\u0001\u0070\u0001"+
+ "\u0074\u0001\u0070\u0001\uffff\u0001\u0073\u0001\u0075\u0001\u007a\u0001"+
+ "\u0066\u0001\u006f\u0001\u006e\u0001\u0074\u0001\u0069\u0001\u0075\u0001"+
+ "\u0073\u0001\u0076\u0001\u0063\u0001\u0073\u0001\u0070\u0001\u0064\u0001"+
+ "\u007a\u0001\u0065\u0001\u0074\u0001\u0072\u0001\u006e\u0001\u0072\u0001"+
+ "\u006f\u0001\u007a\u0001\u006f\u0001\u007a\u0001\u0069\u0001\u007a\u0001"+
+ "\u0070\u0002\u007a\u0001\u0065\u0001\u0078\u0002\u007a\u0001\u0064\u0002"+
+ "\u006e\u0001\u0074\u0001\u006d\u0001\u007a\u0001\u006e\u0001\u007a\u0001"+
+ "\u0074\u0002\u007a\u0002\u0074\u0001\u006f\u0001\u0072\u0001\u0076\u0001"+
+ "\u006e\u0001\u0074\u0001\u0068\u0001\u0074\u0001\u006d\u0001\u0072\u0002"+
+ "\u0069\u0001\u006d\u0001\u0078\u0001\u0065\u0001\u007a\u0001\u0079\u0001"+
+ "\u0070\u0001\u006d\u0001\u006f\u0001\u0064\u0001\u0069\u0002\u0072\u0001"+
+ "\u0069\u0001\u0074\u0001\u0075\u0001\u004e\u0001\u0072\u0001\u0079\u0001"+
+ "\u006f\u0001\u007a\u000d\uffff\u0001\u0078\u000b\uffff\u0001\u002d\u0001"+
+ "\u007a\u0009\uffff\u0001\u0065\u0008\uffff\u0002\u0065\u0001\uffff\u0001"+
+ "\u0065\u0001\u007a\u0001\u0065\u0001\uffff\u0001\u0072\u0001\uffff\u0002"+
+ "\u0065\u0001\u0073\u0001\u006f\u0001\u007a\u0001\u0065\u0001\u006e\u0001"+
+ "\uffff\u0001\u006f\u0001\u0063\u0001\u0061\u0001\u0074\u0001\u0063\u0001"+
+ "\u006c\u0001\u0063\u0001\u006c\u0001\u006d\u0001\u0074\u0001\u0079\u0001"+
+ "\u006e\u0001\u006c\u0001\u0061\u0001\u0063\u0001\u0065\u0001\u007a\u0001"+
+ "\u0069\u0001\u0075\u0001\u006d\u0001\u0065\u0001\u0074\u0001\u006f\u0001"+
+ "\u007a\u0001\u0061\u0001\uffff\u0001\u0072\u0001\u006c\u0002\u0065\u0001"+
+ "\u0074\u0001\u006c\u0001\u007a\u0001\u0063\u0001\u0073\u0001\u006d\u0001"+
+ "\uffff\u0001\u0061\u0001\u0075\u0001\uffff\u0001\u0076\u0001\uffff\u0001"+
+ "\u006f\u0001\u0065\u0001\u0074\u0001\u006f\u0001\u0069\u0001\u0065\u0002"+
+ "\uffff\u0001\u006d\u0001\u007a\u0001\u0074\u0001\u0073\u0001\u007a\u0002"+
+ "\uffff\u0001\u007a\u0001\u0075\u0001\u006e\u0001\u0075\u0001\u0061\u0001"+
+ "\u0065\u0001\u0074\u0001\uffff\u0001\u0070\u0001\u0065\u0001\u007a\u0001"+
+ "\uffff\u0001\u0069\u0001\u0065\u0001\uffff\u0001\u0079\u0001\uffff\u0002"+
+ "\u0065\u0001\u0074\u0001\u0076\u0001\u0063\u0001\u0076\u0001\u0063\u0001"+
+ "\u0075\u0001\u0061\u0001\u006c\u0001\u0061\u0001\u0064\u0001\u0067\u0001"+
+ "\u0069\u0001\u0065\u0001\u0066\u0001\u0075\u0001\u007a\u0001\u0065\u0001"+
+ "\u0072\u0001\u0069\u0001\u0064\u0002\u0070\u0001\u0074\u0001\u006e\u0001"+
+ "\uffff\u0001\u0061\u0001\u007a\u0001\u0065\u0001\u0062\u0001\u0071\u0001"+
+ "\u0072\u0001\u0061\u0001\u006e\u0001\u0075\u0001\u0069\u0001\u0073\u0001"+
+ "\u0072\u0001\u006c\u0001\u0064\u0001\u0068\u0001\u0065\u0001\u007a\u0001"+
+ "\u006f\u0001\u007a\u0001\u0075\u0001\u0074\u0004\uffff\u0001\u002d\u0003"+
+ "\uffff\u0001\u0065\u0001\u0073\u0001\uffff\u0001\u006e\u0001\u0069\u0001"+
+ "\u0072\u0001\u006e\u0001\u007a\u0001\u006d\u0001\uffff\u0001\u002d\u0001"+
+ "\u0064\u0001\u0072\u0001\u006b\u0001\u0072\u0002\u007a\u0001\u0068\u0001"+
+ "\u0064\u0001\u006b\u0002\u0065\u0001\u0074\u0001\u0065\u0001\u007a\u0001"+
+ "\u0074\u0001\u0061\u0001\u006d\u0001\u0075\u0001\u0065\u0001\u0074\u0001"+
+ "\uffff\u0001\u0074\u0001\u006d\u0001\u0065\u0001\u007a\u0001\u0079\u0001"+
+ "\u0064\u0001\uffff\u0001\u006c\u0001\u0079\u0001\u007a\u0001\u0070\u0001"+
+ "\u0072\u0001\u007a\u0001\u006f\u0001\u0069\u0001\uffff\u0002\u0074\u0001"+
+ "\u007a\u0001\u0074\u0001\u0070\u0001\u007a\u0002\u0072\u0001\u0061\u0002"+
+ "\u0072\u0001\u007a\u0001\u006e\u0001\u0078\u0001\u007a\u0001\uffff\u0001"+
+ "\u007a\u0001\u0074\u0001\uffff\u0001\u006c\u0001\u0066\u0001\uffff\u0001"+
+ "\u0073\u0001\u0074\u0001\u0061\u0001\u0062\u0001\u0073\u0001\u007a\u0001"+
+ "\u006e\u0001\u0072\u0001\u007a\u0001\uffff\u0001\u006f\u0001\u0072\u0001"+
+ "\u007a\u0001\u0072\u0001\u006e\u0003\u0065\u0001\u0069\u0001\u0065\u0001"+
+ "\u0061\u0001\u0065\u0001\u006d\u0001\u0072\u0001\u006d\u0001\u0061\u0001"+
+ "\u006c\u0001\u002d\u0001\u0065\u0001\u0073\u0001\u006d\u0001\u007a\u0001"+
+ "\u0065\u0001\uffff\u0001\u007a\u0001\u006c\u0001\u0074\u0001\u0070\u0001"+
+ "\u0069\u0001\u007a\u0001\u006c\u0002\u007a\u0001\u0074\u0001\uffff\u0001"+
+ "\u0073\u0001\u006c\u0001\u006e\u0001\u0075\u0001\u0064\u0001\u0074\u0001"+
+ "\u0067\u0001\u0064\u0001\u0065\u0001\u0061\u0001\u0069\u0001\u0065\u0001"+
+ "\u007a\u0001\u0065\u0001\u006f\u0001\u007a\u0001\u0072\u0001\uffff\u0001"+
+ "\u002d\u0001\uffff\u0001\u0065\u0001\u007a\u0001\uffff\u0001\u0074\u0001"+
+ "\u0064\u0001\u0062\u0001\u007a\u0001\u0064\u0001\uffff\u0001\u0061\u0001"+
+ "\u0075\u0001\u0061\u0001\u0065\u0001\u007a\u0001\u0079\u0001\uffff\u0001"+
+ "\u0062\u0001\uffff\u0003\u007a\u0001\u0074\u0001\u0063\u0001\u006e\u0001"+
+ "\u007a\u0001\u0078\u0001\u006e\u0001\uffff\u0001\u007a\u0001\u0072\u0001"+
+ "\u0061\u0001\u006c\u0001\u006e\u0001\u0065\u0001\u007a\u0001\u0065\u0001"+
+ "\u006e\u0001\uffff\u0001\u007a\u0002\u0069\u0001\u007a\u0001\uffff\u0001"+
+ "\u0074\u0001\u006e\u0001\uffff\u0001\u0077\u0001\u0063\u0001\u0067\u0001"+
+ "\u0069\u0001\u007a\u0001\uffff\u0001\u0065\u0001\u007a\u0001\uffff\u0001"+
+ "\u0074\u0001\u0069\u0001\u006e\u0001\u0074\u0001\u0073\u0001\u0072\u0001"+
+ "\uffff\u0001\u0069\u0001\u007a\u0002\uffff\u0001\u007a\u0001\u0065\u0001"+
+ "\u0079\u0001\u002d\u0001\u0061\u0002\u006c\u0001\u0070\u0001\uffff\u0001"+
+ "\u0068\u0001\u0065\u0001\u007a\u0001\uffff\u0001\u006e\u0001\u007a\u0001"+
+ "\uffff\u0001\u007a\u0001\u0074\u0001\u0072\u0001\u0064\u0001\u0072\u0001"+
+ "\u006f\u0001\u0073\u0001\u0074\u0001\u006e\u0001\u0069\u0001\u006e\u0001"+
+ "\u0065\u0001\u0063\u0001\u0069\u0001\u006f\u0001\u007a\u0001\u0066\u0001"+
+ "\u0061\u0001\uffff\u0001\u006e\u0001\uffff\u0001\u0065\u0001\u007a\u0001"+
+ "\u0074\u0001\u007a\u0001\u006e\u0001\uffff\u0001\u0065\u0002\uffff\u0001"+
+ "\u007a\u0001\u0077\u0001\u0069\u0001\u007a\u0002\u0065\u0001\u0069\u0001"+
+ "\u007a\u0001\u0061\u0001\u007a\u0001\u0062\u0001\u006f\u0001\u007a\u0001"+
+ "\uffff\u0001\u007a\u0001\u0077\u0001\uffff\u0001\u0079\u0001\u0064\u0001"+
+ "\u007a\u0003\uffff\u0001\u006f\u0001\u0069\u0001\u0075\u0001\uffff\u0001"+
+ "\u002d\u0001\u0074\u0002\u0072\u0001\u007a\u0001\uffff\u0001\u007a\u0001"+
+ "\u006c\u0003\uffff\u0001\u0069\u0002\u0074\u0001\u0075\u0001\u006e\u0001"+
+ "\uffff\u0001\u0074\u0001\u0061\u0001\uffff\u0001\u0065\u0001\u006c\u0001"+
+ "\u0074\u0001\u0064\u0001\u007a\u0001\uffff\u0001\u006e\u0001\u0074\u0001"+
+ "\u0073\u0001\uffff\u0001\u006e\u0001\u0074\u0001\uffff\u0001\u007a\u0001"+
+ "\u0061\u0001\u0069\u0001\u0068\u0001\u006e\u0001\u006f\u0001\uffff\u0001"+
+ "\u0073\u0001\u006e\u0001\uffff\u0001\u007a\u0001\u0074\u0001\u0063\u0001"+
+ "\u007a\u0001\u0065\u0001\u0069\u0001\u0074\u0002\uffff\u0002\u007a\u0001"+
+ "\u0073\u0001\u0069\u0001\u006c\u0001\u0065\u0001\u0061\u0001\u0065\u0001"+
+ "\u0073\u0001\uffff\u0001\u007a\u0001\u0064\u0001\u006e\u0002\uffff\u0001"+
+ "\u007a\u0001\u006e\u0001\u0069\u0001\u0076\u0001\u0075\u0001\u0073\u0001"+
+ "\u0065\u0001\u0074\u0001\u006c\u0002\u007a\u0001\u0065\u0001\u0064\u0001"+
+ "\u006e\u0001\uffff\u0001\u0069\u0001\u007a\u0001\u0074\u0001\u007a\u0001"+
+ "\uffff\u0001\u007a\u0001\uffff\u0001\u0067\u0001\u007a\u0001\uffff\u0001"+
+ "\u0069\u0001\u006e\u0001\uffff\u0001\u007a\u0001\u0072\u0001\u006e\u0001"+
+ "\uffff\u0001\u0074\u0001\uffff\u0001\u006c\u0001\u006e\u0002\uffff\u0002"+
+ "\u007a\u0001\u0069\u0001\uffff\u0001\u0072\u0001\u006e\u0001\u0074\u0001"+
+ "\u006f\u0002\u0069\u0001\u0079\u0002\uffff\u0001\u0065\u0001\u006f\u0001"+
+ "\u0069\u0001\u007a\u0001\u0063\u0001\u0069\u0001\u0074\u0001\u007a\u0001"+
+ "\u006d\u0001\u007a\u0001\u002d\u0001\u007a\u0001\u0069\u0001\uffff\u0001"+
+ "\u0074\u0001\u007a\u0001\u0065\u0001\u0067\u0001\u0079\u0001\uffff\u0001"+
+ "\u006c\u0001\u006e\u0002\u007a\u0001\u006e\u0001\u0074\u0001\u0067\u0001"+
+ "\uffff\u0001\u007a\u0001\u0065\u0001\uffff\u0001\u0063\u0001\u0074\u0001"+
+ "\u0079\u0002\uffff\u0001\u0069\u0001\u006e\u0001\u0079\u0001\u007a\u0001"+
+ "\u0063\u0001\u0072\u0001\u0065\u0001\uffff\u0001\u007a\u0001\u0067\u0001"+
+ "\uffff\u0001\u002d\u0001\u006e\u0001\u0065\u0001\u0073\u0001\u0069\u0002"+
+ "\u007a\u0001\u006c\u0001\u006e\u0002\uffff\u0001\u007a\u0001\u0061\u0001"+
+ "\u006c\u0002\u0065\u0001\uffff\u0001\u0069\u0002\uffff\u0001\u007a\u0001"+
+ "\uffff\u0001\u0074\u0001\u0067\u0001\uffff\u0001\u0065\u0001\u0067\u0002"+
+ "\u0065\u0001\u007a\u0002\uffff\u0001\u0067\u0001\u007a\u0001\u0067\u0001"+
+ "\u0065\u0001\u006e\u0001\u0063\u0001\u007a\u0001\u002d\u0001\u007a\u0001"+
+ "\u006e\u0001\u006f\u0001\uffff\u0001\u0074\u0001\u006e\u0001\u007a\u0001"+
+ "\uffff\u0001\u0065\u0001\uffff\u0001\u0073\u0001\uffff\u0002\u006e\u0001"+
+ "\u007a\u0001\uffff\u0001\u0071\u0003\u007a\u0001\u0067\u0002\uffff\u0002"+
+ "\u007a\u0001\u002d\u0001\uffff\u0001\u007a\u0001\u0074\u0001\u0079\u0001"+
+ "\u007a\u0001\u0067\u0001\u0065\u0001\u007a\u0001\uffff\u0001\u0065\u0001"+
+ "\u0069\u0001\u0072\u0001\uffff\u0001\u007a\u0001\u0073\u0001\u0067\u0002"+
+ "\u007a\u0001\u006e\u0002\uffff\u0001\u0065\u0001\u0067\u0001\uffff\u0001"+
+ "\u0074\u0001\u0079\u0001\u0073\u0001\u0074\u0001\u006c\u0001\u0061\u0001"+
+ "\uffff\u0001\u0063\u0001\u007a\u0001\u0064\u0003\u007a\u0001\uffff\u0001"+
+ "\u0069\u0001\u006f\u0001\uffff\u0002\u007a\u0001\u006c\u0001\u0061\u0001"+
+ "\uffff\u0001\u0073\u0001\uffff\u0001\u007a\u0001\u006e\u0001\u0069\u0001"+
+ "\u0074\u0001\uffff\u0001\u0073\u0001\u006f\u0001\u0065\u0001\u0074\u0001"+
+ "\u0067\u0001\u006e\u0001\uffff\u0001\u0075\u0003\uffff\u0001\u007a\u0002"+
+ "\uffff\u0001\u0073\u0001\uffff\u0002\u007a\u0001\uffff\u0001\u006e\u0001"+
+ "\u0064\u0001\uffff\u0001\u007a\u0001\u0074\u0001\u0076\u0001\uffff\u0001"+
+ "\u0065\u0001\u007a\u0002\uffff\u0001\u0067\u0002\u007a\u0001\u0069\u0002"+
+ "\u007a\u0001\u0074\u0001\u0065\u0001\u006c\u0001\u0068\u0001\uffff\u0001"+
+ "\u007a\u0003\uffff\u0001\u0074\u0001\u0072\u0002\uffff\u0001\u0079\u0001"+
+ "\u006c\u0001\u0070\u0001\uffff\u0001\u007a\u0001\u006f\u0001\u007a\u0001"+
+ "\u0070\u0001\u0072\u0001\u0070\u0002\u007a\u0001\u006f\u0001\u0065\u0001"+
+ "\u0073\u0001\uffff\u0001\u0065\u0002\uffff\u0002\u007a\u0001\u006e\u0001"+
+ "\uffff\u0001\u007a\u0001\u0065\u0001\u0070\u0001\u0073\u0001\uffff\u0001"+
+ "\u002d\u0002\uffff\u0001\u006f\u0002\uffff\u0001\u0072\u0001\u006d\u0002"+
+ "\u007a\u0001\uffff\u0001\u007a\u0001\u002d\u0001\u007a\u0001\u006c\u0001"+
+ "\u0061\u0001\uffff\u0001\u006e\u0001\uffff\u0001\u0061\u0001\u006d\u0001"+
+ "\u0061\u0001\u006f\u0002\uffff\u0001\u0064\u0001\u006e\u0001\u0069\u0001"+
+ "\u0070\u0002\uffff\u0001\u006f\u0001\uffff\u0001\u007a\u0001\u0061\u0002"+
+ "\u0069\u0001\u006e\u0001\u0069\u0001\u0065\u0003\uffff\u0001\u0073\u0001"+
+ "\uffff\u0001\u0079\u0001\u0063\u0001\u007a\u0001\u0063\u0001\u0061\u0002"+
+ "\u0072\u0001\u0065\u0001\u0063\u0001\u0062\u0001\u0061\u0001\u0064\u0001"+
+ "\uffff\u0001\u0072\u0001\u0062\u0001\u006e\u0001\u007a\u0001\u0062\u0001"+
+ "\u006e\u0001\u0065\u0001\u007a\u0001\u0065\u0001\uffff\u0001\u0065\u0001"+
+ "\u0074\u0001\u0061\u0001\u002d\u0001\u007a\u0001\u0065\u0001\u006c\u0001"+
+ "\u0072\u0001\u0065\u0001\u0061\u0001\u006c\u0001\u0073\u0001\uffff\u0001"+
+ "\u0075\u0001\u0074\u0001\u006c\u0001\uffff\u0001\u007a\u0001\u0073\u0001"+
+ "\u007a\u0001\u0074\u0001\u0073\u0001\uffff\u0001\u007a\u0001\u0069\u0001"+
+ "\u0061\u0001\u007a\u0001\u0074\u0001\u0069\u0002\u0074\u0001\u007a\u0001"+
+ "\u0066\u0001\uffff\u0001\u007a\u0001\uffff\u0001\u006f\u0001\u0065\u0001"+
+ "\uffff\u0001\u006e\u0001\u0074\u0001\uffff\u0001\u006f\u0001\u006e\u0001"+
+ "\u0072\u0001\u0065\u0001\uffff\u0001\u007a\u0001\uffff\u0001\u0072\u0001"+
+ "\u006c\u0001\u0067\u0001\u006f\u0001\u0072\u0001\u0067\u0001\u0075\u0001"+
+ "\u007a\u0001\uffff\u0001\u007a\u0001\u0066\u0001\u007a\u0001\u0072\u0002"+
+ "\u007a\u0001\u0063\u0002\uffff\u0001\u007a\u0001\uffff\u0001\u007a\u0002"+
+ "\uffff\u0001\u0074\u0002\uffff\u0001\u0069\u0001\u006f\u0001\u006e\u0001"+
+ "\u007a\u0001\uffff",
+ DFA19_acceptS:
+ "\u001a\uffff\u0001\u00b3\u0001\u00b4\u0001\u00b5\u0001\u00b6\u0001"+
+ "\u00b7\u0001\u00b8\u0001\u00b9\u0003\uffff\u0001\u00bd\u0001\uffff\u0001"+
+ "\u00bf\u0001\u00c0\u0005\uffff\u0001\u00d0\u0001\u00d1\u0001\uffff\u0001"+
+ "\u00d8\u0001\u00db\u0001\u00dc\u0001\u00dd\u0001\u00de\u0001\uffff\u0001"+
+ "\u00e6\u0007\uffff\u0001\u00dd\u004e\uffff\u0001\u00e5\u0001\u00b2\u0001"+
+ "\u00b3\u0001\u00b4\u0001\u00b5\u0001\u00b6\u0001\u00b7\u0001\u00b8\u0001"+
+ "\u00b9\u0001\u00ba\u0001\u00cd\u0001\u00cc\u0001\u00bb\u0001\uffff\u0001"+
+ "\u00bc\u0001\u00bd\u0001\u00d7\u0001\u00be\u0001\u00bf\u0001\u00c0\u0001"+
+ "\u00d5\u0001\u00c1\u0001\u00c4\u0001\u00c6\u0001\u00cf\u0002\uffff\u0001"+
+ "\u00c2\u0001\u00c5\u0001\u00c7\u0001\u00c3\u0001\u00c9\u0001\u00ce\u0001"+
+ "\u00c8\u0001\u00cb\u0001\u00ca\u0001\uffff\u0001\u00d0\u0001\u00d1\u0001"+
+ "\u00d3\u0001\u00d8\u0001\u00db\u0001\u00dc\u0001\u00de\u0001\u00e2\u0002"+
+ "\uffff\u0001\u00e4\u0003\uffff\u0001\u0004\u0001\uffff\u0001\u0006\u0007"+
+ "\uffff\u0001\u000a\u0019\uffff\u0001\u0020\u000a\uffff\u0001\u0028\u0002"+
+ "\uffff\u0001\u002a\u0001\uffff\u0001\u002c\u0006\uffff\u0001\u002e\u0001"+
+ "\u0032\u0005\uffff\u0001\u0035\u0001\u0038\u0007\uffff\u0001\u003c\u0003"+
+ "\uffff\u0001\u0040\u0002\uffff\u0001\u0042\u0001\uffff\u0001\u00a8\u001a"+
+ "\uffff\u0001\u0057\u0015\uffff\u0001\u00d2\u0001\u00df\u0001\u00da\u0001"+
+ "\u00d9\u0001\uffff\u0001\u00d6\u0001\u00e1\u0001\u00e3\u0002\uffff\u0001"+
+ "\u0003\u0006\uffff\u0001\u00af\u0015\uffff\u0001\u0018\u0006\uffff\u0001"+
+ "\u0067\u0008\uffff\u0001\u0026\u000f\uffff\u0001\u0034\u0002\uffff\u0001"+
+ "\u0037\u0002\uffff\u0001\u0039\u0009\uffff\u0001\u00a7\u0017\uffff\u0001"+
+ "\u0092\u000a\uffff\u0001\u0077\u0011\uffff\u0001\u006d\u0001\uffff\u0001"+
+ "\u00a3\u0008\uffff\u0001\u00b0\u0006\uffff\u0001\u000b\u0001\uffff\u0001"+
+ "\u000c\u0009\uffff\u0001\u007e\u0009\uffff\u0001\u001c\u0004\uffff\u0001"+
+ "\u0095\u0002\uffff\u0001\u008f\u0005\uffff\u0001\u00a0\u0002\uffff\u0001"+
+ "\u002b\u0006\uffff\u0001\u0082\u0002\uffff\u0001\u0033\u0001\u0083\u0008"+
+ "\uffff\u0001\u006e\u0003\uffff\u0001\u003f\u0002\uffff\u0001\u006f\u0012"+
+ "\uffff\u0001\u0050\u0001\uffff\u0001\u0051\u0005\uffff\u0001\u0089\u0001"+
+ "\uffff\u0001\u0055\u0001\u0056\u000d\uffff\u0001\u0079\u0002\uffff\u0001"+
+ "\u008c\u0003\uffff\u0001\u00b1\u0001\u00d4\u0001\u00e0\u0003\uffff\u0001"+
+ "\u007c\u0005\uffff\u0001\u008d\u0002\uffff\u0001\u0061\u0001\u000e\u0001"+
+ "\u0099\u0005\uffff\u0001\u009c\u0002\uffff\u0001\u0063\u0005\uffff\u0001"+
+ "\u0066\u0003\uffff\u0001\u001d\u0002\uffff\u0001\u0021\u0006\uffff\u0001"+
+ "\u0080\u0002\uffff\u0001\u0068\u0007\uffff\u0001\u00a1\u0001\u0036\u0009"+
+ "\uffff\u0001\u0085\u0003\uffff\u0001\u0043\u0001\u0070\u000e\uffff\u0001"+
+ "\u00aa\u0004\uffff\u0001\u0076\u0001\uffff\u0001\u0054\u0002\uffff\u0001"+
+ "\u0058\u0002\uffff\u0001\u005a\u0003\uffff\u0001\u0096\u0001\uffff\u0001"+
+ "\u008b\u0002\uffff\u0001\u005f\u0001\u0094\u0003\uffff\u0001\u00a9\u0007"+
+ "\uffff\u0001\u007d\u0001\u00ad\u000d\uffff\u0001\u007f\u0005\uffff\u0001"+
+ "\u0022\u0007\uffff\u0001\u002d\u0002\uffff\u0001\u0081\u0003\uffff\u0001"+
+ "\u003a\u0001\u0084\u0007\uffff\u0001\u0041\u0002\uffff\u0001\u0046\u0009"+
+ "\uffff\u0001\u004b\u0001\u0086\u0005\uffff\u0001\u004d\u0001\uffff\u0001"+
+ "\u0052\u0001\u0053\u0001\uffff\u0001\u0093\u0002\uffff\u0001\u00ac\u0005"+
+ "\uffff\u0001\u007a\u0001\u0060\u000b\uffff\u0001\u0010\u0003\uffff\u0001"+
+ "\u0062\u0001\uffff\u0001\u0013\u0001\uffff\u0001\u0014\u0003\uffff\u0001"+
+ "\u001b\u0005\uffff\u0001\u009e\u0001\u009f\u0003\uffff\u0001\u002f\u0007"+
+ "\uffff\u0001\u00a6\u0003\uffff\u0001\u0044\u0006\uffff\u0001\u00ae\u0001"+
+ "\u0072\u0002\uffff\u0001\u0087\u0006\uffff\u0001\u0075\u0006\uffff\u0001"+
+ "\u005e\u0002\uffff\u0001\u0001\u0004\uffff\u0001\u0008\u0001\uffff\u0001"+
+ "\u000d\u0004\uffff\u0001\u008e\u0006\uffff\u0001\u0019\u0001\uffff\u0001"+
+ "\u001f\u0001\u009d\u0001\u0023\u0001\uffff\u0001\u0027\u0001\u0029\u0001"+
+ "\uffff\u0001\u0030\u0002\uffff\u0001\u006a\u0002\uffff\u0001\u00a5\u0003"+
+ "\uffff\u0001\u0045\u0002\uffff\u0001\u0049\u0001\u0074\u000a\uffff\u0001"+
+ "\u0078\u0001\uffff\u0001\u008a\u0001\u005c\u0001\u005d\u0002\uffff\u0001"+
+ "\u0005\u0001\u0007\u0003\uffff\u0001\u000f\u000b\uffff\u0001\u0024\u0001"+
+ "\uffff\u0001\u0031\u0001\u00a2\u0003\uffff\u0001\u003b\u0004\uffff\u0001"+
+ "\u0047\u0001\uffff\u0001\u0073\u0001\u0090\u0001\uffff\u0001\u00ab\u0001"+
+ "\u004c\u0004\uffff\u0001\u005b\u0005\uffff\u0001\u009a\u0001\uffff\u0001"+
+ "\u009b\u0004\uffff\u0001\u0015\u0001\u0017\u0004\uffff\u0001\u006b\u0001"+
+ "\u00a4\u0001\uffff\u0001\u003d\u0007\uffff\u0001\u0091\u0001\u0059\u0001"+
+ "\u007b\u0001\uffff\u0001\u0097\u000c\uffff\u0001\u003e\u0009\uffff\u0001"+
+ "\u0011\u000c\uffff\u0001\u0088\u0003\uffff\u0001\u0098\u0005\uffff\u0001"+
+ "\u001a\u000a\uffff\u0001\u0009\u0001\uffff\u0001\u0064\u0002\uffff\u0001"+
+ "\u001e\u0002\uffff\u0001\u006c\u0004\uffff\u0001\u004f\u0001\uffff\u0001"+
+ "\u0012\u0008\uffff\u0001\u0002\u0007\uffff\u0001\u004e\u0001\u0065\u0001"+
+ "\uffff\u0001\u0025\u0001\uffff\u0001\u0071\u0001\u0048\u0001\uffff\u0001"+
+ "\u0016\u0001\u0069\u0004\uffff\u0001\u004a",
+ DFA19_specialS:
+ "\u0001\u0001\u01d5\uffff\u0001\u0000\u0285\uffff}>",
+ DFA19_transitionS: [
+ "\u0009\u0036\u0002\u0034\u0002\u0036\u0001\u0034\u0012\u0036"+
+ "\u0001\u0034\u0001\u0022\u0001\u0032\u0001\u002f\u0001\u001b"+
+ "\u0001\u0036\u0001\u0023\u0001\u0031\u0001\u0019\u0001\u001a"+
+ "\u0001\u0026\u0001\u0027\u0001\u0024\u0001\u0028\u0001\u002c"+
+ "\u0001\u002b\u000a\u0035\u0001\u0021\u0001\u002d\u0001\u0029"+
+ "\u0001\u0020\u0001\u002a\u0001\u0025\u0001\u0030\u000d\u0033"+
+ "\u0001\u0015\u000c\u0033\u0001\u001e\u0001\u0036\u0001\u001f"+
+ "\u0001\u0036\u0001\u0033\u0001\u0036\u0001\u0001\u0001\u0002"+
+ "\u0001\u0003\u0001\u0004\u0001\u0005\u0001\u0006\u0001\u0007"+
+ "\u0001\u0033\u0001\u0008\u0001\u0033\u0001\u0017\u0001\u0009"+
+ "\u0001\u000a\u0001\u000b\u0001\u000c\u0001\u000d\u0001\u0018"+
+ "\u0001\u000e\u0001\u000f\u0001\u0010\u0001\u0011\u0001\u0012"+
+ "\u0001\u0013\u0001\u0014\u0001\u0033\u0001\u0016\u0001\u001c"+
+ "\u0001\u002e\u0001\u001d\uff82\u0036",
+ "\u0001\u003a\u0006\uffff\u0001\u003d\u0001\u0037\u0001\uffff"+
+ "\u0001\u003b\u0002\uffff\u0001\u0038\u0001\u0039\u0001\u003c",
+ "\u0001\u003f\u0003\uffff\u0001\u0042\u0003\uffff\u0001\u0044"+
+ "\u0002\uffff\u0001\u0043\u0002\uffff\u0001\u0040\u0009\uffff"+
+ "\u0001\u0041",
+ "\u0001\u0045\u0006\uffff\u0001\u0046\u0006\uffff\u0001\u0047",
+ "\u0001\u0048\u0003\uffff\u0001\u0049\u0005\uffff\u0001\u004a",
+ "\u0001\u004b\u0001\u004c\u0001\u004d\u0002\uffff\u0001\u004e"+
+ "\u0004\uffff\u0001\u004f\u0001\uffff\u0001\u0050",
+ "\u0001\u0053\u0005\uffff\u0001\u0051\u0002\uffff\u0001\u0054"+
+ "\u0002\uffff\u0001\u0052",
+ "\u0001\u0055\u000c\uffff\u0001\u0056\u0001\uffff\u0001\u0057",
+ "\u0001\u0058\u0001\uffff\u0001\u0059\u0006\uffff\u0001\u005a"+
+ "\u0001\u005b\u0004\uffff\u0001\u005c\u0001\u005d",
+ "\u0001\u005e\u0003\uffff\u0001\u005f\u000e\uffff\u0001\u0060",
+ "\u0001\u0063\u0007\uffff\u0001\u0062\u0005\uffff\u0001\u0061"+
+ "\u0005\uffff\u0001\u0064",
+ "\u0001\u0065\u0003\uffff\u0001\u0066\u0009\uffff\u0001\u0067",
+ "\u0001\u0068\u0007\uffff\u0001\u006b\u0001\uffff\u0001\u0069"+
+ "\u0001\uffff\u0001\u006a\u0002\uffff\u0001\u006c",
+ "\u0001\u006d\u0003\uffff\u0001\u006f\u000c\uffff\u0001\u006e",
+ "\u0001\u0071\u0003\uffff\u0001\u0070",
+ "\u0001\u0072\u0001\uffff\u0001\u0073\u0001\uffff\u0001\u0074"+
+ "\u0003\uffff\u0001\u0079\u0001\uffff\u0001\u0078\u0001\u0077"+
+ "\u0002\uffff\u0001\u0075\u0004\uffff\u0001\u0076",
+ "\u0001\u007a\u0002\uffff\u0001\u007b\u0006\uffff\u0001\u007c"+
+ "\u0002\uffff\u0001\u007d\u0002\uffff\u0001\u007f\u0003\uffff"+
+ "\u0001\u007e",
+ "\u0001\u0080\u0001\uffff\u0001\u0081\u0002\uffff\u0001\u0082",
+ "\u0001\u0083\u0003\uffff\u0001\u0084",
+ "\u0001\u0085\u0001\u0086",
+ "\u0001\u0087",
+ "\u0001\u0088",
+ "\u0001\u0089",
+ "\u0001\u008a",
+ "\u0001\u008b",
+ "\u0001\u008c\u0016\uffff\u0001\u008d",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u0097\u0002\uffff\u0001\u0096",
+ "\u0001\u0099",
+ "\u0001\u009a",
+ "",
+ "\u0001\u009d",
+ "",
+ "",
+ "\u0001\u00a1",
+ "\u0001\u00a6\u000d\uffff\u0001\u00a5\u000c\uffff\u0001\u00a4"+
+ "\u0001\u00a3\u0001\uffff\u0001\u00a7",
+ "\u0001\u00a9\u0001\u00aa",
+ "\u0001\u00ac\u000e\uffff\u0001\u00ad",
+ "\u0001\u00af\u0001\uffff\u000a\u00b1",
+ "",
+ "",
+ "\u0001\u00b4",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u00bb\u0001\uffff\u000a\u00ba\u000b\uffff\u0001\u00bc"+
+ "\u001f\uffff\u0001\u00bc",
+ "",
+ "\u0001\u00bd\u0001\u00be",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0002\u003e\u0001\u00bf"+
+ "\u0017\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0013\u003e\u0001\u00c1"+
+ "\u0006\u003e",
+ "\u0001\u00c3",
+ "\u0001\u00c5\u0001\u00c4",
+ "\u0001\u00c6",
+ "\u0001\u00c7",
+ "",
+ "\u0001\u00c8",
+ "\u0001\u00c9",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u00cb",
+ "\u0001\u00cc",
+ "\u0001\u00cd",
+ "\u0001\u00ce\u0001\u00cf",
+ "\u0001\u00d1\u0003\uffff\u0001\u00d0",
+ "\u0001\u00d2\u0001\u00d3\u0001\u00d4\u0001\uffff\u0001\u00d5"+
+ "\u0004\uffff\u0001\u00d6",
+ "\u0001\u00d7\u0002\uffff\u0001\u00d8\u0005\uffff\u0001\u00da"+
+ "\u0006\uffff\u0001\u00d9",
+ "\u0001\u00dc\u000e\uffff\u0001\u00db",
+ "\u0001\u00dd",
+ "\u0001\u00de\u000d\uffff\u0001\u00df",
+ "\u0001\u00e0",
+ "\u0001\u00e1\u0001\u00e2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0014\u003e\u0001\u00e3"+
+ "\u0005\u003e",
+ "\u0001\u00e6\u0003\uffff\u0001\u00e5",
+ "\u0001\u00e7\u0005\uffff\u0001\u00e9\u000a\uffff\u0001\u00e8",
+ "\u0001\u00ea\u0005\uffff\u0001\u00eb",
+ "\u0001\u00ec",
+ "\u0001\u00ed",
+ "\u0001\u00ee",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u00f0\u0009\uffff\u0001\u00f1",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u00f3",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u00f5",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0003\u003e\u0001\u00fa"+
+ "\u0001\u003e\u0001\u00f9\u0001\u003e\u0001\u00f6\u000a\u003e"+
+ "\u0001\u00f7\u0001\u00f8\u0006\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u00fd",
+ "\u0001\u00ff\u0004\uffff\u0001\u00fe",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0001\u0100\u0012\u003e"+
+ "\u0001\u0101\u0006\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0104",
+ "\u0001\u0105",
+ "\u0001\u0106\u0004\uffff\u0001\u0107",
+ "\u0001\u0108",
+ "\u0001\u0109",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0017\u003e\u0001\u010a"+
+ "\u0002\u003e",
+ "\u0001\u010c\u0036\uffff\u0001\u010d\u0009\uffff\u0001\u010e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0110",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0003\u003e\u0001\u0111"+
+ "\u0016\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u000b\u003e\u0001\u0113"+
+ "\u000e\u003e",
+ "\u0001\u0115",
+ "\u0001\u0116\u0001\uffff\u0001\u0117",
+ "\u0001\u0118\u0003\uffff\u0001\u011a\u0005\uffff\u0001\u0119",
+ "\u0001\u011b",
+ "\u0001\u0120\u000c\uffff\u0001\u011d\u0001\uffff\u0001\u011e"+
+ "\u0003\uffff\u0001\u011c\u0001\uffff\u0001\u011f",
+ "\u0001\u0121",
+ "\u0001\u0122",
+ "\u0001\u0123",
+ "\u0001\u0124\u0004\uffff\u0001\u0125\u0002\uffff\u0001\u0126",
+ "\u0001\u0127",
+ "\u0001\u0128\u0010\uffff\u0001\u0129",
+ "\u0001\u012a",
+ "\u0001\u012b",
+ "\u0001\u012c",
+ "\u0001\u012d",
+ "\u0001\u012e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0130\u0013\uffff\u0001\u0131",
+ "\u0001\u0132",
+ "\u0001\u0133",
+ "\u0001\u0134\u0005\uffff\u0001\u0135",
+ "\u0001\u0136",
+ "\u0001\u0137",
+ "\u0001\u0138\u0005\uffff\u0001\u0139",
+ "\u0001\u013a",
+ "\u0001\u013b\u0003\uffff\u0001\u013c",
+ "\u0001\u013d\u0005\uffff\u0001\u013e",
+ "\u0001\u013f",
+ "\u0001\u0140",
+ "\u0001\u0141",
+ "\u0001\u0142",
+ "\u0001\u0143\u0009\uffff\u0001\u0144",
+ "\u0002\u0146\u0002\uffff\u0001\u0146\u0012\uffff\u0001\u0146"+
+ "\u0020\uffff\u001a\u0146\u0004\uffff\u0001\u0146\u0001\uffff"+
+ "\u001a\u0146",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u0147",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u0149",
+ "\u0002\u014b\u0002\uffff\u0001\u014b\u0012\uffff\u0001\u014b"+
+ "\u0020\uffff\u001a\u014b\u0004\uffff\u0001\u014b\u0001\uffff"+
+ "\u001a\u014b",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u000a\u00b1\u000b\uffff\u0001\u00bc\u001f\uffff\u0001\u00bc",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u00bb\u0001\uffff\u000a\u00ba\u000b\uffff\u0001\u00bc"+
+ "\u001f\uffff\u0001\u00bc",
+ "\u000a\u014d\u000b\uffff\u0001\u00bc\u001f\uffff\u0001\u00bc",
+ "",
+ "\u0001\u014e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0150",
+ "",
+ "\u0001\u0151",
+ "",
+ "\u0001\u0152",
+ "\u0001\u0153",
+ "\u0001\u0154",
+ "\u0001\u0155",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0157",
+ "\u0001\u0158",
+ "",
+ "\u0001\u0159",
+ "\u0001\u015a",
+ "\u0001\u015b",
+ "\u0001\u015c\u000e\uffff\u0001\u015d",
+ "\u0001\u015e",
+ "\u0001\u015f",
+ "\u0001\u0160",
+ "\u0001\u0161",
+ "\u0001\u0162",
+ "\u0001\u0163\u0001\u0164",
+ "\u0001\u0165",
+ "\u0001\u0166",
+ "\u0001\u0168\u0002\uffff\u0001\u0167",
+ "\u0001\u0169",
+ "\u0001\u016a",
+ "\u0001\u016b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u016d",
+ "\u0001\u016e",
+ "\u0001\u016f",
+ "\u0001\u0170",
+ "\u0001\u0171",
+ "\u0001\u0172",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0174",
+ "",
+ "\u0001\u0175",
+ "\u0001\u0176",
+ "\u0001\u0177",
+ "\u0001\u0178",
+ "\u0001\u0179",
+ "\u0001\u017a",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0004\u003e\u0001\u017b"+
+ "\u0015\u003e",
+ "\u0001\u017d",
+ "\u0001\u017e",
+ "\u0001\u017f",
+ "",
+ "\u0001\u0180",
+ "\u0001\u0181",
+ "",
+ "\u0001\u0182",
+ "",
+ "\u0001\u0183",
+ "\u0001\u0184",
+ "\u0001\u0186\u000e\uffff\u0001\u0185",
+ "\u0001\u0187\u0009\uffff\u0001\u0188",
+ "\u0001\u0189",
+ "\u0001\u018a",
+ "",
+ "",
+ "\u0001\u018b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u018d",
+ "\u0001\u018e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0008\u003e\u0001\u0191"+
+ "\u000b\u003e\u0001\u0190\u0005\u003e",
+ "\u0001\u0193",
+ "\u0001\u0194",
+ "\u0001\u0195",
+ "\u0001\u0196",
+ "\u0001\u0197",
+ "\u0001\u0198",
+ "",
+ "\u0001\u0199\u0006\uffff\u0001\u019a",
+ "\u0001\u019b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u019d",
+ "\u0001\u019e",
+ "",
+ "\u0001\u019f",
+ "",
+ "\u0001\u01a0",
+ "\u0001\u01a1",
+ "\u0001\u01a2",
+ "\u0001\u01a3\u000f\uffff\u0001\u01a4\u0002\uffff\u0001\u01a5",
+ "\u0001\u01a6",
+ "\u0001\u01a7",
+ "\u0001\u01a9\u0035\uffff\u0001\u01a8",
+ "\u0001\u01aa",
+ "\u0001\u01ab",
+ "\u0001\u01ac",
+ "\u0001\u01ad",
+ "\u0001\u01ae",
+ "\u0001\u01af",
+ "\u0001\u01b0",
+ "\u0001\u01b1",
+ "\u0001\u01b2",
+ "\u0001\u01b3",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01b5",
+ "\u0001\u01b6\u000f\uffff\u0001\u01b7",
+ "\u0001\u01b8",
+ "\u0001\u01b9",
+ "\u0001\u01ba",
+ "\u0001\u01bb",
+ "\u0001\u01bc",
+ "\u0001\u01bd",
+ "",
+ "\u0001\u01be",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01c0",
+ "\u0001\u01c1",
+ "\u0001\u01c2\u0001\uffff\u0001\u01c3",
+ "\u0001\u01c4",
+ "\u0001\u01c5",
+ "\u0001\u01c6",
+ "\u0001\u01c7\u000b\uffff\u0001\u01c8",
+ "\u0001\u01c9",
+ "\u0001\u01ca",
+ "\u0001\u01cc\u0003\uffff\u0001\u01cb",
+ "\u0001\u01cd",
+ "\u0001\u01ce",
+ "\u0001\u01cf",
+ "\u0001\u01d0",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01d2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01d4",
+ "\u0001\u01d5",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u01d6",
+ "",
+ "",
+ "",
+ "\u000a\u014d\u000b\uffff\u0001\u00bc\u001f\uffff\u0001\u00bc",
+ "\u0001\u01d7",
+ "",
+ "\u0001\u01d8",
+ "\u0001\u01d9",
+ "\u0001\u01da",
+ "\u0001\u01db",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01dd",
+ "",
+ "\u0001\u01de",
+ "\u0001\u01df",
+ "\u0001\u01e0",
+ "\u0001\u01e1",
+ "\u0001\u01e2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0001\u01e4\u0019\u003e",
+ "\u0001\u01e6",
+ "\u0001\u01e7",
+ "\u0001\u01e8",
+ "\u0001\u01e9\u0003\uffff\u0001\u01ea",
+ "\u0001\u01eb",
+ "\u0001\u01ec",
+ "\u0001\u01ed",
+ "\u0001\u01ee\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01f0",
+ "\u0001\u01f1",
+ "\u0001\u01f2",
+ "\u0001\u01f3",
+ "\u0001\u01f4",
+ "\u0001\u01f5",
+ "",
+ "\u0001\u01f6",
+ "\u0001\u01f7",
+ "\u0001\u01f8",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01fa",
+ "\u0001\u01fb",
+ "",
+ "\u0001\u01fc",
+ "\u0001\u01fd",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u01ff",
+ "\u0001\u0200",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0202",
+ "\u0001\u0203\u0007\uffff\u0001\u0204",
+ "",
+ "\u0001\u0205",
+ "\u0001\u0206",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0208",
+ "\u0001\u0209",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u020b",
+ "\u0001\u020c",
+ "\u0001\u020d",
+ "\u0001\u020e",
+ "\u0001\u0210\u000a\uffff\u0001\u020f",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0212",
+ "\u0001\u0213",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0216",
+ "",
+ "\u0001\u0217",
+ "\u0001\u0218",
+ "",
+ "\u0001\u0219",
+ "\u0001\u021a",
+ "\u0001\u021b",
+ "\u0001\u021c",
+ "\u0001\u021d",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u021f",
+ "\u0001\u0220",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0012\u003e\u0001\u0221"+
+ "\u0007\u003e",
+ "",
+ "\u0001\u0223",
+ "\u0001\u0224",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0226",
+ "\u0001\u0227",
+ "\u0001\u0228",
+ "\u0001\u0229",
+ "\u0001\u022a",
+ "\u0001\u022b",
+ "\u0001\u022c",
+ "\u0001\u022d",
+ "\u0001\u022e",
+ "\u0001\u022f",
+ "\u0001\u0230",
+ "\u0001\u0231",
+ "\u0001\u0232",
+ "\u0001\u0233",
+ "\u0001\u0234",
+ "\u0001\u0235",
+ "\u0001\u0236",
+ "\u0001\u0237",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0239",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u023b",
+ "\u0001\u023c",
+ "\u0001\u023d\u000c\uffff\u0001\u023e",
+ "\u0001\u023f",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0241",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0244",
+ "",
+ "\u0001\u0245",
+ "\u0001\u0246",
+ "\u0001\u0247",
+ "\u0001\u0248",
+ "\u0001\u0249",
+ "\u0001\u024a",
+ "\u0001\u024b",
+ "\u0001\u024c",
+ "\u0001\u024d",
+ "\u0001\u024e",
+ "\u0001\u024f",
+ "\u0001\u0250",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0252",
+ "\u0001\u0253",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0255",
+ "",
+ "\u0001\u0256",
+ "",
+ "\u0001\u0257",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0000\u025a",
+ "\u0001\u025b",
+ "\u0001\u025c",
+ "\u0001\u025d",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u025f",
+ "",
+ "\u0001\u0260",
+ "\u0001\u0261",
+ "\u0001\u0262",
+ "\u0001\u0263",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0265",
+ "",
+ "\u0001\u0266",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u026a",
+ "\u0001\u026b",
+ "\u0001\u026c",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0001\u026e\u0010\u003e"+
+ "\u0001\u026d\u0008\u003e",
+ "\u0001\u0270",
+ "\u0001\u0271",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0273",
+ "\u0001\u0274",
+ "\u0001\u0275",
+ "\u0001\u0276",
+ "\u0001\u0277",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0279",
+ "\u0001\u027a",
+ "",
+ "\u0001\u027b\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u027d",
+ "\u0001\u027e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0280",
+ "\u0001\u0281",
+ "",
+ "\u0001\u0282",
+ "\u0001\u0283",
+ "\u0001\u0284",
+ "\u0001\u0285",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0287",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0008\u003e\u0001\u0288"+
+ "\u0011\u003e",
+ "",
+ "\u0001\u028a",
+ "\u0001\u028b",
+ "\u0001\u028c",
+ "\u0001\u028d",
+ "\u0001\u028e",
+ "\u0001\u028f",
+ "",
+ "\u0001\u0290",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0293",
+ "\u0001\u0294",
+ "\u0001\u0295",
+ "\u0001\u0296",
+ "\u0001\u0297",
+ "\u0001\u0298",
+ "\u0001\u0299",
+ "",
+ "\u0001\u029a",
+ "\u0001\u029b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u029d",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0004\u003e\u0001\u029e"+
+ "\u0003\u003e\u0001\u029f\u0011\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02a2",
+ "\u0001\u02a3",
+ "\u0001\u02a4",
+ "\u0001\u02a5",
+ "\u0001\u02a6",
+ "\u0001\u02a7",
+ "\u0001\u02a8",
+ "\u0001\u02a9",
+ "\u0001\u02aa",
+ "\u0001\u02ab",
+ "\u0001\u02ac",
+ "\u0001\u02ad",
+ "\u0001\u02ae",
+ "\u0001\u02af",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02b1",
+ "\u0001\u02b2",
+ "",
+ "\u0001\u02b3",
+ "",
+ "\u0001\u02b4",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02b6",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02b8",
+ "",
+ "\u0001\u02b9",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02bb",
+ "\u0001\u02bc",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02be",
+ "\u0001\u02bf",
+ "\u0001\u02c0",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02c2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02c4",
+ "\u0001\u02c5",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02c8",
+ "",
+ "\u0001\u02c9",
+ "\u0001\u02ca",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "",
+ "\u0001\u02cc",
+ "\u0001\u02cd",
+ "\u0001\u02ce",
+ "",
+ "\u0001\u02cf",
+ "\u0001\u02d0",
+ "\u0001\u02d1",
+ "\u0001\u02d2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02d5",
+ "",
+ "",
+ "",
+ "\u0001\u02d6",
+ "\u0001\u02d7",
+ "\u0001\u02d8",
+ "\u0001\u02da\u0013\uffff\u0001\u02d9",
+ "\u0001\u02db",
+ "",
+ "\u0001\u02dc",
+ "\u0001\u02dd",
+ "",
+ "\u0001\u02de",
+ "\u0001\u02df",
+ "\u0001\u02e0",
+ "\u0001\u02e1",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u02e3",
+ "\u0001\u02e4",
+ "\u0001\u02e5",
+ "",
+ "\u0001\u02e6",
+ "\u0001\u02e7",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02e9",
+ "\u0001\u02ea",
+ "\u0001\u02eb",
+ "\u0001\u02ec",
+ "\u0001\u02ed",
+ "",
+ "\u0001\u02ee",
+ "\u0001\u02ef",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02f1",
+ "\u0001\u02f2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02f4",
+ "\u0001\u02f5",
+ "\u0001\u02f6",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u02f9",
+ "\u0001\u02fa",
+ "\u0001\u02fb",
+ "\u0001\u02fc",
+ "\u0001\u02fd",
+ "\u0001\u02fe",
+ "\u0001\u02ff",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0301",
+ "\u0001\u0302",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0304",
+ "\u0001\u0305",
+ "\u0001\u0306",
+ "\u0001\u0307",
+ "\u0001\u0308",
+ "\u0001\u0309",
+ "\u0001\u030a",
+ "\u0001\u030b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u0008\u003e\u0001\u030c"+
+ "\u0011\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u030f",
+ "\u0001\u0310",
+ "\u0001\u0311",
+ "",
+ "\u0001\u0312",
+ "\u0001\u0313\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0315",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0318",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u031a",
+ "\u0001\u031b",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u031d",
+ "\u0001\u031e",
+ "",
+ "\u0001\u031f",
+ "",
+ "\u0001\u0320",
+ "\u0001\u0321",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0324",
+ "",
+ "\u0001\u0325",
+ "\u0001\u0326",
+ "\u0001\u0327",
+ "\u0001\u0328",
+ "\u0001\u0329",
+ "\u0001\u032a",
+ "\u0001\u032b",
+ "",
+ "",
+ "\u0001\u032c",
+ "\u0001\u032d",
+ "\u0001\u032e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0330",
+ "\u0001\u0331",
+ "\u0001\u0332",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0334",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0336",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0338\u0007\uffff\u0001\u0339",
+ "",
+ "\u0001\u033a",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u033c",
+ "\u0001\u033d",
+ "\u0001\u033e",
+ "",
+ "\u0001\u033f",
+ "\u0001\u0340",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0343",
+ "\u0001\u0344",
+ "\u0001\u0345",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0347",
+ "",
+ "\u0001\u0348",
+ "\u0001\u0349",
+ "\u0001\u034a",
+ "",
+ "",
+ "\u0001\u034b",
+ "\u0001\u034c",
+ "\u0001\u034d",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u034f",
+ "\u0001\u0350",
+ "\u0001\u0351",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0353",
+ "",
+ "\u0001\u0354",
+ "\u0001\u0355",
+ "\u0001\u0356",
+ "\u0001\u0357",
+ "\u0001\u0358",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u035b",
+ "\u0001\u035c",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u035e",
+ "\u0001\u035f",
+ "\u0001\u0360",
+ "\u0001\u0361\u0003\uffff\u0001\u0362",
+ "",
+ "\u0001\u0363",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0365",
+ "\u0001\u0366",
+ "",
+ "\u0001\u0367",
+ "\u0001\u0368",
+ "\u0001\u0369",
+ "\u0001\u036a",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0001\u036c",
+ "\u0001\u036d\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u036f",
+ "\u0001\u0370",
+ "\u0001\u0371",
+ "\u0001\u0372",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0374",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0376",
+ "\u0001\u0377",
+ "",
+ "\u0001\u0378",
+ "\u0001\u0379",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u037b",
+ "",
+ "\u0001\u037c\u000c\uffff\u0001\u037d",
+ "",
+ "\u0001\u037e",
+ "\u0001\u037f",
+ "\u0001\u0380\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0382",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0386",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0389",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u038b",
+ "\u0001\u038c",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u038e",
+ "\u0001\u038f",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0391",
+ "\u0001\u0392",
+ "\u0001\u0393",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0395",
+ "\u0001\u0396",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0399",
+ "",
+ "",
+ "\u0001\u039a",
+ "\u0001\u039b",
+ "",
+ "\u0001\u039c",
+ "\u0001\u039d",
+ "\u0001\u039e",
+ "\u0001\u039f",
+ "\u0001\u03a0",
+ "\u0001\u03a1",
+ "",
+ "\u0001\u03a2",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03a4",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u03a8",
+ "\u0001\u03a9",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03ac",
+ "\u0001\u03ad",
+ "",
+ "\u0001\u03ae",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03b0",
+ "\u0001\u03b1",
+ "\u0001\u03b2",
+ "",
+ "\u0001\u03b3",
+ "\u0001\u03b4",
+ "\u0001\u03b5",
+ "\u0001\u03b6",
+ "\u0001\u03b7",
+ "\u0001\u03b8",
+ "",
+ "\u0001\u03b9",
+ "",
+ "",
+ "",
+ "\u0001\u03ba\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0001\u03bc",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u03bf",
+ "\u0001\u03c0",
+ "",
+ "\u0001\u03c1\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03c3",
+ "\u0001\u03c4",
+ "",
+ "\u0001\u03c5",
+ "\u0001\u03c6\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0001\u03c8",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03cb",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03ce",
+ "\u0001\u03cf",
+ "\u0001\u03d0",
+ "\u0001\u03d1",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "",
+ "\u0001\u03d3",
+ "\u0001\u03d4",
+ "",
+ "",
+ "\u0001\u03d5",
+ "\u0001\u03d6",
+ "\u0001\u03d7",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03d9",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03db",
+ "\u0001\u03dc",
+ "\u0001\u03dd",
+ "\u0001\u03de\u0001\u003e\u0001\uffff\u000a\u003e\u0007\uffff"+
+ "\u001a\u003e\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03e1",
+ "\u0001\u03e2",
+ "\u0001\u03e3",
+ "",
+ "\u0001\u03e4",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03e7",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03e9",
+ "\u0001\u03ea",
+ "\u0001\u03eb",
+ "",
+ "\u0001\u03ec",
+ "",
+ "",
+ "\u0001\u03ed",
+ "",
+ "",
+ "\u0001\u03ee",
+ "\u0001\u03ef",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03f3",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u03f5",
+ "\u0001\u03f6",
+ "",
+ "\u0001\u03f7",
+ "",
+ "\u0001\u03f8",
+ "\u0001\u03f9",
+ "\u0001\u03fa",
+ "\u0001\u03fb",
+ "",
+ "",
+ "\u0001\u03fc",
+ "\u0001\u03fd",
+ "\u0001\u03fe",
+ "\u0001\u03ff",
+ "",
+ "",
+ "\u0001\u0400",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0402",
+ "\u0001\u0403",
+ "\u0001\u0404",
+ "\u0001\u0405",
+ "\u0001\u0406",
+ "\u0001\u0407",
+ "",
+ "",
+ "",
+ "\u0001\u0408",
+ "",
+ "\u0001\u0409",
+ "\u0001\u040a",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u040c",
+ "\u0001\u040d",
+ "\u0001\u040e",
+ "\u0001\u040f",
+ "\u0001\u0410",
+ "\u0001\u0411",
+ "\u0001\u0412",
+ "\u0001\u0413",
+ "\u0001\u0414",
+ "",
+ "\u0001\u0415",
+ "\u0001\u0416",
+ "\u0001\u0417",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0419",
+ "\u0001\u041a",
+ "\u0001\u041b",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u041d",
+ "",
+ "\u0001\u041e",
+ "\u0001\u041f",
+ "\u0001\u0420",
+ "\u0001\u0421",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0423",
+ "\u0001\u0424",
+ "\u0001\u0425",
+ "\u0001\u0426",
+ "\u0001\u0427",
+ "\u0001\u0428",
+ "\u0001\u0429",
+ "",
+ "\u0001\u042a",
+ "\u0001\u042b",
+ "\u0001\u042c",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u042e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0430",
+ "\u0001\u0431",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0433",
+ "\u0001\u0434",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0436",
+ "\u0001\u0437",
+ "\u0001\u0438",
+ "\u0001\u0439",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u043b",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u043d",
+ "\u0001\u043e",
+ "",
+ "\u0001\u043f",
+ "\u0001\u0440",
+ "",
+ "\u0001\u0441",
+ "\u0001\u0442",
+ "\u0001\u0443",
+ "\u0001\u0444",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0001\u0446",
+ "\u0001\u0447",
+ "\u0001\u0448",
+ "\u0001\u0449",
+ "\u0001\u044a",
+ "\u0001\u044b",
+ "\u0001\u044c",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u044f",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0451",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "\u0001\u0454",
+ "",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ "",
+ "",
+ "\u0001\u0457",
+ "",
+ "",
+ "\u0001\u0458",
+ "\u0001\u0459",
+ "\u0001\u045a",
+ "\u0002\u003e\u0001\uffff\u000a\u003e\u0007\uffff\u001a\u003e"+
+ "\u0004\uffff\u0001\u003e\u0001\uffff\u001a\u003e",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryLexer, {
+ DFA19_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryLexer.DFA19_eotS),
+ DFA19_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryLexer.DFA19_eofS),
+ DFA19_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryLexer.DFA19_minS),
+ DFA19_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryLexer.DFA19_maxS),
+ DFA19_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryLexer.DFA19_acceptS),
+ DFA19_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryLexer.DFA19_specialS),
+ DFA19_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryLexer.DFA19_transitionS.length;
+ for (i=0; i='\u0000' && LA19_470<='\uFFFF')) ) {s = 602;}
+
+ else s = 601;
+
+ if ( s>=0 ) return s;
+ break;
+ case 1 :
+ var LA19_0 = input.LA(1);
+
+ s = -1;
+ if ( (LA19_0=='a') ) {s = 1;}
+
+ else if ( (LA19_0=='b') ) {s = 2;}
+
+ else if ( (LA19_0=='c') ) {s = 3;}
+
+ else if ( (LA19_0=='d') ) {s = 4;}
+
+ else if ( (LA19_0=='e') ) {s = 5;}
+
+ else if ( (LA19_0=='f') ) {s = 6;}
+
+ else if ( (LA19_0=='g') ) {s = 7;}
+
+ else if ( (LA19_0=='i') ) {s = 8;}
+
+ else if ( (LA19_0=='l') ) {s = 9;}
+
+ else if ( (LA19_0=='m') ) {s = 10;}
+
+ else if ( (LA19_0=='n') ) {s = 11;}
+
+ else if ( (LA19_0=='o') ) {s = 12;}
+
+ else if ( (LA19_0=='p') ) {s = 13;}
+
+ else if ( (LA19_0=='r') ) {s = 14;}
+
+ else if ( (LA19_0=='s') ) {s = 15;}
+
+ else if ( (LA19_0=='t') ) {s = 16;}
+
+ else if ( (LA19_0=='u') ) {s = 17;}
+
+ else if ( (LA19_0=='v') ) {s = 18;}
+
+ else if ( (LA19_0=='w') ) {s = 19;}
+
+ else if ( (LA19_0=='x') ) {s = 20;}
+
+ else if ( (LA19_0=='N') ) {s = 21;}
+
+ else if ( (LA19_0=='z') ) {s = 22;}
+
+ else if ( (LA19_0=='k') ) {s = 23;}
+
+ else if ( (LA19_0=='q') ) {s = 24;}
+
+ else if ( (LA19_0=='(') ) {s = 25;}
+
+ else if ( (LA19_0==')') ) {s = 26;}
+
+ else if ( (LA19_0=='$') ) {s = 27;}
+
+ else if ( (LA19_0=='{') ) {s = 28;}
+
+ else if ( (LA19_0=='}') ) {s = 29;}
+
+ else if ( (LA19_0=='[') ) {s = 30;}
+
+ else if ( (LA19_0==']') ) {s = 31;}
+
+ else if ( (LA19_0=='=') ) {s = 32;}
+
+ else if ( (LA19_0==':') ) {s = 33;}
+
+ else if ( (LA19_0=='!') ) {s = 34;}
+
+ else if ( (LA19_0=='&') ) {s = 35;}
+
+ else if ( (LA19_0==',') ) {s = 36;}
+
+ else if ( (LA19_0=='?') ) {s = 37;}
+
+ else if ( (LA19_0=='*') ) {s = 38;}
+
+ else if ( (LA19_0=='+') ) {s = 39;}
+
+ else if ( (LA19_0=='-') ) {s = 40;}
+
+ else if ( (LA19_0=='<') ) {s = 41;}
+
+ else if ( (LA19_0=='>') ) {s = 42;}
+
+ else if ( (LA19_0=='/') ) {s = 43;}
+
+ else if ( (LA19_0=='.') ) {s = 44;}
+
+ else if ( (LA19_0==';') ) {s = 45;}
+
+ else if ( (LA19_0=='|') ) {s = 46;}
+
+ else if ( (LA19_0=='#') ) {s = 47;}
+
+ else if ( (LA19_0=='@') ) {s = 48;}
+
+ else if ( (LA19_0=='\'') ) {s = 49;}
+
+ else if ( (LA19_0=='\"') ) {s = 50;}
+
+ else if ( ((LA19_0>='A' && LA19_0<='M')||(LA19_0>='O' && LA19_0<='Z')||LA19_0=='_'||LA19_0=='h'||LA19_0=='j'||LA19_0=='y') ) {s = 51;}
+
+ else if ( ((LA19_0>='\t' && LA19_0<='\n')||LA19_0=='\r'||LA19_0==' ') ) {s = 52;}
+
+ else if ( ((LA19_0>='0' && LA19_0<='9')) ) {s = 53;}
+
+ else if ( ((LA19_0>='\u0000' && LA19_0<='\b')||(LA19_0>='\u000B' && LA19_0<='\f')||(LA19_0>='\u000E' && LA19_0<='\u001F')||LA19_0=='%'||LA19_0=='\\'||LA19_0=='^'||LA19_0=='`'||(LA19_0>='~' && LA19_0<='\uFFFF')) ) {s = 54;}
+
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 19, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+
+})();
+
+});
+/********************************
+ * Copyright (c) 2008, 2009 28msec Inc. and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gabriel Petrovay (28msec) - initial API and implementation
+ * Sam Neth (Mark Logic)
+ *******************************************************************************/
+
+
+define('ace/mode/xquery/XQueryParser', ['require', 'exports', 'module' , 'ace/mode/xquery/antlr3-all'], function(require, exports, module) {
+var org = require("./antlr3-all").org;
+ var XQueryParser = exports.XQueryParser = function(input, state) {
+ if (!state) {
+ state = new org.antlr.runtime.RecognizerSharedState();
+ }
+
+ (function(){
+ }).call(this);
+
+ XQueryParser.superclass.constructor.call(this, input, state);
+
+ this.dfa6 = new XQueryParser.DFA6(this);
+ this.dfa7 = new XQueryParser.DFA7(this);
+ this.dfa8 = new XQueryParser.DFA8(this);
+ this.dfa49 = new XQueryParser.DFA49(this);
+ this.dfa103 = new XQueryParser.DFA103(this);
+ this.dfa110 = new XQueryParser.DFA110(this);
+ this.dfa112 = new XQueryParser.DFA112(this);
+ this.dfa114 = new XQueryParser.DFA114(this);
+ this.dfa119 = new XQueryParser.DFA119(this);
+ this.dfa124 = new XQueryParser.DFA124(this);
+ this.dfa154 = new XQueryParser.DFA154(this);
+ this.dfa156 = new XQueryParser.DFA156(this);
+
+
+
+ /* @todo only create adaptor if output=AST */
+ this.adaptor = new org.antlr.runtime.tree.CommonTreeAdaptor();
+
+};
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ EOF: -1,
+ L_QuotAttrContentChar: 4,
+ L_AposAttrContentChar: 5,
+ L_ElementContentChar: 6,
+ L_CDataSection: 7,
+ L_PredefinedEntityRef: 8,
+ L_CharRef: 9,
+ ESCAPE_LBRACKET: 10,
+ ESCAPE_RBRACKET: 11,
+ ESCAPE_APOS: 12,
+ ESCAPE_QUOT: 13,
+ CDATA_START: 14,
+ CDATA_END: 15,
+ ANCESTOR: 16,
+ ANCESTOR_OR_SELF: 17,
+ AND: 18,
+ AS: 19,
+ ASCENDING: 20,
+ AT: 21,
+ ATTRIBUTE: 22,
+ BASE_URI: 23,
+ BOUNDARY_SPACE: 24,
+ BY: 25,
+ CASE: 26,
+ CAST: 27,
+ CASTABLE: 28,
+ CHILD: 29,
+ COLLATION: 30,
+ COMMENT: 31,
+ CONSTRUCTION: 32,
+ COPY_NAMESPACES: 33,
+ DECLARE: 34,
+ DEFAULT: 35,
+ DESCENDANT: 36,
+ DESCENDANT_OR_SELF: 37,
+ DESCENDING: 38,
+ DIV: 39,
+ DOCUMENT: 40,
+ DOCUMENT_NODE: 41,
+ ELEMENT: 42,
+ ELSE: 43,
+ EMPTY: 44,
+ EMPTY_SEQUENCE: 45,
+ ENCODING: 46,
+ EQ: 47,
+ EVERY: 48,
+ EXCEPT: 49,
+ EXTERNAL: 50,
+ FOLLOWING: 51,
+ FOLLOWING_SIBLING: 52,
+ FOR: 53,
+ FUNCTION: 54,
+ GE: 55,
+ GREATEST: 56,
+ GT: 57,
+ IDIV: 58,
+ IF: 59,
+ IMPORT: 60,
+ IN: 61,
+ INHERIT: 62,
+ INSTANCE: 63,
+ INTERSECT: 64,
+ IS: 65,
+ ITEM: 66,
+ LAX: 67,
+ LE: 68,
+ LEAST: 69,
+ LET: 70,
+ LT: 71,
+ MOD: 72,
+ MODULE: 73,
+ NAMESPACE: 74,
+ NE: 75,
+ NO_INHERIT: 76,
+ NO_PRESERVE: 77,
+ NODE: 78,
+ OF: 79,
+ OPTION: 80,
+ OR: 81,
+ ORDER: 82,
+ ORDERED: 83,
+ ORDERING: 84,
+ PARENT: 85,
+ PRECEDING: 86,
+ PRECEDING_SIBLING: 87,
+ PRESERVE: 88,
+ PROCESSING_INSTRUCTION: 89,
+ RETURN: 90,
+ SATISFIES: 91,
+ SCHEMA: 92,
+ SCHEMA_ATTRIBUTE: 93,
+ SCHEMA_ELEMENT: 94,
+ SELF: 95,
+ SOME: 96,
+ STABLE: 97,
+ STRICT: 98,
+ STRIP: 99,
+ TEXT: 100,
+ THEN: 101,
+ TO: 102,
+ TREAT: 103,
+ TYPESWITCH: 104,
+ UNION: 105,
+ UNORDERED: 106,
+ VALIDATE: 107,
+ VARIABLE: 108,
+ VERSION: 109,
+ WHERE: 110,
+ XQUERY: 111,
+ CATCH: 112,
+ CONTEXT: 113,
+ COUNT: 114,
+ DECIMAL_FORMAT: 115,
+ DECIMAL_SEPARATOR: 116,
+ DIGIT: 117,
+ END: 118,
+ GROUP: 119,
+ GROUPING_SEPARATOR: 120,
+ INFINITY: 121,
+ MINUS_SIGN: 122,
+ NAMESPACE_NODE: 123,
+ NAN: 124,
+ NEXT: 125,
+ ONLY: 126,
+ OUTER: 127,
+ PATTERN_SEPARATOR: 128,
+ PERCENT: 129,
+ PER_MILLE: 130,
+ PREVIOUS: 131,
+ SLIDING: 132,
+ START: 133,
+ TRY: 134,
+ TUMBLING: 135,
+ WHEN: 136,
+ WINDOW: 137,
+ ZERO_DIGIT: 138,
+ AFTER: 139,
+ BEFORE: 140,
+ COPY: 141,
+ DELETE: 142,
+ FIRST: 143,
+ INSERT: 144,
+ INTO: 145,
+ LAST: 146,
+ MODIFY: 147,
+ NODES: 148,
+ RENAME: 149,
+ REPLACE: 150,
+ REVALIDATION: 151,
+ SKIP: 152,
+ UPDATING: 153,
+ VALUE: 154,
+ WITH: 155,
+ BLOCK: 156,
+ CONSTANT: 157,
+ EXIT: 158,
+ RETURNING: 159,
+ SEQUENTIAL: 160,
+ SET: 161,
+ SIMPLE: 162,
+ WHILE: 163,
+ EVAL: 164,
+ USING: 165,
+ APPEND_ONLY: 166,
+ AUTOMATICALLY: 167,
+ CHECK: 168,
+ COLLECTION: 169,
+ CONSTRAINT: 170,
+ CONST: 171,
+ EQUALITY: 172,
+ FOREACH: 173,
+ FOREIGN: 174,
+ FROM: 175,
+ INDEX: 176,
+ INTEGRITY: 177,
+ KEY: 178,
+ MAINTAINED: 179,
+ MANUALLY: 180,
+ MUTABLE: 181,
+ NON: 182,
+ ON: 183,
+ QUEUE: 184,
+ RANGE: 185,
+ READ_ONLY: 186,
+ UNIQUE: 187,
+ BINARY: 188,
+ PRIVATE: 189,
+ AMP_ER: 190,
+ APOS_ER: 191,
+ QUOT_ER: 192,
+ LPAREN: 193,
+ RPAREN: 194,
+ DOLLAR: 195,
+ LBRACKET: 196,
+ RBRACKET: 197,
+ LSQUARE: 198,
+ RSQUARE: 199,
+ EQUAL: 200,
+ BIND: 201,
+ NOTEQUAL: 202,
+ AMP: 203,
+ COMMA: 204,
+ QUESTION: 205,
+ STAR: 206,
+ PLUS: 207,
+ MINUS: 208,
+ SMALLER: 209,
+ GREATER: 210,
+ SMALLEREQ: 211,
+ GREATEREQ: 212,
+ SMALLER_SMALLER: 213,
+ GREATER_GREATER: 214,
+ SLASH: 215,
+ SLASH_SLASH: 216,
+ DOT: 217,
+ DOT_DOT: 218,
+ COLON: 219,
+ COLON_COLON: 220,
+ EMPTY_CLOSE_TAG: 221,
+ CLOSE_TAG: 222,
+ SEMICOLON: 223,
+ VBAR: 224,
+ PRAGMA_START: 225,
+ PRAGMA_END: 226,
+ XML_COMMENT_START: 227,
+ XML_COMMENT_END: 228,
+ PI_START: 229,
+ PI_END: 230,
+ ATTR_SIGN: 231,
+ CHARREF_DEC: 232,
+ CHARREF_HEX: 233,
+ APOS: 234,
+ QUOT: 235,
+ NCNameStartChar: 236,
+ NCNameChar: 237,
+ L_NCName: 238,
+ Letter: 239,
+ HexLetter: 240,
+ Digit: 241,
+ Digits: 242,
+ S: 243,
+ SU: 244,
+ L_Pragma: 245,
+ L_DirCommentConstructor: 246,
+ L_DirPIConstructor: 247,
+ L_IntegerLiteral: 248,
+ L_DecimalLiteral: 249,
+ L_DoubleLiteral: 250,
+ L_Comment: 251,
+ L_AnyChar: 252,
+ L_QuotStringLiteralChar: 253,
+ L_AposStringLiteralChar: 254,
+ LibraryModule: 255,
+ MainModule: 256,
+ VersionDecl: 257,
+ VersionDeclEncoding: 258,
+ VersionDeclVersion: 259,
+ ModuleDecl: 260,
+ Prolog: 261,
+ DefaultNamespaceDecls: 262,
+ DefaultNamespaceDecl: 263,
+ Setters: 264,
+ Setter: 265,
+ NamespaceDecls: 266,
+ NamespaceDecl: 267,
+ Imports: 268,
+ SchemaImport: 269,
+ SchemaPrefix: 270,
+ NamespaceName: 271,
+ DefaultElementNamespace: 272,
+ AtHints: 273,
+ ModuleImport: 274,
+ BaseURIDecl: 275,
+ OrderedDecls: 276,
+ VarDecl: 277,
+ VarType: 278,
+ VarValue: 279,
+ VarDefaultValue: 280,
+ VarConstantDecl: 281,
+ VarVariableDecl: 282,
+ FunctionDecl: 283,
+ ParamList: 284,
+ ReturnType: 285,
+ OptionDecl: 286,
+ TypeDeclaration: 287,
+ Param: 288,
+ EnclosedExpr: 289,
+ QueryBody: 290,
+ UnaryExpr: 291,
+ DirElemConstructor: 292,
+ DirAttributeList: 293,
+ DirAttributeValue: 294,
+ DirElemContent: 295,
+ CommonContent: 296,
+ SequenceType: 297,
+ EmptySequenceTest: 298,
+ KindTest: 299,
+ ItemTest: 300,
+ AtomicType: 301,
+ StringLiteral: 302,
+ ElementContentChar: 303,
+ AttributeValueChar: 304,
+ QName: 305,
+ Block: 306,
+ BlockDecls: 307,
+ BlockVarDecl: 308,
+ BinaryTest: 309,
+ LETDOLLAR: 310,
+ EXPLICITLY: 311
+});
+
+(function(){
+// public class variables
+var EOF= -1,
+ L_QuotAttrContentChar= 4,
+ L_AposAttrContentChar= 5,
+ L_ElementContentChar= 6,
+ L_CDataSection= 7,
+ L_PredefinedEntityRef= 8,
+ L_CharRef= 9,
+ ESCAPE_LBRACKET= 10,
+ ESCAPE_RBRACKET= 11,
+ ESCAPE_APOS= 12,
+ ESCAPE_QUOT= 13,
+ CDATA_START= 14,
+ CDATA_END= 15,
+ ANCESTOR= 16,
+ ANCESTOR_OR_SELF= 17,
+ AND= 18,
+ AS= 19,
+ ASCENDING= 20,
+ AT= 21,
+ ATTRIBUTE= 22,
+ BASE_URI= 23,
+ BOUNDARY_SPACE= 24,
+ BY= 25,
+ CASE= 26,
+ CAST= 27,
+ CASTABLE= 28,
+ CHILD= 29,
+ COLLATION= 30,
+ COMMENT= 31,
+ CONSTRUCTION= 32,
+ COPY_NAMESPACES= 33,
+ DECLARE= 34,
+ DEFAULT= 35,
+ DESCENDANT= 36,
+ DESCENDANT_OR_SELF= 37,
+ DESCENDING= 38,
+ DIV= 39,
+ DOCUMENT= 40,
+ DOCUMENT_NODE= 41,
+ ELEMENT= 42,
+ ELSE= 43,
+ EMPTY= 44,
+ EMPTY_SEQUENCE= 45,
+ ENCODING= 46,
+ EQ= 47,
+ EVERY= 48,
+ EXCEPT= 49,
+ EXTERNAL= 50,
+ FOLLOWING= 51,
+ FOLLOWING_SIBLING= 52,
+ FOR= 53,
+ FUNCTION= 54,
+ GE= 55,
+ GREATEST= 56,
+ GT= 57,
+ IDIV= 58,
+ IF= 59,
+ IMPORT= 60,
+ IN= 61,
+ INHERIT= 62,
+ INSTANCE= 63,
+ INTERSECT= 64,
+ IS= 65,
+ ITEM= 66,
+ LAX= 67,
+ LE= 68,
+ LEAST= 69,
+ LET= 70,
+ LT= 71,
+ MOD= 72,
+ MODULE= 73,
+ NAMESPACE= 74,
+ NE= 75,
+ NO_INHERIT= 76,
+ NO_PRESERVE= 77,
+ NODE= 78,
+ OF= 79,
+ OPTION= 80,
+ OR= 81,
+ ORDER= 82,
+ ORDERED= 83,
+ ORDERING= 84,
+ PARENT= 85,
+ PRECEDING= 86,
+ PRECEDING_SIBLING= 87,
+ PRESERVE= 88,
+ PROCESSING_INSTRUCTION= 89,
+ RETURN= 90,
+ SATISFIES= 91,
+ SCHEMA= 92,
+ SCHEMA_ATTRIBUTE= 93,
+ SCHEMA_ELEMENT= 94,
+ SELF= 95,
+ SOME= 96,
+ STABLE= 97,
+ STRICT= 98,
+ STRIP= 99,
+ TEXT= 100,
+ THEN= 101,
+ TO= 102,
+ TREAT= 103,
+ TYPESWITCH= 104,
+ UNION= 105,
+ UNORDERED= 106,
+ VALIDATE= 107,
+ VARIABLE= 108,
+ VERSION= 109,
+ WHERE= 110,
+ XQUERY= 111,
+ CATCH= 112,
+ CONTEXT= 113,
+ COUNT= 114,
+ DECIMAL_FORMAT= 115,
+ DECIMAL_SEPARATOR= 116,
+ DIGIT= 117,
+ END= 118,
+ GROUP= 119,
+ GROUPING_SEPARATOR= 120,
+ INFINITY= 121,
+ MINUS_SIGN= 122,
+ NAMESPACE_NODE= 123,
+ NAN= 124,
+ NEXT= 125,
+ ONLY= 126,
+ OUTER= 127,
+ PATTERN_SEPARATOR= 128,
+ PERCENT= 129,
+ PER_MILLE= 130,
+ PREVIOUS= 131,
+ SLIDING= 132,
+ START= 133,
+ TRY= 134,
+ TUMBLING= 135,
+ WHEN= 136,
+ WINDOW= 137,
+ ZERO_DIGIT= 138,
+ AFTER= 139,
+ BEFORE= 140,
+ COPY= 141,
+ DELETE= 142,
+ FIRST= 143,
+ INSERT= 144,
+ INTO= 145,
+ LAST= 146,
+ MODIFY= 147,
+ NODES= 148,
+ RENAME= 149,
+ REPLACE= 150,
+ REVALIDATION= 151,
+ SKIP= 152,
+ UPDATING= 153,
+ VALUE= 154,
+ WITH= 155,
+ BLOCK= 156,
+ CONSTANT= 157,
+ EXIT= 158,
+ RETURNING= 159,
+ SEQUENTIAL= 160,
+ SET= 161,
+ SIMPLE= 162,
+ WHILE= 163,
+ EVAL= 164,
+ USING= 165,
+ APPEND_ONLY= 166,
+ AUTOMATICALLY= 167,
+ CHECK= 168,
+ COLLECTION= 169,
+ CONSTRAINT= 170,
+ CONST= 171,
+ EQUALITY= 172,
+ FOREACH= 173,
+ FOREIGN= 174,
+ FROM= 175,
+ INDEX= 176,
+ INTEGRITY= 177,
+ KEY= 178,
+ MAINTAINED= 179,
+ MANUALLY= 180,
+ MUTABLE= 181,
+ NON= 182,
+ ON= 183,
+ QUEUE= 184,
+ RANGE= 185,
+ READ_ONLY= 186,
+ UNIQUE= 187,
+ BINARY= 188,
+ PRIVATE= 189,
+ AMP_ER= 190,
+ APOS_ER= 191,
+ QUOT_ER= 192,
+ LPAREN= 193,
+ RPAREN= 194,
+ DOLLAR= 195,
+ LBRACKET= 196,
+ RBRACKET= 197,
+ LSQUARE= 198,
+ RSQUARE= 199,
+ EQUAL= 200,
+ BIND= 201,
+ NOTEQUAL= 202,
+ AMP= 203,
+ COMMA= 204,
+ QUESTION= 205,
+ STAR= 206,
+ PLUS= 207,
+ MINUS= 208,
+ SMALLER= 209,
+ GREATER= 210,
+ SMALLEREQ= 211,
+ GREATEREQ= 212,
+ SMALLER_SMALLER= 213,
+ GREATER_GREATER= 214,
+ SLASH= 215,
+ SLASH_SLASH= 216,
+ DOT= 217,
+ DOT_DOT= 218,
+ COLON= 219,
+ COLON_COLON= 220,
+ EMPTY_CLOSE_TAG= 221,
+ CLOSE_TAG= 222,
+ SEMICOLON= 223,
+ VBAR= 224,
+ PRAGMA_START= 225,
+ PRAGMA_END= 226,
+ XML_COMMENT_START= 227,
+ XML_COMMENT_END= 228,
+ PI_START= 229,
+ PI_END= 230,
+ ATTR_SIGN= 231,
+ CHARREF_DEC= 232,
+ CHARREF_HEX= 233,
+ APOS= 234,
+ QUOT= 235,
+ NCNameStartChar= 236,
+ NCNameChar= 237,
+ L_NCName= 238,
+ Letter= 239,
+ HexLetter= 240,
+ Digit= 241,
+ Digits= 242,
+ S= 243,
+ SU= 244,
+ L_Pragma= 245,
+ L_DirCommentConstructor= 246,
+ L_DirPIConstructor= 247,
+ L_IntegerLiteral= 248,
+ L_DecimalLiteral= 249,
+ L_DoubleLiteral= 250,
+ L_Comment= 251,
+ L_AnyChar= 252,
+ L_QuotStringLiteralChar= 253,
+ L_AposStringLiteralChar= 254,
+ LibraryModule= 255,
+ MainModule= 256,
+ VersionDecl= 257,
+ VersionDeclEncoding= 258,
+ VersionDeclVersion= 259,
+ ModuleDecl= 260,
+ Prolog= 261,
+ DefaultNamespaceDecls= 262,
+ DefaultNamespaceDecl= 263,
+ Setters= 264,
+ Setter= 265,
+ NamespaceDecls= 266,
+ NamespaceDecl= 267,
+ Imports= 268,
+ SchemaImport= 269,
+ SchemaPrefix= 270,
+ NamespaceName= 271,
+ DefaultElementNamespace= 272,
+ AtHints= 273,
+ ModuleImport= 274,
+ BaseURIDecl= 275,
+ OrderedDecls= 276,
+ VarDecl= 277,
+ VarType= 278,
+ VarValue= 279,
+ VarDefaultValue= 280,
+ VarConstantDecl= 281,
+ VarVariableDecl= 282,
+ FunctionDecl= 283,
+ ParamList= 284,
+ ReturnType= 285,
+ OptionDecl= 286,
+ TypeDeclaration= 287,
+ Param= 288,
+ EnclosedExpr= 289,
+ QueryBody= 290,
+ UnaryExpr= 291,
+ DirElemConstructor= 292,
+ DirAttributeList= 293,
+ DirAttributeValue= 294,
+ DirElemContent= 295,
+ CommonContent= 296,
+ SequenceType= 297,
+ EmptySequenceTest= 298,
+ KindTest= 299,
+ ItemTest= 300,
+ AtomicType= 301,
+ StringLiteral= 302,
+ ElementContentChar= 303,
+ AttributeValueChar= 304,
+ QName= 305,
+ Block= 306,
+ BlockDecls= 307,
+ BlockVarDecl= 308,
+ BinaryTest= 309,
+ LETDOLLAR= 310,
+ EXPLICITLY= 311;
+
+// public instance methods/vars
+org.antlr.lang.extend(XQueryParser, org.antlr.runtime.Parser, {
+
+ setTreeAdaptor: function(adaptor) {
+ this.adaptor = adaptor;
+ },
+ getTreeAdaptor: function() {
+ return this.adaptor;
+ },
+
+ getTokenNames: function() { return XQueryParser.tokenNames; },
+ getGrammarFileName: function() { return "XQueryParser.g"; }
+});
+org.antlr.lang.augmentObject(XQueryParser.prototype, {
+
+ // inline static return class
+ p_Module_return: (function() {
+ XQueryParser.p_Module_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Module_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:119:1: p_Module : (vd= p_VersionDecl )? (lm= p_LibraryModule[$vd.tree] -> | mm= p_MainModule[$vd.tree] ->) EOF ;
+ // $ANTLR start "p_Module"
+ p_Module: function() {
+ var retval = new XQueryParser.p_Module_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var EOF1 = null;
+ var vd = null;
+ var lm = null;
+ var mm = null;
+
+ var EOF1_tree=null;
+ var stream_EOF=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EOF");
+ var stream_p_VersionDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_VersionDecl");
+ var stream_p_LibraryModule=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_LibraryModule");
+ var stream_p_MainModule=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_MainModule");
+ try {
+ // XQueryParser.g:120:9: ( (vd= p_VersionDecl )? (lm= p_LibraryModule[$vd.tree] -> | mm= p_MainModule[$vd.tree] ->) EOF )
+ // XQueryParser.g:120:11: (vd= p_VersionDecl )? (lm= p_LibraryModule[$vd.tree] -> | mm= p_MainModule[$vd.tree] ->) EOF
+ // XQueryParser.g:120:13: (vd= p_VersionDecl )?
+ var alt1=2;
+ var LA1_0 = this.input.LA(1);
+
+ if ( (LA1_0==XQUERY) ) {
+ var LA1_1 = this.input.LA(2);
+
+ if ( (LA1_1==ENCODING||LA1_1==VERSION) ) {
+ alt1=1;
+ }
+ }
+ switch (alt1) {
+ case 1 :
+ // XQueryParser.g:120:13: vd= p_VersionDecl
+ this.pushFollow(XQueryParser.FOLLOW_p_VersionDecl_in_p_Module523);
+ vd=this.p_VersionDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_VersionDecl.add(vd.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:121:13: (lm= p_LibraryModule[$vd.tree] -> | mm= p_MainModule[$vd.tree] ->)
+ var alt2=2;
+ var LA2_0 = this.input.LA(1);
+
+ if ( (LA2_0==MODULE) ) {
+ var LA2_1 = this.input.LA(2);
+
+ if ( (LA2_1==NAMESPACE) ) {
+ alt2=1;
+ }
+ else if ( (LA2_1==EOF||LA2_1==AND||(LA2_1>=CAST && LA2_1<=CASTABLE)||LA2_1==DIV||LA2_1==EQ||LA2_1==EXCEPT||LA2_1==GE||(LA2_1>=GT && LA2_1<=IDIV)||(LA2_1>=INSTANCE && LA2_1<=IS)||LA2_1==LE||(LA2_1>=LT && LA2_1<=MOD)||LA2_1==NE||LA2_1==OR||(LA2_1>=TO && LA2_1<=TREAT)||LA2_1==UNION||LA2_1==LPAREN||LA2_1==LSQUARE||LA2_1==EQUAL||LA2_1==NOTEQUAL||LA2_1==COMMA||(LA2_1>=STAR && LA2_1<=SLASH_SLASH)||LA2_1==COLON||(LA2_1>=SEMICOLON && LA2_1<=VBAR)) ) {
+ alt2=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 2, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( ((LA2_0>=ANCESTOR && LA2_0<=MOD)||(LA2_0>=NAMESPACE && LA2_0<=EXIT)||(LA2_0>=SEQUENTIAL && LA2_0<=MAINTAINED)||(LA2_0>=MUTABLE && LA2_0<=LPAREN)||LA2_0==DOLLAR||(LA2_0>=STAR && LA2_0<=SMALLER)||(LA2_0>=SLASH && LA2_0<=DOT_DOT)||LA2_0==ATTR_SIGN||(LA2_0>=APOS && LA2_0<=QUOT)||LA2_0==L_NCName||(LA2_0>=L_Pragma && LA2_0<=L_DoubleLiteral)||(LA2_0>=LETDOLLAR && LA2_0<=EXPLICITLY)) ) {
+ alt2=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 2, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt2) {
+ case 1 :
+ // XQueryParser.g:122:17: lm= p_LibraryModule[$vd.tree]
+ this.pushFollow(XQueryParser.FOLLOW_p_LibraryModule_in_p_Module558);
+ lm=this.p_LibraryModule((vd?vd.tree:null));
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_LibraryModule.add(lm.getTree());
+
+
+ // AST REWRITE
+ // elements:
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 122:49: ->
+ {
+ this.adaptor.addChild(root_0, (lm?lm.tree:null));
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:123:15: mm= p_MainModule[$vd.tree]
+ this.pushFollow(XQueryParser.FOLLOW_p_MainModule_in_p_Module584);
+ mm=this.p_MainModule((vd?vd.tree:null));
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_MainModule.add(mm.getTree());
+
+
+ // AST REWRITE
+ // elements:
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 123:49: ->
+ {
+ this.adaptor.addChild(root_0, (mm?mm.tree:null));
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+
+ EOF1=this.match(this.input,EOF,XQueryParser.FOLLOW_EOF_in_p_Module613); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EOF.add(EOF1);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_VersionDecl_return: (function() {
+ XQueryParser.p_VersionDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_VersionDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:128:1: p_VersionDecl : k+= XQUERY ( (k+= ENCODING enc= p_StringLiteral ) | (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? ) ) SEMICOLON -> ^( VersionDecl ^( VersionDeclVersion ( $ver)? ) ^( VersionDeclEncoding ( $enc)? ) ) ;
+ // $ANTLR start "p_VersionDecl"
+ p_VersionDecl: function() {
+ var retval = new XQueryParser.p_VersionDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON2 = null;
+ var k = null;
+ var list_k=null;
+ var enc = null;
+ var ver = null;
+
+ var SEMICOLON2_tree=null;
+ var k_tree=null;
+ var stream_ENCODING=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token ENCODING");
+ var stream_VERSION=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token VERSION");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_XQUERY=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token XQUERY");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:129:9: (k+= XQUERY ( (k+= ENCODING enc= p_StringLiteral ) | (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? ) ) SEMICOLON -> ^( VersionDecl ^( VersionDeclVersion ( $ver)? ) ^( VersionDeclEncoding ( $enc)? ) ) )
+ // XQueryParser.g:129:11: k+= XQUERY ( (k+= ENCODING enc= p_StringLiteral ) | (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? ) ) SEMICOLON
+ k=this.match(this.input,XQUERY,XQueryParser.FOLLOW_XQUERY_in_p_VersionDecl641); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_XQUERY.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:129:21: ( (k+= ENCODING enc= p_StringLiteral ) | (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? ) )
+ var alt4=2;
+ var LA4_0 = this.input.LA(1);
+
+ if ( (LA4_0==ENCODING) ) {
+ alt4=1;
+ }
+ else if ( (LA4_0==VERSION) ) {
+ alt4=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 4, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt4) {
+ case 1 :
+ // XQueryParser.g:129:22: (k+= ENCODING enc= p_StringLiteral )
+ // XQueryParser.g:129:22: (k+= ENCODING enc= p_StringLiteral )
+ // XQueryParser.g:129:23: k+= ENCODING enc= p_StringLiteral
+ k=this.match(this.input,ENCODING,XQueryParser.FOLLOW_ENCODING_in_p_VersionDecl647); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ENCODING.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_VersionDecl651);
+ enc=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(enc.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:130:13: (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? )
+ // XQueryParser.g:130:13: (k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )? )
+ // XQueryParser.g:130:14: k+= VERSION ver= p_StringLiteral (k+= ENCODING enc= p_StringLiteral )?
+ k=this.match(this.input,VERSION,XQueryParser.FOLLOW_VERSION_in_p_VersionDecl672); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_VERSION.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_VersionDecl676);
+ ver=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(ver.getTree());
+ // XQueryParser.g:130:46: (k+= ENCODING enc= p_StringLiteral )?
+ var alt3=2;
+ var LA3_0 = this.input.LA(1);
+
+ if ( (LA3_0==ENCODING) ) {
+ alt3=1;
+ }
+ switch (alt3) {
+ case 1 :
+ // XQueryParser.g:130:47: k+= ENCODING enc= p_StringLiteral
+ k=this.match(this.input,ENCODING,XQueryParser.FOLLOW_ENCODING_in_p_VersionDecl682); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ENCODING.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_VersionDecl686);
+ enc=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(enc.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+
+
+ break;
+
+ }
+
+ SEMICOLON2=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_VersionDecl692); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON2);
+
+
+
+ // AST REWRITE
+ // elements: enc, ver
+ // token labels:
+ // rule labels: retval, ver, enc
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_ver=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token ver",ver!=null?ver.tree:null);
+ var stream_enc=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token enc",enc!=null?enc.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 131:17: -> ^( VersionDecl ^( VersionDeclVersion ( $ver)? ) ^( VersionDeclEncoding ( $enc)? ) )
+ {
+ // XQueryParser.g:131:20: ^( VersionDecl ^( VersionDeclVersion ( $ver)? ) ^( VersionDeclEncoding ( $enc)? ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(VersionDecl, "VersionDecl"), root_1);
+
+ // XQueryParser.g:131:34: ^( VersionDeclVersion ( $ver)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(VersionDeclVersion, "VersionDeclVersion"), root_2);
+
+ // XQueryParser.g:131:55: ( $ver)?
+ if ( stream_ver.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_ver.nextTree());
+
+ }
+ stream_ver.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:131:62: ^( VersionDeclEncoding ( $enc)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(VersionDeclEncoding, "VersionDeclEncoding"), root_2);
+
+ // XQueryParser.g:131:84: ( $enc)?
+ if ( stream_enc.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_enc.nextTree());
+
+ }
+ stream_enc.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_MainModule_return: (function() {
+ XQueryParser.p_MainModule_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_MainModule_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:135:1: p_MainModule[vd] : pm_Prolog p_QueryBody -> ^( MainModule pm_Prolog p_QueryBody ) ;
+ // $ANTLR start "p_MainModule"
+ p_MainModule: function(vd) {
+ var retval = new XQueryParser.p_MainModule_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_Prolog3 = null;
+ var p_QueryBody4 = null;
+
+ var stream_p_QueryBody=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QueryBody");
+ var stream_pm_Prolog=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_Prolog");
+ try {
+ // XQueryParser.g:136:9: ( pm_Prolog p_QueryBody -> ^( MainModule pm_Prolog p_QueryBody ) )
+ // XQueryParser.g:136:11: pm_Prolog p_QueryBody
+ this.pushFollow(XQueryParser.FOLLOW_pm_Prolog_in_p_MainModule758);
+ pm_Prolog3=this.pm_Prolog();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_Prolog.add(pm_Prolog3.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_QueryBody_in_p_MainModule760);
+ p_QueryBody4=this.p_QueryBody();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QueryBody.add(p_QueryBody4.getTree());
+
+
+ // AST REWRITE
+ // elements: pm_Prolog, p_QueryBody
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 137:17: -> ^( MainModule pm_Prolog p_QueryBody )
+ {
+ // XQueryParser.g:137:20: ^( MainModule pm_Prolog p_QueryBody )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(MainModule, "MainModule"), root_1);
+
+ this.adaptor.addChild(root_1, vd);
+ this.adaptor.addChild(root_1, stream_pm_Prolog.nextTree());
+ this.adaptor.addChild(root_1, stream_p_QueryBody.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_LibraryModule_return: (function() {
+ XQueryParser.p_LibraryModule_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_LibraryModule_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:141:1: p_LibraryModule[vd] : p_ModuleDecl pm_Prolog -> ^( LibraryModule p_ModuleDecl pm_Prolog ) ;
+ // $ANTLR start "p_LibraryModule"
+ p_LibraryModule: function(vd) {
+ var retval = new XQueryParser.p_LibraryModule_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ModuleDecl5 = null;
+ var pm_Prolog6 = null;
+
+ var stream_pm_Prolog=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_Prolog");
+ var stream_p_ModuleDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ModuleDecl");
+ try {
+ // XQueryParser.g:142:9: ( p_ModuleDecl pm_Prolog -> ^( LibraryModule p_ModuleDecl pm_Prolog ) )
+ // XQueryParser.g:142:11: p_ModuleDecl pm_Prolog
+ this.pushFollow(XQueryParser.FOLLOW_p_ModuleDecl_in_p_LibraryModule816);
+ p_ModuleDecl5=this.p_ModuleDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ModuleDecl.add(p_ModuleDecl5.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_pm_Prolog_in_p_LibraryModule818);
+ pm_Prolog6=this.pm_Prolog();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_Prolog.add(pm_Prolog6.getTree());
+
+
+ // AST REWRITE
+ // elements: p_ModuleDecl, pm_Prolog
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 143:17: -> ^( LibraryModule p_ModuleDecl pm_Prolog )
+ {
+ // XQueryParser.g:143:20: ^( LibraryModule p_ModuleDecl pm_Prolog )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(LibraryModule, "LibraryModule"), root_1);
+
+ this.adaptor.addChild(root_1, vd);
+ this.adaptor.addChild(root_1, stream_p_ModuleDecl.nextTree());
+ this.adaptor.addChild(root_1, stream_pm_Prolog.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ModuleDecl_return: (function() {
+ XQueryParser.p_ModuleDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ModuleDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:147:1: p_ModuleDecl : k+= MODULE k+= NAMESPACE p_NCName EQUAL p_StringLiteral SEMICOLON -> ^( ModuleDecl p_NCName p_StringLiteral ) ;
+ // $ANTLR start "p_ModuleDecl"
+ p_ModuleDecl: function() {
+ var retval = new XQueryParser.p_ModuleDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var EQUAL8 = null;
+ var SEMICOLON10 = null;
+ var k = null;
+ var list_k=null;
+ var p_NCName7 = null;
+ var p_StringLiteral9 = null;
+
+ var EQUAL8_tree=null;
+ var SEMICOLON10_tree=null;
+ var k_tree=null;
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_MODULE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token MODULE");
+ var stream_NAMESPACE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token NAMESPACE");
+ var stream_EQUAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EQUAL");
+ var stream_p_NCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_NCName");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:148:9: (k+= MODULE k+= NAMESPACE p_NCName EQUAL p_StringLiteral SEMICOLON -> ^( ModuleDecl p_NCName p_StringLiteral ) )
+ // XQueryParser.g:148:11: k+= MODULE k+= NAMESPACE p_NCName EQUAL p_StringLiteral SEMICOLON
+ k=this.match(this.input,MODULE,XQueryParser.FOLLOW_MODULE_in_p_ModuleDecl874); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_MODULE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_p_ModuleDecl878); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_NAMESPACE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_ModuleDecl880);
+ p_NCName7=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_NCName.add(p_NCName7.getTree());
+ EQUAL8=this.match(this.input,EQUAL,XQueryParser.FOLLOW_EQUAL_in_p_ModuleDecl882); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EQUAL.add(EQUAL8);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_ModuleDecl884);
+ p_StringLiteral9=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(p_StringLiteral9.getTree());
+ SEMICOLON10=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_ModuleDecl886); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON10);
+
+
+
+ // AST REWRITE
+ // elements: p_StringLiteral, p_NCName
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 149:17: -> ^( ModuleDecl p_NCName p_StringLiteral )
+ {
+ // XQueryParser.g:149:21: ^( ModuleDecl p_NCName p_StringLiteral )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(ModuleDecl, "ModuleDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_p_NCName.nextTree());
+ this.adaptor.addChild(root_1, stream_p_StringLiteral.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_Prolog_return: (function() {
+ XQueryParser.pm_Prolog_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_Prolog_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:155:1: pm_Prolog : ( (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import ) )* od= pg_OrderedDecl -> ^( Prolog ^( DefaultNamespaceDecls ( $dnd)* ) ^( Setters ( $s)* ) ^( NamespaceDecls ( $nd)* ) ^( Imports ( $i)* ) ^( OrderedDecls ( $od)* ) ) ;
+ // $ANTLR start "pm_Prolog"
+ pm_Prolog: function() {
+ var retval = new XQueryParser.pm_Prolog_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var list_dnd=null;
+ var list_s=null;
+ var list_nd=null;
+ var list_i=null;
+ var od = null;
+ var dnd = null;
+ var s = null;
+ var nd = null;
+ var i = null;
+ var stream_pm_NamespaceDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_NamespaceDecl");
+ var stream_p_Import=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_Import");
+ var stream_p_Setter=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_Setter");
+ var stream_pm_DefaultNamespaceDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_DefaultNamespaceDecl");
+ var stream_pg_OrderedDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pg_OrderedDecl");
+ try {
+ // XQueryParser.g:156:9: ( ( (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import ) )* od= pg_OrderedDecl -> ^( Prolog ^( DefaultNamespaceDecls ( $dnd)* ) ^( Setters ( $s)* ) ^( NamespaceDecls ( $nd)* ) ^( Imports ( $i)* ) ^( OrderedDecls ( $od)* ) ) )
+ // XQueryParser.g:156:11: ( (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import ) )* od= pg_OrderedDecl
+ // XQueryParser.g:156:11: ( (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import ) )*
+ loop6:
+ do {
+ var alt6=2;
+ alt6 = this.dfa6.predict(this.input);
+ switch (alt6) {
+ case 1 :
+ // XQueryParser.g:156:12: (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import )
+ // XQueryParser.g:156:12: (dnd+= pm_DefaultNamespaceDecl | s+= p_Setter | nd+= pm_NamespaceDecl | i+= p_Import )
+ var alt5=4;
+ var LA5_0 = this.input.LA(1);
+
+ if ( (LA5_0==DECLARE) ) {
+ var LA5_1 = this.input.LA(2);
+
+ if ( (LA5_1==DEFAULT) ) {
+ var LA5_3 = this.input.LA(3);
+
+ if ( (LA5_3==COLLATION||LA5_3==ORDER) ) {
+ alt5=2;
+ }
+ else if ( (LA5_3==ELEMENT||LA5_3==FUNCTION) ) {
+ alt5=1;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 5, 3, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( ((LA5_1>=BASE_URI && LA5_1<=BOUNDARY_SPACE)||LA5_1==CONSTRUCTION||LA5_1==ORDERING) ) {
+ alt5=2;
+ }
+ else if ( (LA5_1==REVALIDATION) && ((true))) {
+ alt5=2;
+ }
+ else if ( (LA5_1==COPY_NAMESPACES) ) {
+ alt5=2;
+ }
+ else if ( (LA5_1==NAMESPACE) ) {
+ alt5=3;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 5, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA5_0==IMPORT) ) {
+ alt5=4;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 5, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt5) {
+ case 1 :
+ // XQueryParser.g:156:13: dnd+= pm_DefaultNamespaceDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_DefaultNamespaceDecl_in_pm_Prolog945);
+ dnd=this.pm_DefaultNamespaceDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_DefaultNamespaceDecl.add(dnd.getTree());
+ if (org.antlr.lang.isNull(list_dnd)) list_dnd = [];
+ list_dnd.push(dnd.getTree());
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:156:44: s+= p_Setter
+ this.pushFollow(XQueryParser.FOLLOW_p_Setter_in_pm_Prolog951);
+ s=this.p_Setter();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_Setter.add(s.getTree());
+ if (org.antlr.lang.isNull(list_s)) list_s = [];
+ list_s.push(s.getTree());
+
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:156:58: nd+= pm_NamespaceDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_NamespaceDecl_in_pm_Prolog957);
+ nd=this.pm_NamespaceDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_NamespaceDecl.add(nd.getTree());
+ if (org.antlr.lang.isNull(list_nd)) list_nd = [];
+ list_nd.push(nd.getTree());
+
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:156:81: i+= p_Import
+ this.pushFollow(XQueryParser.FOLLOW_p_Import_in_pm_Prolog963);
+ i=this.p_Import();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_Import.add(i.getTree());
+ if (org.antlr.lang.isNull(list_i)) list_i = [];
+ list_i.push(i.getTree());
+
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ default :
+ break loop6;
+ }
+ } while (true);
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_OrderedDecl_in_pm_Prolog970);
+ od=this.pg_OrderedDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pg_OrderedDecl.add(od.getTree());
+
+
+ // AST REWRITE
+ // elements: s, i, nd, od, dnd
+ // token labels:
+ // rule labels: retval, od
+ // token list labels:
+ // rule list labels: s, nd, dnd, i
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_od=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token od",od!=null?od.tree:null);
+ var stream_s=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token s",list_s);
+ var stream_nd=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token nd",list_nd);
+ var stream_dnd=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token dnd",list_dnd);
+ var stream_i=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token i",list_i);
+ root_0 = this.adaptor.nil();
+ // 157:17: -> ^( Prolog ^( DefaultNamespaceDecls ( $dnd)* ) ^( Setters ( $s)* ) ^( NamespaceDecls ( $nd)* ) ^( Imports ( $i)* ) ^( OrderedDecls ( $od)* ) )
+ {
+ // XQueryParser.g:157:21: ^( Prolog ^( DefaultNamespaceDecls ( $dnd)* ) ^( Setters ( $s)* ) ^( NamespaceDecls ( $nd)* ) ^( Imports ( $i)* ) ^( OrderedDecls ( $od)* ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(Prolog, "Prolog"), root_1);
+
+ // XQueryParser.g:158:33: ^( DefaultNamespaceDecls ( $dnd)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(DefaultNamespaceDecls, "DefaultNamespaceDecls"), root_2);
+
+ // XQueryParser.g:158:57: ( $dnd)*
+ while ( stream_dnd.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_dnd.nextTree());
+
+ }
+ stream_dnd.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:159:33: ^( Setters ( $s)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(Setters, "Setters"), root_2);
+
+ // XQueryParser.g:159:43: ( $s)*
+ while ( stream_s.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_s.nextTree());
+
+ }
+ stream_s.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:160:33: ^( NamespaceDecls ( $nd)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(NamespaceDecls, "NamespaceDecls"), root_2);
+
+ // XQueryParser.g:160:50: ( $nd)*
+ while ( stream_nd.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_nd.nextTree());
+
+ }
+ stream_nd.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:161:33: ^( Imports ( $i)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(Imports, "Imports"), root_2);
+
+ // XQueryParser.g:161:43: ( $i)*
+ while ( stream_i.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_i.nextTree());
+
+ }
+ stream_i.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:162:33: ^( OrderedDecls ( $od)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(OrderedDecls, "OrderedDecls"), root_2);
+
+ // XQueryParser.g:162:48: ( $od)*
+ while ( stream_od.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_od.nextTree());
+
+ }
+ stream_od.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_OrderedDecl_return: (function() {
+ XQueryParser.pg_OrderedDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_OrderedDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:170:1: pg_OrderedDecl : ( pm_VarDecl | pm_ContextItemDecl | pm_FunctionDecl | pm_OptionDecl | {...}? => p_CollectionDecl | {...}? => p_IndexDecl | {...}? => p_ICDecl )* ;
+ // $ANTLR start "pg_OrderedDecl"
+ pg_OrderedDecl: function() {
+ var retval = new XQueryParser.pg_OrderedDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_VarDecl11 = null;
+ var pm_ContextItemDecl12 = null;
+ var pm_FunctionDecl13 = null;
+ var pm_OptionDecl14 = null;
+ var p_CollectionDecl15 = null;
+ var p_IndexDecl16 = null;
+ var p_ICDecl17 = null;
+
+
+ try {
+ // XQueryParser.g:171:9: ( ( pm_VarDecl | pm_ContextItemDecl | pm_FunctionDecl | pm_OptionDecl | {...}? => p_CollectionDecl | {...}? => p_IndexDecl | {...}? => p_ICDecl )* )
+ // XQueryParser.g:171:11: ( pm_VarDecl | pm_ContextItemDecl | pm_FunctionDecl | pm_OptionDecl | {...}? => p_CollectionDecl | {...}? => p_IndexDecl | {...}? => p_ICDecl )*
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:171:11: ( pm_VarDecl | pm_ContextItemDecl | pm_FunctionDecl | pm_OptionDecl | {...}? => p_CollectionDecl | {...}? => p_IndexDecl | {...}? => p_ICDecl )*
+ loop7:
+ do {
+ var alt7=8;
+ alt7 = this.dfa7.predict(this.input);
+ switch (alt7) {
+ case 1 :
+ // XQueryParser.g:171:12: pm_VarDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_VarDecl_in_pg_OrderedDecl1248);
+ pm_VarDecl11=this.pm_VarDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_VarDecl11.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:171:25: pm_ContextItemDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_ContextItemDecl_in_pg_OrderedDecl1252);
+ pm_ContextItemDecl12=this.pm_ContextItemDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_ContextItemDecl12.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:171:46: pm_FunctionDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_FunctionDecl_in_pg_OrderedDecl1256);
+ pm_FunctionDecl13=this.pm_FunctionDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_FunctionDecl13.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:171:64: pm_OptionDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_OptionDecl_in_pg_OrderedDecl1260);
+ pm_OptionDecl14=this.pm_OptionDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_OptionDecl14.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:172:11: {...}? => p_CollectionDecl
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pg_OrderedDecl", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_CollectionDecl_in_pg_OrderedDecl1275);
+ p_CollectionDecl15=this.p_CollectionDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CollectionDecl15.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:173:11: {...}? => p_IndexDecl
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pg_OrderedDecl", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexDecl_in_pg_OrderedDecl1290);
+ p_IndexDecl16=this.p_IndexDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexDecl16.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:174:11: {...}? => p_ICDecl
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pg_OrderedDecl", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ICDecl_in_pg_OrderedDecl1305);
+ p_ICDecl17=this.p_ICDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICDecl17.getTree());
+
+
+ break;
+
+ default :
+ break loop7;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Setter_return: (function() {
+ XQueryParser.p_Setter_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Setter_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:179:1: p_Setter : ( pm_BoundarySpaceDecl | pm_DefaultCollationDecl | pm_BaseURIDecl | pm_ConstructionDecl | pm_OrderingModeDecl | pm_EmptyOrderDecl | {...}? => pm_RevalidationDecl | pm_CopyNamespacesDecl );
+ // $ANTLR start "p_Setter"
+ p_Setter: function() {
+ var retval = new XQueryParser.p_Setter_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_BoundarySpaceDecl18 = null;
+ var pm_DefaultCollationDecl19 = null;
+ var pm_BaseURIDecl20 = null;
+ var pm_ConstructionDecl21 = null;
+ var pm_OrderingModeDecl22 = null;
+ var pm_EmptyOrderDecl23 = null;
+ var pm_RevalidationDecl24 = null;
+ var pm_CopyNamespacesDecl25 = null;
+
+
+ try {
+ // XQueryParser.g:180:9: ( pm_BoundarySpaceDecl | pm_DefaultCollationDecl | pm_BaseURIDecl | pm_ConstructionDecl | pm_OrderingModeDecl | pm_EmptyOrderDecl | {...}? => pm_RevalidationDecl | pm_CopyNamespacesDecl )
+ var alt8=8;
+ alt8 = this.dfa8.predict(this.input);
+ switch (alt8) {
+ case 1 :
+ // XQueryParser.g:180:11: pm_BoundarySpaceDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_BoundarySpaceDecl_in_p_Setter1334);
+ pm_BoundarySpaceDecl18=this.pm_BoundarySpaceDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_BoundarySpaceDecl18.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:181:11: pm_DefaultCollationDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_DefaultCollationDecl_in_p_Setter1346);
+ pm_DefaultCollationDecl19=this.pm_DefaultCollationDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_DefaultCollationDecl19.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:182:11: pm_BaseURIDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_BaseURIDecl_in_p_Setter1358);
+ pm_BaseURIDecl20=this.pm_BaseURIDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_BaseURIDecl20.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:183:11: pm_ConstructionDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_ConstructionDecl_in_p_Setter1370);
+ pm_ConstructionDecl21=this.pm_ConstructionDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_ConstructionDecl21.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:184:11: pm_OrderingModeDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_OrderingModeDecl_in_p_Setter1382);
+ pm_OrderingModeDecl22=this.pm_OrderingModeDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_OrderingModeDecl22.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:185:11: pm_EmptyOrderDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_EmptyOrderDecl_in_p_Setter1394);
+ pm_EmptyOrderDecl23=this.pm_EmptyOrderDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_EmptyOrderDecl23.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:186:11: {...}? => pm_RevalidationDecl
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_Setter", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_RevalidationDecl_in_p_Setter1409);
+ pm_RevalidationDecl24=this.pm_RevalidationDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_RevalidationDecl24.getTree());
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:187:11: pm_CopyNamespacesDecl
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_CopyNamespacesDecl_in_p_Setter1421);
+ pm_CopyNamespacesDecl25=this.pm_CopyNamespacesDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_CopyNamespacesDecl25.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Import_return: (function() {
+ XQueryParser.p_Import_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Import_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:191:1: p_Import : ( pm_SchemaImport | pm_ModuleImport );
+ // $ANTLR start "p_Import"
+ p_Import: function() {
+ var retval = new XQueryParser.p_Import_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_SchemaImport26 = null;
+ var pm_ModuleImport27 = null;
+
+
+ try {
+ // XQueryParser.g:192:9: ( pm_SchemaImport | pm_ModuleImport )
+ var alt9=2;
+ var LA9_0 = this.input.LA(1);
+
+ if ( (LA9_0==IMPORT) ) {
+ var LA9_1 = this.input.LA(2);
+
+ if ( (LA9_1==SCHEMA) ) {
+ alt9=1;
+ }
+ else if ( (LA9_1==MODULE) ) {
+ alt9=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 9, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 9, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt9) {
+ case 1 :
+ // XQueryParser.g:192:11: pm_SchemaImport
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_SchemaImport_in_p_Import1447);
+ pm_SchemaImport26=this.pm_SchemaImport();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_SchemaImport26.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:192:29: pm_ModuleImport
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_ModuleImport_in_p_Import1451);
+ pm_ModuleImport27=this.pm_ModuleImport();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_ModuleImport27.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_NamespaceDecl_return: (function() {
+ XQueryParser.pm_NamespaceDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_NamespaceDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:199:1: pm_NamespaceDecl : k+= DECLARE k+= NAMESPACE nn= p_NCName EQUAL us= p_StringLiteral SEMICOLON -> ^( NamespaceDecl $nn $us) ;
+ // $ANTLR start "pm_NamespaceDecl"
+ pm_NamespaceDecl: function() {
+ var retval = new XQueryParser.pm_NamespaceDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var EQUAL28 = null;
+ var SEMICOLON29 = null;
+ var k = null;
+ var list_k=null;
+ var nn = null;
+ var us = null;
+
+ var EQUAL28_tree=null;
+ var SEMICOLON29_tree=null;
+ var k_tree=null;
+ var stream_DECLARE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DECLARE");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_NAMESPACE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token NAMESPACE");
+ var stream_EQUAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EQUAL");
+ var stream_p_NCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_NCName");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:200:9: (k+= DECLARE k+= NAMESPACE nn= p_NCName EQUAL us= p_StringLiteral SEMICOLON -> ^( NamespaceDecl $nn $us) )
+ // XQueryParser.g:200:11: k+= DECLARE k+= NAMESPACE nn= p_NCName EQUAL us= p_StringLiteral SEMICOLON
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_NamespaceDecl1482); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_pm_NamespaceDecl1486); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_NAMESPACE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_pm_NamespaceDecl1490);
+ nn=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_NCName.add(nn.getTree());
+ EQUAL28=this.match(this.input,EQUAL,XQueryParser.FOLLOW_EQUAL_in_pm_NamespaceDecl1492); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EQUAL.add(EQUAL28);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_NamespaceDecl1496);
+ us=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(us.getTree());
+ SEMICOLON29=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_NamespaceDecl1498); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON29);
+
+
+
+ // AST REWRITE
+ // elements: us, nn
+ // token labels:
+ // rule labels: retval, nn, us
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_nn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token nn",nn!=null?nn.tree:null);
+ var stream_us=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token us",us!=null?us.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 201:17: -> ^( NamespaceDecl $nn $us)
+ {
+ // XQueryParser.g:201:20: ^( NamespaceDecl $nn $us)
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(NamespaceDecl, "NamespaceDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_nn.nextTree());
+ this.adaptor.addChild(root_1, stream_us.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_BoundarySpaceDecl_return: (function() {
+ XQueryParser.pm_BoundarySpaceDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_BoundarySpaceDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:205:1: pm_BoundarySpaceDecl : k+= DECLARE k+= BOUNDARY_SPACE (k+= PRESERVE | k+= STRIP ) SEMICOLON ;
+ // $ANTLR start "pm_BoundarySpaceDecl"
+ pm_BoundarySpaceDecl: function() {
+ var retval = new XQueryParser.pm_BoundarySpaceDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON30 = null;
+ var k = null;
+ var list_k=null;
+
+ var SEMICOLON30_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:206:9: (k+= DECLARE k+= BOUNDARY_SPACE (k+= PRESERVE | k+= STRIP ) SEMICOLON )
+ // XQueryParser.g:206:13: k+= DECLARE k+= BOUNDARY_SPACE (k+= PRESERVE | k+= STRIP ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_BoundarySpaceDecl1561); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,BOUNDARY_SPACE,XQueryParser.FOLLOW_BOUNDARY_SPACE_in_pm_BoundarySpaceDecl1565); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:206:42: (k+= PRESERVE | k+= STRIP )
+ var alt10=2;
+ var LA10_0 = this.input.LA(1);
+
+ if ( (LA10_0==PRESERVE) ) {
+ alt10=1;
+ }
+ else if ( (LA10_0==STRIP) ) {
+ alt10=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 10, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt10) {
+ case 1 :
+ // XQueryParser.g:206:43: k+= PRESERVE
+ k=this.match(this.input,PRESERVE,XQueryParser.FOLLOW_PRESERVE_in_pm_BoundarySpaceDecl1570); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:206:57: k+= STRIP
+ k=this.match(this.input,STRIP,XQueryParser.FOLLOW_STRIP_in_pm_BoundarySpaceDecl1576); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON30=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_BoundarySpaceDecl1579); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON30_tree = this.adaptor.create(SEMICOLON30);
+ this.adaptor.addChild(root_0, SEMICOLON30_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_DefaultNamespaceDecl_return: (function() {
+ XQueryParser.pm_DefaultNamespaceDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_DefaultNamespaceDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:210:1: pm_DefaultNamespaceDecl : k+= DECLARE k+= DEFAULT (k+= ELEMENT | k+= FUNCTION ) k+= NAMESPACE p_StringLiteral SEMICOLON ;
+ // $ANTLR start "pm_DefaultNamespaceDecl"
+ pm_DefaultNamespaceDecl: function() {
+ var retval = new XQueryParser.pm_DefaultNamespaceDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON32 = null;
+ var k = null;
+ var list_k=null;
+ var p_StringLiteral31 = null;
+
+ var SEMICOLON32_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:211:9: (k+= DECLARE k+= DEFAULT (k+= ELEMENT | k+= FUNCTION ) k+= NAMESPACE p_StringLiteral SEMICOLON )
+ // XQueryParser.g:211:11: k+= DECLARE k+= DEFAULT (k+= ELEMENT | k+= FUNCTION ) k+= NAMESPACE p_StringLiteral SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_DefaultNamespaceDecl1607); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_pm_DefaultNamespaceDecl1611); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:211:33: (k+= ELEMENT | k+= FUNCTION )
+ var alt11=2;
+ var LA11_0 = this.input.LA(1);
+
+ if ( (LA11_0==ELEMENT) ) {
+ alt11=1;
+ }
+ else if ( (LA11_0==FUNCTION) ) {
+ alt11=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 11, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt11) {
+ case 1 :
+ // XQueryParser.g:211:34: k+= ELEMENT
+ k=this.match(this.input,ELEMENT,XQueryParser.FOLLOW_ELEMENT_in_pm_DefaultNamespaceDecl1616); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:211:47: k+= FUNCTION
+ k=this.match(this.input,FUNCTION,XQueryParser.FOLLOW_FUNCTION_in_pm_DefaultNamespaceDecl1622); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_pm_DefaultNamespaceDecl1627); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_DefaultNamespaceDecl1629);
+ p_StringLiteral31=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral31.getTree());
+ SEMICOLON32=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_DefaultNamespaceDecl1631); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON32_tree = this.adaptor.create(SEMICOLON32);
+ this.adaptor.addChild(root_0, SEMICOLON32_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_OptionDecl_return: (function() {
+ XQueryParser.pm_OptionDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_OptionDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:215:1: pm_OptionDecl : k+= DECLARE k+= OPTION p_QName p_StringLiteral SEMICOLON ;
+ // $ANTLR start "pm_OptionDecl"
+ pm_OptionDecl: function() {
+ var retval = new XQueryParser.pm_OptionDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON35 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName33 = null;
+ var p_StringLiteral34 = null;
+
+ var SEMICOLON35_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:216:9: (k+= DECLARE k+= OPTION p_QName p_StringLiteral SEMICOLON )
+ // XQueryParser.g:216:13: k+= DECLARE k+= OPTION p_QName p_StringLiteral SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_OptionDecl1662); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,OPTION,XQueryParser.FOLLOW_OPTION_in_pm_OptionDecl1666); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_pm_OptionDecl1668);
+ p_QName33=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName33.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_OptionDecl1670);
+ p_StringLiteral34=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral34.getTree());
+ SEMICOLON35=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_OptionDecl1672); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON35_tree = this.adaptor.create(SEMICOLON35);
+ this.adaptor.addChild(root_0, SEMICOLON35_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_OrderingModeDecl_return: (function() {
+ XQueryParser.pm_OrderingModeDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_OrderingModeDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:220:1: pm_OrderingModeDecl : k+= DECLARE k+= ORDERING (k+= ORDERED | k+= UNORDERED ) SEMICOLON ;
+ // $ANTLR start "pm_OrderingModeDecl"
+ pm_OrderingModeDecl: function() {
+ var retval = new XQueryParser.pm_OrderingModeDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON36 = null;
+ var k = null;
+ var list_k=null;
+
+ var SEMICOLON36_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:221:9: (k+= DECLARE k+= ORDERING (k+= ORDERED | k+= UNORDERED ) SEMICOLON )
+ // XQueryParser.g:221:13: k+= DECLARE k+= ORDERING (k+= ORDERED | k+= UNORDERED ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_OrderingModeDecl1703); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,ORDERING,XQueryParser.FOLLOW_ORDERING_in_pm_OrderingModeDecl1707); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:221:36: (k+= ORDERED | k+= UNORDERED )
+ var alt12=2;
+ var LA12_0 = this.input.LA(1);
+
+ if ( (LA12_0==ORDERED) ) {
+ alt12=1;
+ }
+ else if ( (LA12_0==UNORDERED) ) {
+ alt12=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 12, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt12) {
+ case 1 :
+ // XQueryParser.g:221:37: k+= ORDERED
+ k=this.match(this.input,ORDERED,XQueryParser.FOLLOW_ORDERED_in_pm_OrderingModeDecl1712); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:221:50: k+= UNORDERED
+ k=this.match(this.input,UNORDERED,XQueryParser.FOLLOW_UNORDERED_in_pm_OrderingModeDecl1718); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON36=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_OrderingModeDecl1721); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON36_tree = this.adaptor.create(SEMICOLON36);
+ this.adaptor.addChild(root_0, SEMICOLON36_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_EmptyOrderDecl_return: (function() {
+ XQueryParser.pm_EmptyOrderDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_EmptyOrderDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:225:1: pm_EmptyOrderDecl : k+= DECLARE k+= DEFAULT k+= ORDER k+= EMPTY (k+= GREATEST | k+= LEAST ) SEMICOLON ;
+ // $ANTLR start "pm_EmptyOrderDecl"
+ pm_EmptyOrderDecl: function() {
+ var retval = new XQueryParser.pm_EmptyOrderDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON37 = null;
+ var k = null;
+ var list_k=null;
+
+ var SEMICOLON37_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:226:9: (k+= DECLARE k+= DEFAULT k+= ORDER k+= EMPTY (k+= GREATEST | k+= LEAST ) SEMICOLON )
+ // XQueryParser.g:226:13: k+= DECLARE k+= DEFAULT k+= ORDER k+= EMPTY (k+= GREATEST | k+= LEAST ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_EmptyOrderDecl1752); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_pm_EmptyOrderDecl1756); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,ORDER,XQueryParser.FOLLOW_ORDER_in_pm_EmptyOrderDecl1760); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,EMPTY,XQueryParser.FOLLOW_EMPTY_in_pm_EmptyOrderDecl1764); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:226:53: (k+= GREATEST | k+= LEAST )
+ var alt13=2;
+ var LA13_0 = this.input.LA(1);
+
+ if ( (LA13_0==GREATEST) ) {
+ alt13=1;
+ }
+ else if ( (LA13_0==LEAST) ) {
+ alt13=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 13, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt13) {
+ case 1 :
+ // XQueryParser.g:226:54: k+= GREATEST
+ k=this.match(this.input,GREATEST,XQueryParser.FOLLOW_GREATEST_in_pm_EmptyOrderDecl1769); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:226:68: k+= LEAST
+ k=this.match(this.input,LEAST,XQueryParser.FOLLOW_LEAST_in_pm_EmptyOrderDecl1775); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON37=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_EmptyOrderDecl1778); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON37_tree = this.adaptor.create(SEMICOLON37);
+ this.adaptor.addChild(root_0, SEMICOLON37_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_CopyNamespacesDecl_return: (function() {
+ XQueryParser.pm_CopyNamespacesDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_CopyNamespacesDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:230:1: pm_CopyNamespacesDecl : k+= DECLARE k+= COPY_NAMESPACES p_PreserveMode COMMA p_InheritMode SEMICOLON ;
+ // $ANTLR start "pm_CopyNamespacesDecl"
+ pm_CopyNamespacesDecl: function() {
+ var retval = new XQueryParser.pm_CopyNamespacesDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA39 = null;
+ var SEMICOLON41 = null;
+ var k = null;
+ var list_k=null;
+ var p_PreserveMode38 = null;
+ var p_InheritMode40 = null;
+
+ var COMMA39_tree=null;
+ var SEMICOLON41_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:231:9: (k+= DECLARE k+= COPY_NAMESPACES p_PreserveMode COMMA p_InheritMode SEMICOLON )
+ // XQueryParser.g:231:13: k+= DECLARE k+= COPY_NAMESPACES p_PreserveMode COMMA p_InheritMode SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_CopyNamespacesDecl1809); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,COPY_NAMESPACES,XQueryParser.FOLLOW_COPY_NAMESPACES_in_pm_CopyNamespacesDecl1813); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PreserveMode_in_pm_CopyNamespacesDecl1815);
+ p_PreserveMode38=this.p_PreserveMode();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PreserveMode38.getTree());
+ COMMA39=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_pm_CopyNamespacesDecl1817); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA39_tree = this.adaptor.create(COMMA39);
+ this.adaptor.addChild(root_0, COMMA39_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_InheritMode_in_pm_CopyNamespacesDecl1819);
+ p_InheritMode40=this.p_InheritMode();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InheritMode40.getTree());
+ SEMICOLON41=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_CopyNamespacesDecl1821); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON41_tree = this.adaptor.create(SEMICOLON41);
+ this.adaptor.addChild(root_0, SEMICOLON41_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DecimalFormatDecl_return: (function() {
+ XQueryParser.p_DecimalFormatDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DecimalFormatDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:235:1: p_DecimalFormatDecl : k+= DECLARE ( ( DECIMAL_FORMAT p_QName ) | ( DEFAULT DECIMAL_FORMAT ) ) ( p_DFPropertyName ) EQ p_StringLiteral SEMICOLON ;
+ // $ANTLR start "p_DecimalFormatDecl"
+ p_DecimalFormatDecl: function() {
+ var retval = new XQueryParser.p_DecimalFormatDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DECIMAL_FORMAT42 = null;
+ var DEFAULT44 = null;
+ var DECIMAL_FORMAT45 = null;
+ var EQ47 = null;
+ var SEMICOLON49 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName43 = null;
+ var p_DFPropertyName46 = null;
+ var p_StringLiteral48 = null;
+
+ var DECIMAL_FORMAT42_tree=null;
+ var DEFAULT44_tree=null;
+ var DECIMAL_FORMAT45_tree=null;
+ var EQ47_tree=null;
+ var SEMICOLON49_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:236:9: (k+= DECLARE ( ( DECIMAL_FORMAT p_QName ) | ( DEFAULT DECIMAL_FORMAT ) ) ( p_DFPropertyName ) EQ p_StringLiteral SEMICOLON )
+ // XQueryParser.g:236:13: k+= DECLARE ( ( DECIMAL_FORMAT p_QName ) | ( DEFAULT DECIMAL_FORMAT ) ) ( p_DFPropertyName ) EQ p_StringLiteral SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_p_DecimalFormatDecl1852); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:236:24: ( ( DECIMAL_FORMAT p_QName ) | ( DEFAULT DECIMAL_FORMAT ) )
+ var alt14=2;
+ var LA14_0 = this.input.LA(1);
+
+ if ( (LA14_0==DECIMAL_FORMAT) ) {
+ alt14=1;
+ }
+ else if ( (LA14_0==DEFAULT) ) {
+ alt14=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 14, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt14) {
+ case 1 :
+ // XQueryParser.g:236:25: ( DECIMAL_FORMAT p_QName )
+ // XQueryParser.g:236:25: ( DECIMAL_FORMAT p_QName )
+ // XQueryParser.g:236:26: DECIMAL_FORMAT p_QName
+ DECIMAL_FORMAT42=this.match(this.input,DECIMAL_FORMAT,XQueryParser.FOLLOW_DECIMAL_FORMAT_in_p_DecimalFormatDecl1856); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DECIMAL_FORMAT42_tree = this.adaptor.create(DECIMAL_FORMAT42);
+ this.adaptor.addChild(root_0, DECIMAL_FORMAT42_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_DecimalFormatDecl1858);
+ p_QName43=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName43.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:236:52: ( DEFAULT DECIMAL_FORMAT )
+ // XQueryParser.g:236:52: ( DEFAULT DECIMAL_FORMAT )
+ // XQueryParser.g:236:53: DEFAULT DECIMAL_FORMAT
+ DEFAULT44=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_p_DecimalFormatDecl1864); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DEFAULT44_tree = this.adaptor.create(DEFAULT44);
+ this.adaptor.addChild(root_0, DEFAULT44_tree);
+ }
+ DECIMAL_FORMAT45=this.match(this.input,DECIMAL_FORMAT,XQueryParser.FOLLOW_DECIMAL_FORMAT_in_p_DecimalFormatDecl1866); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DECIMAL_FORMAT45_tree = this.adaptor.create(DECIMAL_FORMAT45);
+ this.adaptor.addChild(root_0, DECIMAL_FORMAT45_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:236:78: ( p_DFPropertyName )
+ // XQueryParser.g:236:79: p_DFPropertyName
+ this.pushFollow(XQueryParser.FOLLOW_p_DFPropertyName_in_p_DecimalFormatDecl1871);
+ p_DFPropertyName46=this.p_DFPropertyName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DFPropertyName46.getTree());
+
+
+
+ EQ47=this.match(this.input,EQ,XQueryParser.FOLLOW_EQ_in_p_DecimalFormatDecl1874); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ EQ47_tree = this.adaptor.create(EQ47);
+ this.adaptor.addChild(root_0, EQ47_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_DecimalFormatDecl1876);
+ p_StringLiteral48=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral48.getTree());
+ SEMICOLON49=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_DecimalFormatDecl1878); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON49_tree = this.adaptor.create(SEMICOLON49);
+ this.adaptor.addChild(root_0, SEMICOLON49_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DFPropertyName_return: (function() {
+ XQueryParser.p_DFPropertyName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DFPropertyName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:240:1: p_DFPropertyName : (k= DECIMAL_SEPARATOR | k= GROUPING_SEPARATOR | k= INFINITY | k= MINUS_SIGN | k= NAN | k= PERCENT | k= PER_MILLE | k= ZERO_DIGIT | k= DIGIT | k= PATTERN_SEPARATOR );
+ // $ANTLR start "p_DFPropertyName"
+ p_DFPropertyName: function() {
+ var retval = new XQueryParser.p_DFPropertyName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:241:9: (k= DECIMAL_SEPARATOR | k= GROUPING_SEPARATOR | k= INFINITY | k= MINUS_SIGN | k= NAN | k= PERCENT | k= PER_MILLE | k= ZERO_DIGIT | k= DIGIT | k= PATTERN_SEPARATOR )
+ var alt15=10;
+ switch ( this.input.LA(1) ) {
+ case DECIMAL_SEPARATOR:
+ alt15=1;
+ break;
+ case GROUPING_SEPARATOR:
+ alt15=2;
+ break;
+ case INFINITY:
+ alt15=3;
+ break;
+ case MINUS_SIGN:
+ alt15=4;
+ break;
+ case NAN:
+ alt15=5;
+ break;
+ case PERCENT:
+ alt15=6;
+ break;
+ case PER_MILLE:
+ alt15=7;
+ break;
+ case ZERO_DIGIT:
+ alt15=8;
+ break;
+ case DIGIT:
+ alt15=9;
+ break;
+ case PATTERN_SEPARATOR:
+ alt15=10;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 15, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt15) {
+ case 1 :
+ // XQueryParser.g:241:11: k= DECIMAL_SEPARATOR
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECIMAL_SEPARATOR,XQueryParser.FOLLOW_DECIMAL_SEPARATOR_in_p_DFPropertyName1907); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:241:33: k= GROUPING_SEPARATOR
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,GROUPING_SEPARATOR,XQueryParser.FOLLOW_GROUPING_SEPARATOR_in_p_DFPropertyName1913); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:241:56: k= INFINITY
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,INFINITY,XQueryParser.FOLLOW_INFINITY_in_p_DFPropertyName1919); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:241:69: k= MINUS_SIGN
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,MINUS_SIGN,XQueryParser.FOLLOW_MINUS_SIGN_in_p_DFPropertyName1925); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:241:84: k= NAN
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,NAN,XQueryParser.FOLLOW_NAN_in_p_DFPropertyName1931); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:241:92: k= PERCENT
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,PERCENT,XQueryParser.FOLLOW_PERCENT_in_p_DFPropertyName1937); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:241:104: k= PER_MILLE
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,PER_MILLE,XQueryParser.FOLLOW_PER_MILLE_in_p_DFPropertyName1943); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:241:118: k= ZERO_DIGIT
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,ZERO_DIGIT,XQueryParser.FOLLOW_ZERO_DIGIT_in_p_DFPropertyName1949); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 9 :
+ // XQueryParser.g:241:133: k= DIGIT
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DIGIT,XQueryParser.FOLLOW_DIGIT_in_p_DFPropertyName1955); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 10 :
+ // XQueryParser.g:241:143: k= PATTERN_SEPARATOR
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,PATTERN_SEPARATOR,XQueryParser.FOLLOW_PATTERN_SEPARATOR_in_p_DFPropertyName1961); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PreserveMode_return: (function() {
+ XQueryParser.p_PreserveMode_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PreserveMode_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:245:1: p_PreserveMode : (k+= PRESERVE | k+= NO_PRESERVE ) ;
+ // $ANTLR start "p_PreserveMode"
+ p_PreserveMode: function() {
+ var retval = new XQueryParser.p_PreserveMode_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:246:9: ( (k+= PRESERVE | k+= NO_PRESERVE ) )
+ // XQueryParser.g:246:13: (k+= PRESERVE | k+= NO_PRESERVE )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:246:13: (k+= PRESERVE | k+= NO_PRESERVE )
+ var alt16=2;
+ var LA16_0 = this.input.LA(1);
+
+ if ( (LA16_0==PRESERVE) ) {
+ alt16=1;
+ }
+ else if ( (LA16_0==NO_PRESERVE) ) {
+ alt16=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 16, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt16) {
+ case 1 :
+ // XQueryParser.g:246:14: k+= PRESERVE
+ k=this.match(this.input,PRESERVE,XQueryParser.FOLLOW_PRESERVE_in_p_PreserveMode1993); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:246:28: k+= NO_PRESERVE
+ k=this.match(this.input,NO_PRESERVE,XQueryParser.FOLLOW_NO_PRESERVE_in_p_PreserveMode1999); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_InheritMode_return: (function() {
+ XQueryParser.p_InheritMode_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_InheritMode_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:250:1: p_InheritMode : (k+= INHERIT | k+= NO_INHERIT ) ;
+ // $ANTLR start "p_InheritMode"
+ p_InheritMode: function() {
+ var retval = new XQueryParser.p_InheritMode_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:251:9: ( (k+= INHERIT | k+= NO_INHERIT ) )
+ // XQueryParser.g:251:13: (k+= INHERIT | k+= NO_INHERIT )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:251:13: (k+= INHERIT | k+= NO_INHERIT )
+ var alt17=2;
+ var LA17_0 = this.input.LA(1);
+
+ if ( (LA17_0==INHERIT) ) {
+ alt17=1;
+ }
+ else if ( (LA17_0==NO_INHERIT) ) {
+ alt17=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 17, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt17) {
+ case 1 :
+ // XQueryParser.g:251:14: k+= INHERIT
+ k=this.match(this.input,INHERIT,XQueryParser.FOLLOW_INHERIT_in_p_InheritMode2032); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:251:27: k+= NO_INHERIT
+ k=this.match(this.input,NO_INHERIT,XQueryParser.FOLLOW_NO_INHERIT_in_p_InheritMode2038); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_DefaultCollationDecl_return: (function() {
+ XQueryParser.pm_DefaultCollationDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_DefaultCollationDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:255:1: pm_DefaultCollationDecl : k+= DECLARE k+= DEFAULT k+= COLLATION p_StringLiteral SEMICOLON ;
+ // $ANTLR start "pm_DefaultCollationDecl"
+ pm_DefaultCollationDecl: function() {
+ var retval = new XQueryParser.pm_DefaultCollationDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON51 = null;
+ var k = null;
+ var list_k=null;
+ var p_StringLiteral50 = null;
+
+ var SEMICOLON51_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:256:9: (k+= DECLARE k+= DEFAULT k+= COLLATION p_StringLiteral SEMICOLON )
+ // XQueryParser.g:256:13: k+= DECLARE k+= DEFAULT k+= COLLATION p_StringLiteral SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_DefaultCollationDecl2078); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_pm_DefaultCollationDecl2082); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,COLLATION,XQueryParser.FOLLOW_COLLATION_in_pm_DefaultCollationDecl2086); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_DefaultCollationDecl2088);
+ p_StringLiteral50=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral50.getTree());
+ SEMICOLON51=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_DefaultCollationDecl2090); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON51_tree = this.adaptor.create(SEMICOLON51);
+ this.adaptor.addChild(root_0, SEMICOLON51_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_BaseURIDecl_return: (function() {
+ XQueryParser.pm_BaseURIDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_BaseURIDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:260:1: pm_BaseURIDecl : k+= DECLARE k+= BASE_URI sl= p_StringLiteral SEMICOLON -> ^( BaseURIDecl $sl) ;
+ // $ANTLR start "pm_BaseURIDecl"
+ pm_BaseURIDecl: function() {
+ var retval = new XQueryParser.pm_BaseURIDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON52 = null;
+ var k = null;
+ var list_k=null;
+ var sl = null;
+
+ var SEMICOLON52_tree=null;
+ var k_tree=null;
+ var stream_DECLARE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DECLARE");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_BASE_URI=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token BASE_URI");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:261:9: (k+= DECLARE k+= BASE_URI sl= p_StringLiteral SEMICOLON -> ^( BaseURIDecl $sl) )
+ // XQueryParser.g:261:13: k+= DECLARE k+= BASE_URI sl= p_StringLiteral SEMICOLON
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_BaseURIDecl2129); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,BASE_URI,XQueryParser.FOLLOW_BASE_URI_in_pm_BaseURIDecl2133); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BASE_URI.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_BaseURIDecl2137);
+ sl=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(sl.getTree());
+ SEMICOLON52=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_BaseURIDecl2139); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON52);
+
+
+
+ // AST REWRITE
+ // elements: sl
+ // token labels:
+ // rule labels: sl, retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_sl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token sl",sl!=null?sl.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 262:17: -> ^( BaseURIDecl $sl)
+ {
+ // XQueryParser.g:262:20: ^( BaseURIDecl $sl)
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(BaseURIDecl, "BaseURIDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_sl.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_SchemaImport_return: (function() {
+ XQueryParser.pm_SchemaImport_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_SchemaImport_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:266:1: pm_SchemaImport : k+= IMPORT k+= SCHEMA (sp= p_SchemaPrefix )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON -> ^( SchemaImport ^( SchemaPrefix ( $sp)? ) $us ^( AtHints ( $ah)* ) ) ;
+ // $ANTLR start "pm_SchemaImport"
+ pm_SchemaImport: function() {
+ var retval = new XQueryParser.pm_SchemaImport_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA53 = null;
+ var SEMICOLON54 = null;
+ var k = null;
+ var list_k=null;
+ var list_ah=null;
+ var sp = null;
+ var us = null;
+ var ah = null;
+ var COMMA53_tree=null;
+ var SEMICOLON54_tree=null;
+ var k_tree=null;
+ var stream_AT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token AT");
+ var stream_IMPORT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token IMPORT");
+ var stream_SCHEMA=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SCHEMA");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_COMMA=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token COMMA");
+ var stream_p_SchemaPrefix=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_SchemaPrefix");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:267:9: (k+= IMPORT k+= SCHEMA (sp= p_SchemaPrefix )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON -> ^( SchemaImport ^( SchemaPrefix ( $sp)? ) $us ^( AtHints ( $ah)* ) ) )
+ // XQueryParser.g:267:11: k+= IMPORT k+= SCHEMA (sp= p_SchemaPrefix )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON
+ k=this.match(this.input,IMPORT,XQueryParser.FOLLOW_IMPORT_in_pm_SchemaImport2193); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_IMPORT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,SCHEMA,XQueryParser.FOLLOW_SCHEMA_in_pm_SchemaImport2197); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SCHEMA.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:267:33: (sp= p_SchemaPrefix )?
+ var alt18=2;
+ var LA18_0 = this.input.LA(1);
+
+ if ( (LA18_0==DEFAULT||LA18_0==NAMESPACE) ) {
+ alt18=1;
+ }
+ switch (alt18) {
+ case 1 :
+ // XQueryParser.g:267:33: sp= p_SchemaPrefix
+ this.pushFollow(XQueryParser.FOLLOW_p_SchemaPrefix_in_pm_SchemaImport2201);
+ sp=this.p_SchemaPrefix();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_SchemaPrefix.add(sp.getTree());
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_SchemaImport2206);
+ us=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(us.getTree());
+ // XQueryParser.g:267:69: (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )?
+ var alt20=2;
+ var LA20_0 = this.input.LA(1);
+
+ if ( (LA20_0==AT) ) {
+ alt20=1;
+ }
+ switch (alt20) {
+ case 1 :
+ // XQueryParser.g:267:70: k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )*
+ k=this.match(this.input,AT,XQueryParser.FOLLOW_AT_in_pm_SchemaImport2211); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_AT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_SchemaImport2215);
+ ah=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(ah.getTree());
+ if (org.antlr.lang.isNull(list_ah)) list_ah = [];
+ list_ah.push(ah.getTree());
+
+ // XQueryParser.g:267:96: ( COMMA ah+= p_StringLiteral )*
+ loop19:
+ do {
+ var alt19=2;
+ var LA19_0 = this.input.LA(1);
+
+ if ( (LA19_0==COMMA) ) {
+ alt19=1;
+ }
+
+
+ switch (alt19) {
+ case 1 :
+ // XQueryParser.g:267:97: COMMA ah+= p_StringLiteral
+ COMMA53=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_pm_SchemaImport2218); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_COMMA.add(COMMA53);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_SchemaImport2222);
+ ah=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(ah.getTree());
+ if (org.antlr.lang.isNull(list_ah)) list_ah = [];
+ list_ah.push(ah.getTree());
+
+
+
+ break;
+
+ default :
+ break loop19;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON54=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_SchemaImport2228); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON54);
+
+
+
+ // AST REWRITE
+ // elements: ah, sp, us
+ // token labels:
+ // rule labels: retval, sp, us
+ // token list labels:
+ // rule list labels: ah
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_sp=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token sp",sp!=null?sp.tree:null);
+ var stream_us=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token us",us!=null?us.tree:null);
+ var stream_ah=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token ah",list_ah);
+ root_0 = this.adaptor.nil();
+ // 268:17: -> ^( SchemaImport ^( SchemaPrefix ( $sp)? ) $us ^( AtHints ( $ah)* ) )
+ {
+ // XQueryParser.g:268:20: ^( SchemaImport ^( SchemaPrefix ( $sp)? ) $us ^( AtHints ( $ah)* ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(SchemaImport, "SchemaImport"), root_1);
+
+ // XQueryParser.g:268:35: ^( SchemaPrefix ( $sp)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(SchemaPrefix, "SchemaPrefix"), root_2);
+
+ // XQueryParser.g:268:50: ( $sp)?
+ if ( stream_sp.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_sp.nextTree());
+
+ }
+ stream_sp.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ this.adaptor.addChild(root_1, stream_us.nextTree());
+ // XQueryParser.g:268:60: ^( AtHints ( $ah)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(AtHints, "AtHints"), root_2);
+
+ // XQueryParser.g:268:70: ( $ah)*
+ while ( stream_ah.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_ah.nextTree());
+
+ }
+ stream_ah.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SchemaPrefix_return: (function() {
+ XQueryParser.p_SchemaPrefix_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SchemaPrefix_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:272:1: p_SchemaPrefix : (k+= NAMESPACE nn= p_NCName EQUAL -> ^( NamespaceName $nn) | k+= DEFAULT k+= ELEMENT k+= NAMESPACE -> DefaultElementNamespace );
+ // $ANTLR start "p_SchemaPrefix"
+ p_SchemaPrefix: function() {
+ var retval = new XQueryParser.p_SchemaPrefix_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var EQUAL55 = null;
+ var k = null;
+ var list_k=null;
+ var nn = null;
+
+ var EQUAL55_tree=null;
+ var k_tree=null;
+ var stream_ELEMENT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token ELEMENT");
+ var stream_NAMESPACE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token NAMESPACE");
+ var stream_EQUAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EQUAL");
+ var stream_DEFAULT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DEFAULT");
+ var stream_p_NCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_NCName");
+ try {
+ // XQueryParser.g:273:9: (k+= NAMESPACE nn= p_NCName EQUAL -> ^( NamespaceName $nn) | k+= DEFAULT k+= ELEMENT k+= NAMESPACE -> DefaultElementNamespace )
+ var alt21=2;
+ var LA21_0 = this.input.LA(1);
+
+ if ( (LA21_0==NAMESPACE) ) {
+ alt21=1;
+ }
+ else if ( (LA21_0==DEFAULT) ) {
+ alt21=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 21, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt21) {
+ case 1 :
+ // XQueryParser.g:273:11: k+= NAMESPACE nn= p_NCName EQUAL
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_p_SchemaPrefix2299); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_NAMESPACE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_SchemaPrefix2303);
+ nn=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_NCName.add(nn.getTree());
+ EQUAL55=this.match(this.input,EQUAL,XQueryParser.FOLLOW_EQUAL_in_p_SchemaPrefix2305); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EQUAL.add(EQUAL55);
+
+
+
+ // AST REWRITE
+ // elements: nn
+ // token labels:
+ // rule labels: retval, nn
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_nn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token nn",nn!=null?nn.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 274:17: -> ^( NamespaceName $nn)
+ {
+ // XQueryParser.g:274:20: ^( NamespaceName $nn)
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(NamespaceName, "NamespaceName"), root_1);
+
+ this.adaptor.addChild(root_1, stream_nn.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:275:11: k+= DEFAULT k+= ELEMENT k+= NAMESPACE
+ k=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_p_SchemaPrefix2345); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DEFAULT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,ELEMENT,XQueryParser.FOLLOW_ELEMENT_in_p_SchemaPrefix2349); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ELEMENT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_p_SchemaPrefix2353); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_NAMESPACE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ // AST REWRITE
+ // elements:
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 276:17: -> DefaultElementNamespace
+ {
+ this.adaptor.addChild(root_0, this.adaptor.create(DefaultElementNamespace, "DefaultElementNamespace"));
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_ModuleImport_return: (function() {
+ XQueryParser.pm_ModuleImport_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_ModuleImport_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:280:1: pm_ModuleImport : k+= IMPORT k+= MODULE (k+= NAMESPACE nn= p_NCName EQUAL )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON -> ^( ModuleImport ^( NamespaceName ( $nn)? ) $us ^( AtHints ( $ah)* ) ) ;
+ // $ANTLR start "pm_ModuleImport"
+ pm_ModuleImport: function() {
+ var retval = new XQueryParser.pm_ModuleImport_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var EQUAL56 = null;
+ var COMMA57 = null;
+ var SEMICOLON58 = null;
+ var k = null;
+ var list_k=null;
+ var list_ah=null;
+ var nn = null;
+ var us = null;
+ var ah = null;
+ var EQUAL56_tree=null;
+ var COMMA57_tree=null;
+ var SEMICOLON58_tree=null;
+ var k_tree=null;
+ var stream_AT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token AT");
+ var stream_IMPORT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token IMPORT");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_MODULE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token MODULE");
+ var stream_COMMA=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token COMMA");
+ var stream_NAMESPACE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token NAMESPACE");
+ var stream_EQUAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EQUAL");
+ var stream_p_NCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_NCName");
+ var stream_p_StringLiteral=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_StringLiteral");
+ try {
+ // XQueryParser.g:281:9: (k+= IMPORT k+= MODULE (k+= NAMESPACE nn= p_NCName EQUAL )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON -> ^( ModuleImport ^( NamespaceName ( $nn)? ) $us ^( AtHints ( $ah)* ) ) )
+ // XQueryParser.g:281:11: k+= IMPORT k+= MODULE (k+= NAMESPACE nn= p_NCName EQUAL )? us= p_StringLiteral (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )? SEMICOLON
+ k=this.match(this.input,IMPORT,XQueryParser.FOLLOW_IMPORT_in_pm_ModuleImport2402); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_IMPORT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,MODULE,XQueryParser.FOLLOW_MODULE_in_pm_ModuleImport2406); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_MODULE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:281:31: (k+= NAMESPACE nn= p_NCName EQUAL )?
+ var alt22=2;
+ var LA22_0 = this.input.LA(1);
+
+ if ( (LA22_0==NAMESPACE) ) {
+ alt22=1;
+ }
+ switch (alt22) {
+ case 1 :
+ // XQueryParser.g:281:32: k+= NAMESPACE nn= p_NCName EQUAL
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_pm_ModuleImport2411); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_NAMESPACE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_pm_ModuleImport2415);
+ nn=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_NCName.add(nn.getTree());
+ EQUAL56=this.match(this.input,EQUAL,XQueryParser.FOLLOW_EQUAL_in_pm_ModuleImport2417); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EQUAL.add(EQUAL56);
+
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_ModuleImport2423);
+ us=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(us.getTree());
+ // XQueryParser.g:281:84: (k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )* )?
+ var alt24=2;
+ var LA24_0 = this.input.LA(1);
+
+ if ( (LA24_0==AT) ) {
+ alt24=1;
+ }
+ switch (alt24) {
+ case 1 :
+ // XQueryParser.g:281:85: k+= AT ah+= p_StringLiteral ( COMMA ah+= p_StringLiteral )*
+ k=this.match(this.input,AT,XQueryParser.FOLLOW_AT_in_pm_ModuleImport2428); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_AT.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_ModuleImport2432);
+ ah=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(ah.getTree());
+ if (org.antlr.lang.isNull(list_ah)) list_ah = [];
+ list_ah.push(ah.getTree());
+
+ // XQueryParser.g:281:111: ( COMMA ah+= p_StringLiteral )*
+ loop23:
+ do {
+ var alt23=2;
+ var LA23_0 = this.input.LA(1);
+
+ if ( (LA23_0==COMMA) ) {
+ alt23=1;
+ }
+
+
+ switch (alt23) {
+ case 1 :
+ // XQueryParser.g:281:112: COMMA ah+= p_StringLiteral
+ COMMA57=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_pm_ModuleImport2435); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_COMMA.add(COMMA57);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_pm_ModuleImport2439);
+ ah=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_StringLiteral.add(ah.getTree());
+ if (org.antlr.lang.isNull(list_ah)) list_ah = [];
+ list_ah.push(ah.getTree());
+
+
+
+ break;
+
+ default :
+ break loop23;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON58=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_ModuleImport2445); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON58);
+
+
+
+ // AST REWRITE
+ // elements: nn, us, ah
+ // token labels:
+ // rule labels: retval, nn, us
+ // token list labels:
+ // rule list labels: ah
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_nn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token nn",nn!=null?nn.tree:null);
+ var stream_us=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token us",us!=null?us.tree:null);
+ var stream_ah=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token ah",list_ah);
+ root_0 = this.adaptor.nil();
+ // 282:17: -> ^( ModuleImport ^( NamespaceName ( $nn)? ) $us ^( AtHints ( $ah)* ) )
+ {
+ // XQueryParser.g:282:20: ^( ModuleImport ^( NamespaceName ( $nn)? ) $us ^( AtHints ( $ah)* ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(ModuleImport, "ModuleImport"), root_1);
+
+ // XQueryParser.g:282:35: ^( NamespaceName ( $nn)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(NamespaceName, "NamespaceName"), root_2);
+
+ // XQueryParser.g:282:51: ( $nn)?
+ if ( stream_nn.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_nn.nextTree());
+
+ }
+ stream_nn.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ this.adaptor.addChild(root_1, stream_us.nextTree());
+ // XQueryParser.g:282:61: ^( AtHints ( $ah)* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(AtHints, "AtHints"), root_2);
+
+ // XQueryParser.g:282:71: ( $ah)*
+ while ( stream_ah.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_ah.nextTree());
+
+ }
+ stream_ah.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_VarDecl_return: (function() {
+ XQueryParser.pm_VarDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_VarDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:286:1: pm_VarDecl : k+= DECLARE p_PrivateOption vdt= pg_VarDeclType DOLLAR qn= p_QName (td= p_TypeDeclaration )? ( ( BIND es= p_ExprSingle ) | (k+= EXTERNAL ( BIND des= p_ExprSingle )? ) ) SEMICOLON -> ^( VarDecl $vdt $qn ^( VarType ( $td)? ) ^( VarValue ( $es)? ^( VarDefaultValue ( $des)? ) ) ) ;
+ // $ANTLR start "pm_VarDecl"
+ pm_VarDecl: function() {
+ var retval = new XQueryParser.pm_VarDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR60 = null;
+ var BIND61 = null;
+ var BIND62 = null;
+ var SEMICOLON63 = null;
+ var k = null;
+ var list_k=null;
+ var vdt = null;
+ var qn = null;
+ var td = null;
+ var es = null;
+ var des = null;
+ var p_PrivateOption59 = null;
+
+ var DOLLAR60_tree=null;
+ var BIND61_tree=null;
+ var BIND62_tree=null;
+ var SEMICOLON63_tree=null;
+ var k_tree=null;
+ var stream_DOLLAR=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DOLLAR");
+ var stream_DECLARE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DECLARE");
+ var stream_EXTERNAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EXTERNAL");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_BIND=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token BIND");
+ var stream_p_TypeDeclaration=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_TypeDeclaration");
+ var stream_p_QName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QName");
+ var stream_p_PrivateOption=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_PrivateOption");
+ var stream_p_ExprSingle=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ExprSingle");
+ var stream_pg_VarDeclType=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pg_VarDeclType");
+ try {
+ // XQueryParser.g:287:9: (k+= DECLARE p_PrivateOption vdt= pg_VarDeclType DOLLAR qn= p_QName (td= p_TypeDeclaration )? ( ( BIND es= p_ExprSingle ) | (k+= EXTERNAL ( BIND des= p_ExprSingle )? ) ) SEMICOLON -> ^( VarDecl $vdt $qn ^( VarType ( $td)? ) ^( VarValue ( $es)? ^( VarDefaultValue ( $des)? ) ) ) )
+ // XQueryParser.g:287:11: k+= DECLARE p_PrivateOption vdt= pg_VarDeclType DOLLAR qn= p_QName (td= p_TypeDeclaration )? ( ( BIND es= p_ExprSingle ) | (k+= EXTERNAL ( BIND des= p_ExprSingle )? ) ) SEMICOLON
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_VarDecl2515); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PrivateOption_in_pm_VarDecl2517);
+ p_PrivateOption59=this.p_PrivateOption();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_PrivateOption.add(p_PrivateOption59.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_pg_VarDeclType_in_pm_VarDecl2521);
+ vdt=this.pg_VarDeclType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pg_VarDeclType.add(vdt.getTree());
+ DOLLAR60=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_pm_VarDecl2523); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DOLLAR.add(DOLLAR60);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_pm_VarDecl2527);
+ qn=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(qn.getTree());
+ // XQueryParser.g:287:77: (td= p_TypeDeclaration )?
+ var alt25=2;
+ var LA25_0 = this.input.LA(1);
+
+ if ( (LA25_0==AS) ) {
+ alt25=1;
+ }
+ switch (alt25) {
+ case 1 :
+ // XQueryParser.g:287:77: td= p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_pm_VarDecl2531);
+ td=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(td.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:287:97: ( ( BIND es= p_ExprSingle ) | (k+= EXTERNAL ( BIND des= p_ExprSingle )? ) )
+ var alt27=2;
+ var LA27_0 = this.input.LA(1);
+
+ if ( (LA27_0==BIND) ) {
+ alt27=1;
+ }
+ else if ( (LA27_0==EXTERNAL) ) {
+ alt27=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 27, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt27) {
+ case 1 :
+ // XQueryParser.g:287:98: ( BIND es= p_ExprSingle )
+ // XQueryParser.g:287:98: ( BIND es= p_ExprSingle )
+ // XQueryParser.g:287:99: BIND es= p_ExprSingle
+ BIND61=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_VarDecl2536); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BIND.add(BIND61);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_VarDecl2540);
+ es=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ExprSingle.add(es.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:287:123: (k+= EXTERNAL ( BIND des= p_ExprSingle )? )
+ // XQueryParser.g:287:123: (k+= EXTERNAL ( BIND des= p_ExprSingle )? )
+ // XQueryParser.g:287:124: k+= EXTERNAL ( BIND des= p_ExprSingle )?
+ k=this.match(this.input,EXTERNAL,XQueryParser.FOLLOW_EXTERNAL_in_pm_VarDecl2548); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EXTERNAL.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:287:136: ( BIND des= p_ExprSingle )?
+ var alt26=2;
+ var LA26_0 = this.input.LA(1);
+
+ if ( (LA26_0==BIND) ) {
+ alt26=1;
+ }
+ switch (alt26) {
+ case 1 :
+ // XQueryParser.g:287:137: BIND des= p_ExprSingle
+ BIND62=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_VarDecl2551); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BIND.add(BIND62);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_VarDecl2555);
+ des=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ExprSingle.add(des.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+
+
+ break;
+
+ }
+
+ SEMICOLON63=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_VarDecl2561); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON63);
+
+
+
+ // AST REWRITE
+ // elements: des, td, es, vdt, qn
+ // token labels:
+ // rule labels: qn, retval, des, td, vdt, es
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_qn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token qn",qn!=null?qn.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_des=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token des",des!=null?des.tree:null);
+ var stream_td=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token td",td!=null?td.tree:null);
+ var stream_vdt=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token vdt",vdt!=null?vdt.tree:null);
+ var stream_es=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token es",es!=null?es.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 288:17: -> ^( VarDecl $vdt $qn ^( VarType ( $td)? ) ^( VarValue ( $es)? ^( VarDefaultValue ( $des)? ) ) )
+ {
+ // XQueryParser.g:288:20: ^( VarDecl $vdt $qn ^( VarType ( $td)? ) ^( VarValue ( $es)? ^( VarDefaultValue ( $des)? ) ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(VarDecl, "VarDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_vdt.nextTree());
+ this.adaptor.addChild(root_1, stream_qn.nextTree());
+ // XQueryParser.g:288:39: ^( VarType ( $td)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(VarType, "VarType"), root_2);
+
+ // XQueryParser.g:288:49: ( $td)?
+ if ( stream_td.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_td.nextTree());
+
+ }
+ stream_td.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:288:55: ^( VarValue ( $es)? ^( VarDefaultValue ( $des)? ) )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(VarValue, "VarValue"), root_2);
+
+ // XQueryParser.g:288:66: ( $es)?
+ if ( stream_es.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_es.nextTree());
+
+ }
+ stream_es.reset();
+ // XQueryParser.g:288:71: ^( VarDefaultValue ( $des)? )
+ {
+ var root_3 = this.adaptor.nil();
+ root_3 = this.adaptor.becomeRoot(this.adaptor.create(VarDefaultValue, "VarDefaultValue"), root_3);
+
+ // XQueryParser.g:288:89: ( $des)?
+ if ( stream_des.hasNext() ) {
+ this.adaptor.addChild(root_3, stream_des.nextTree());
+
+ }
+ stream_des.reset();
+
+ this.adaptor.addChild(root_2, root_3);
+ }
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_VarDeclType_return: (function() {
+ XQueryParser.pg_VarDeclType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_VarDeclType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:295:1: pg_VarDeclType : ({...}? =>ku= CONSTANT -> VarConstantDecl | kv= VARIABLE -> VarVariableDecl );
+ // $ANTLR start "pg_VarDeclType"
+ pg_VarDeclType: function() {
+ var retval = new XQueryParser.pg_VarDeclType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ku = null;
+ var kv = null;
+
+ var ku_tree=null;
+ var kv_tree=null;
+ var stream_CONSTANT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token CONSTANT");
+ var stream_VARIABLE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token VARIABLE");
+
+ try {
+ // XQueryParser.g:296:9: ({...}? =>ku= CONSTANT -> VarConstantDecl | kv= VARIABLE -> VarVariableDecl )
+ var alt28=2;
+ var LA28_0 = this.input.LA(1);
+
+ if ( (LA28_0==CONSTANT) && ((true))) {
+ alt28=1;
+ }
+ else if ( (LA28_0==VARIABLE) ) {
+ alt28=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 28, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt28) {
+ case 1 :
+ // XQueryParser.g:296:11: {...}? =>ku= CONSTANT
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pg_VarDeclType", "true");
+ }
+ ku=this.match(this.input,CONSTANT,XQueryParser.FOLLOW_CONSTANT_in_pg_VarDeclType2648); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_CONSTANT.add(ku);
+
+
+
+ // AST REWRITE
+ // elements:
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 297:17: -> VarConstantDecl
+ {
+ this.adaptor.addChild(root_0, this.adaptor.create(VarConstantDecl, "VarConstantDecl"));
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:298:11: kv= VARIABLE
+ kv=this.match(this.input,VARIABLE,XQueryParser.FOLLOW_VARIABLE_in_pg_VarDeclType2682); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_VARIABLE.add(kv);
+
+
+
+ // AST REWRITE
+ // elements:
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 299:17: -> VarVariableDecl
+ {
+ this.adaptor.addChild(root_0, this.adaptor.create(VarVariableDecl, "VarVariableDecl"));
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_ContextItemDecl_return: (function() {
+ XQueryParser.pm_ContextItemDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_ContextItemDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:310:1: pm_ContextItemDecl : k+= DECLARE k+= CONTEXT k+= ITEM (k+= AS p_ItemType )? ( ( BIND p_ExprSingle ) | (k+= EXTERNAL ( BIND p_ExprSingle )? ) ) SEMICOLON ;
+ // $ANTLR start "pm_ContextItemDecl"
+ pm_ContextItemDecl: function() {
+ var retval = new XQueryParser.pm_ContextItemDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var BIND65 = null;
+ var BIND67 = null;
+ var SEMICOLON69 = null;
+ var k = null;
+ var list_k=null;
+ var p_ItemType64 = null;
+ var p_ExprSingle66 = null;
+ var p_ExprSingle68 = null;
+
+ var BIND65_tree=null;
+ var BIND67_tree=null;
+ var SEMICOLON69_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:311:9: (k+= DECLARE k+= CONTEXT k+= ITEM (k+= AS p_ItemType )? ( ( BIND p_ExprSingle ) | (k+= EXTERNAL ( BIND p_ExprSingle )? ) ) SEMICOLON )
+ // XQueryParser.g:311:13: k+= DECLARE k+= CONTEXT k+= ITEM (k+= AS p_ItemType )? ( ( BIND p_ExprSingle ) | (k+= EXTERNAL ( BIND p_ExprSingle )? ) ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_ContextItemDecl2739); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,CONTEXT,XQueryParser.FOLLOW_CONTEXT_in_pm_ContextItemDecl2743); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,ITEM,XQueryParser.FOLLOW_ITEM_in_pm_ContextItemDecl2747); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:311:43: (k+= AS p_ItemType )?
+ var alt29=2;
+ var LA29_0 = this.input.LA(1);
+
+ if ( (LA29_0==AS) ) {
+ alt29=1;
+ }
+ switch (alt29) {
+ case 1 :
+ // XQueryParser.g:311:44: k+= AS p_ItemType
+ k=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_pm_ContextItemDecl2752); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ItemType_in_pm_ContextItemDecl2754);
+ p_ItemType64=this.p_ItemType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ItemType64.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:311:63: ( ( BIND p_ExprSingle ) | (k+= EXTERNAL ( BIND p_ExprSingle )? ) )
+ var alt31=2;
+ var LA31_0 = this.input.LA(1);
+
+ if ( (LA31_0==BIND) ) {
+ alt31=1;
+ }
+ else if ( (LA31_0==EXTERNAL) ) {
+ alt31=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 31, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt31) {
+ case 1 :
+ // XQueryParser.g:311:64: ( BIND p_ExprSingle )
+ // XQueryParser.g:311:64: ( BIND p_ExprSingle )
+ // XQueryParser.g:311:65: BIND p_ExprSingle
+ BIND65=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_ContextItemDecl2760); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND65_tree = this.adaptor.create(BIND65);
+ this.adaptor.addChild(root_0, BIND65_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_ContextItemDecl2762);
+ p_ExprSingle66=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle66.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:311:86: (k+= EXTERNAL ( BIND p_ExprSingle )? )
+ // XQueryParser.g:311:86: (k+= EXTERNAL ( BIND p_ExprSingle )? )
+ // XQueryParser.g:311:87: k+= EXTERNAL ( BIND p_ExprSingle )?
+ k=this.match(this.input,EXTERNAL,XQueryParser.FOLLOW_EXTERNAL_in_pm_ContextItemDecl2770); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:311:99: ( BIND p_ExprSingle )?
+ var alt30=2;
+ var LA30_0 = this.input.LA(1);
+
+ if ( (LA30_0==BIND) ) {
+ alt30=1;
+ }
+ switch (alt30) {
+ case 1 :
+ // XQueryParser.g:311:100: BIND p_ExprSingle
+ BIND67=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_ContextItemDecl2773); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND67_tree = this.adaptor.create(BIND67);
+ this.adaptor.addChild(root_0, BIND67_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_ContextItemDecl2775);
+ p_ExprSingle68=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle68.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+
+
+ break;
+
+ }
+
+ SEMICOLON69=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_ContextItemDecl2781); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON69_tree = this.adaptor.create(SEMICOLON69);
+ this.adaptor.addChild(root_0, SEMICOLON69_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_ConstructionDecl_return: (function() {
+ XQueryParser.pm_ConstructionDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_ConstructionDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:318:1: pm_ConstructionDecl : k+= DECLARE k+= CONSTRUCTION (k+= STRIP | k+= PRESERVE ) SEMICOLON ;
+ // $ANTLR start "pm_ConstructionDecl"
+ pm_ConstructionDecl: function() {
+ var retval = new XQueryParser.pm_ConstructionDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON70 = null;
+ var k = null;
+ var list_k=null;
+
+ var SEMICOLON70_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:319:9: (k+= DECLARE k+= CONSTRUCTION (k+= STRIP | k+= PRESERVE ) SEMICOLON )
+ // XQueryParser.g:319:13: k+= DECLARE k+= CONSTRUCTION (k+= STRIP | k+= PRESERVE ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_ConstructionDecl2815); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,CONSTRUCTION,XQueryParser.FOLLOW_CONSTRUCTION_in_pm_ConstructionDecl2819); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:319:40: (k+= STRIP | k+= PRESERVE )
+ var alt32=2;
+ var LA32_0 = this.input.LA(1);
+
+ if ( (LA32_0==STRIP) ) {
+ alt32=1;
+ }
+ else if ( (LA32_0==PRESERVE) ) {
+ alt32=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 32, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt32) {
+ case 1 :
+ // XQueryParser.g:319:41: k+= STRIP
+ k=this.match(this.input,STRIP,XQueryParser.FOLLOW_STRIP_in_pm_ConstructionDecl2824); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:319:52: k+= PRESERVE
+ k=this.match(this.input,PRESERVE,XQueryParser.FOLLOW_PRESERVE_in_pm_ConstructionDecl2830); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON70=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_ConstructionDecl2833); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON70_tree = this.adaptor.create(SEMICOLON70);
+ this.adaptor.addChild(root_0, SEMICOLON70_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_FunctionDecl_return: (function() {
+ XQueryParser.pm_FunctionDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_FunctionDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:325:1: pm_FunctionDecl : ({...}? =>k+= DECLARE k+= SEQUENTIAL k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (b= p_Block | k+= EXTERNAL ) SEMICOLON -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $b)? ) | k+= DECLARE p_PrivateOption p_FunctionType k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (ee= p_EnclosedExpr | k+= EXTERNAL ) SEMICOLON -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $ee)? ) );
+ // $ANTLR start "pm_FunctionDecl"
+ pm_FunctionDecl: function() {
+ var retval = new XQueryParser.pm_FunctionDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN71 = null;
+ var RPAREN72 = null;
+ var SEMICOLON73 = null;
+ var LPAREN76 = null;
+ var RPAREN77 = null;
+ var SEMICOLON78 = null;
+ var k = null;
+ var list_k=null;
+ var qn = null;
+ var pl = null;
+ var td = null;
+ var b = null;
+ var ee = null;
+ var p_PrivateOption74 = null;
+ var p_FunctionType75 = null;
+
+ var LPAREN71_tree=null;
+ var RPAREN72_tree=null;
+ var SEMICOLON73_tree=null;
+ var LPAREN76_tree=null;
+ var RPAREN77_tree=null;
+ var SEMICOLON78_tree=null;
+ var k_tree=null;
+ var stream_FUNCTION=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token FUNCTION");
+ var stream_DECLARE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DECLARE");
+ var stream_RPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token RPAREN");
+ var stream_EXTERNAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EXTERNAL");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_SEQUENTIAL=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEQUENTIAL");
+ var stream_LPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token LPAREN");
+ var stream_p_Block=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_Block");
+ var stream_p_TypeDeclaration=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_TypeDeclaration");
+ var stream_p_QName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QName");
+ var stream_p_ParamList=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ParamList");
+ var stream_p_PrivateOption=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_PrivateOption");
+ var stream_p_FunctionType=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_FunctionType");
+ var stream_p_EnclosedExpr=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_EnclosedExpr");
+ try {
+ // XQueryParser.g:326:9: ({...}? =>k+= DECLARE k+= SEQUENTIAL k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (b= p_Block | k+= EXTERNAL ) SEMICOLON -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $b)? ) | k+= DECLARE p_PrivateOption p_FunctionType k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (ee= p_EnclosedExpr | k+= EXTERNAL ) SEMICOLON -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $ee)? ) )
+ var alt39=2;
+ var LA39_0 = this.input.LA(1);
+
+ if ( (LA39_0==DECLARE) ) {
+ var LA39_1 = this.input.LA(2);
+
+ if ( (LA39_1==SEQUENTIAL) && ((true))) {
+ alt39=1;
+ }
+ else if ( (LA39_1==FUNCTION||LA39_1==UPDATING||LA39_1==SIMPLE||LA39_1==PRIVATE) ) {
+ alt39=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 39, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 39, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt39) {
+ case 1 :
+ // XQueryParser.g:326:13: {...}? =>k+= DECLARE k+= SEQUENTIAL k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (b= p_Block | k+= EXTERNAL ) SEMICOLON
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pm_FunctionDecl", "true");
+ }
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_FunctionDecl2869); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,SEQUENTIAL,XQueryParser.FOLLOW_SEQUENTIAL_in_pm_FunctionDecl2873); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEQUENTIAL.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,FUNCTION,XQueryParser.FOLLOW_FUNCTION_in_pm_FunctionDecl2877); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_FUNCTION.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_pm_FunctionDecl2881);
+ qn=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(qn.getTree());
+ LPAREN71=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_pm_FunctionDecl2883); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LPAREN.add(LPAREN71);
+
+ // XQueryParser.g:326:80: (pl= p_ParamList )?
+ var alt33=2;
+ var LA33_0 = this.input.LA(1);
+
+ if ( (LA33_0==DOLLAR) ) {
+ alt33=1;
+ }
+ switch (alt33) {
+ case 1 :
+ // XQueryParser.g:326:80: pl= p_ParamList
+ this.pushFollow(XQueryParser.FOLLOW_p_ParamList_in_pm_FunctionDecl2887);
+ pl=this.p_ParamList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ParamList.add(pl.getTree());
+
+
+ break;
+
+ }
+
+ RPAREN72=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_pm_FunctionDecl2890); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RPAREN.add(RPAREN72);
+
+ // XQueryParser.g:326:103: (td= p_TypeDeclaration )?
+ var alt34=2;
+ var LA34_0 = this.input.LA(1);
+
+ if ( (LA34_0==AS) ) {
+ alt34=1;
+ }
+ switch (alt34) {
+ case 1 :
+ // XQueryParser.g:326:103: td= p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_pm_FunctionDecl2894);
+ td=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(td.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:326:123: (b= p_Block | k+= EXTERNAL )
+ var alt35=2;
+ var LA35_0 = this.input.LA(1);
+
+ if ( (LA35_0==LBRACKET) ) {
+ alt35=1;
+ }
+ else if ( (LA35_0==EXTERNAL) ) {
+ alt35=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 35, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt35) {
+ case 1 :
+ // XQueryParser.g:326:124: b= p_Block
+ this.pushFollow(XQueryParser.FOLLOW_p_Block_in_pm_FunctionDecl2900);
+ b=this.p_Block();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_Block.add(b.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:326:136: k+= EXTERNAL
+ k=this.match(this.input,EXTERNAL,XQueryParser.FOLLOW_EXTERNAL_in_pm_FunctionDecl2906); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EXTERNAL.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON73=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_FunctionDecl2909); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON73);
+
+
+
+ // AST REWRITE
+ // elements: b, qn, td, pl
+ // token labels:
+ // rule labels: qn, retval, b, pl, td
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_qn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token qn",qn!=null?qn.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_b=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token b",b!=null?b.tree:null);
+ var stream_pl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token pl",pl!=null?pl.tree:null);
+ var stream_td=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token td",td!=null?td.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 327:17: -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $b)? )
+ {
+ // XQueryParser.g:327:20: ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $b)? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(FunctionDecl, "FunctionDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_qn.nextTree());
+ // XQueryParser.g:327:39: ^( ParamList ( $pl)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(ParamList, "ParamList"), root_2);
+
+ // XQueryParser.g:327:51: ( $pl)?
+ if ( stream_pl.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_pl.nextTree());
+
+ }
+ stream_pl.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:327:57: ^( ReturnType ( $td)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(ReturnType, "ReturnType"), root_2);
+
+ // XQueryParser.g:327:70: ( $td)?
+ if ( stream_td.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_td.nextTree());
+
+ }
+ stream_td.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:327:76: ( $b)?
+ if ( stream_b.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_b.nextTree());
+
+ }
+ stream_b.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:328:13: k+= DECLARE p_PrivateOption p_FunctionType k+= FUNCTION qn= p_QName LPAREN (pl= p_ParamList )? RPAREN (td= p_TypeDeclaration )? (ee= p_EnclosedExpr | k+= EXTERNAL ) SEMICOLON
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_FunctionDecl2971); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PrivateOption_in_pm_FunctionDecl2973);
+ p_PrivateOption74=this.p_PrivateOption();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_PrivateOption.add(p_PrivateOption74.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_FunctionType_in_pm_FunctionDecl2975);
+ p_FunctionType75=this.p_FunctionType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_FunctionType.add(p_FunctionType75.getTree());
+ k=this.match(this.input,FUNCTION,XQueryParser.FOLLOW_FUNCTION_in_pm_FunctionDecl2979); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_FUNCTION.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_pm_FunctionDecl2983);
+ qn=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(qn.getTree());
+ LPAREN76=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_pm_FunctionDecl2985); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LPAREN.add(LPAREN76);
+
+ // XQueryParser.g:328:87: (pl= p_ParamList )?
+ var alt36=2;
+ var LA36_0 = this.input.LA(1);
+
+ if ( (LA36_0==DOLLAR) ) {
+ alt36=1;
+ }
+ switch (alt36) {
+ case 1 :
+ // XQueryParser.g:328:87: pl= p_ParamList
+ this.pushFollow(XQueryParser.FOLLOW_p_ParamList_in_pm_FunctionDecl2989);
+ pl=this.p_ParamList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ParamList.add(pl.getTree());
+
+
+ break;
+
+ }
+
+ RPAREN77=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_pm_FunctionDecl2992); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RPAREN.add(RPAREN77);
+
+ // XQueryParser.g:328:110: (td= p_TypeDeclaration )?
+ var alt37=2;
+ var LA37_0 = this.input.LA(1);
+
+ if ( (LA37_0==AS) ) {
+ alt37=1;
+ }
+ switch (alt37) {
+ case 1 :
+ // XQueryParser.g:328:110: td= p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_pm_FunctionDecl2996);
+ td=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(td.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:328:130: (ee= p_EnclosedExpr | k+= EXTERNAL )
+ var alt38=2;
+ var LA38_0 = this.input.LA(1);
+
+ if ( (LA38_0==LBRACKET) ) {
+ alt38=1;
+ }
+ else if ( (LA38_0==EXTERNAL) ) {
+ alt38=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 38, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt38) {
+ case 1 :
+ // XQueryParser.g:328:131: ee= p_EnclosedExpr
+ this.pushFollow(XQueryParser.FOLLOW_p_EnclosedExpr_in_pm_FunctionDecl3002);
+ ee=this.p_EnclosedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_EnclosedExpr.add(ee.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:328:151: k+= EXTERNAL
+ k=this.match(this.input,EXTERNAL,XQueryParser.FOLLOW_EXTERNAL_in_pm_FunctionDecl3008); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EXTERNAL.add(k);
+
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON78=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_FunctionDecl3011); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON78);
+
+
+
+ // AST REWRITE
+ // elements: qn, td, ee, pl
+ // token labels:
+ // rule labels: qn, retval, ee, pl, td
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_qn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token qn",qn!=null?qn.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_ee=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token ee",ee!=null?ee.tree:null);
+ var stream_pl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token pl",pl!=null?pl.tree:null);
+ var stream_td=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token td",td!=null?td.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 329:17: -> ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $ee)? )
+ {
+ // XQueryParser.g:329:20: ^( FunctionDecl $qn ^( ParamList ( $pl)? ) ^( ReturnType ( $td)? ) ( $ee)? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(FunctionDecl, "FunctionDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_qn.nextTree());
+ // XQueryParser.g:329:39: ^( ParamList ( $pl)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(ParamList, "ParamList"), root_2);
+
+ // XQueryParser.g:329:51: ( $pl)?
+ if ( stream_pl.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_pl.nextTree());
+
+ }
+ stream_pl.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:329:57: ^( ReturnType ( $td)? )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(ReturnType, "ReturnType"), root_2);
+
+ // XQueryParser.g:329:70: ( $td)?
+ if ( stream_td.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_td.nextTree());
+
+ }
+ stream_td.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:329:76: ( $ee)?
+ if ( stream_ee.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_ee.nextTree());
+
+ }
+ stream_ee.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FunctionType_return: (function() {
+ XQueryParser.p_FunctionType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FunctionType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:336:1: p_FunctionType : ({...}? =>ku= UPDATING | {...}? =>ks= SIMPLE | );
+ // $ANTLR start "p_FunctionType"
+ p_FunctionType: function() {
+ var retval = new XQueryParser.p_FunctionType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ku = null;
+ var ks = null;
+
+ var ku_tree=null;
+ var ks_tree=null;
+
+ try {
+ // XQueryParser.g:337:9: ({...}? =>ku= UPDATING | {...}? =>ks= SIMPLE | )
+ var alt40=3;
+ var LA40_0 = this.input.LA(1);
+
+ if ( (LA40_0==UPDATING) && ((true))) {
+ alt40=1;
+ }
+ else if ( (LA40_0==SIMPLE) && ((true))) {
+ alt40=2;
+ }
+ else if ( (LA40_0==FUNCTION) ) {
+ alt40=3;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 40, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt40) {
+ case 1 :
+ // XQueryParser.g:337:11: {...}? =>ku= UPDATING
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_FunctionType", "true");
+ }
+ ku=this.match(this.input,UPDATING,XQueryParser.FOLLOW_UPDATING_in_p_FunctionType3091); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ku_tree = this.adaptor.create(ku);
+ this.adaptor.addChild(root_0, ku_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:338:11: {...}? =>ks= SIMPLE
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_FunctionType", "true");
+ }
+ ks=this.match(this.input,SIMPLE,XQueryParser.FOLLOW_SIMPLE_in_p_FunctionType3108); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ks_tree = this.adaptor.create(ks);
+ this.adaptor.addChild(root_0, ks_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:340:9:
+ root_0 = this.adaptor.nil();
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PrivateOption_return: (function() {
+ XQueryParser.p_PrivateOption_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PrivateOption_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:342:1: p_PrivateOption : ({...}? =>kv= PRIVATE | );
+ // $ANTLR start "p_PrivateOption"
+ p_PrivateOption: function() {
+ var retval = new XQueryParser.p_PrivateOption_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kv = null;
+
+ var kv_tree=null;
+
+ try {
+ // XQueryParser.g:343:9: ({...}? =>kv= PRIVATE | )
+ var alt41=2;
+ var LA41_0 = this.input.LA(1);
+
+ if ( (LA41_0==PRIVATE) && ((false))) {
+ alt41=1;
+ }
+ else if ( (LA41_0==CONSTANT) && ((true))) {
+ alt41=2;
+ }
+ else if ( (LA41_0==VARIABLE) ) {
+ alt41=2;
+ }
+ else if ( (LA41_0==UPDATING||LA41_0==SIMPLE) && ((true))) {
+ alt41=2;
+ }
+ else if ( (LA41_0==FUNCTION) ) {
+ alt41=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 41, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt41) {
+ case 1 :
+ // XQueryParser.g:343:11: {...}? =>kv= PRIVATE
+ root_0 = this.adaptor.nil();
+
+ if ( !((false)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_PrivateOption", "false");
+ }
+ kv=this.match(this.input,PRIVATE,XQueryParser.FOLLOW_PRIVATE_in_p_PrivateOption3150); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kv_tree = this.adaptor.create(kv);
+ this.adaptor.addChild(root_0, kv_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:345:9:
+ root_0 = this.adaptor.nil();
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ParamList_return: (function() {
+ XQueryParser.p_ParamList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ParamList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:351:1: p_ParamList : p+= p_Param ( COMMA p+= p_Param )* -> ( $p)+ ;
+ // $ANTLR start "p_ParamList"
+ p_ParamList: function() {
+ var retval = new XQueryParser.p_ParamList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA79 = null;
+ var list_p=null;
+ var p = null;
+ var COMMA79_tree=null;
+ var stream_COMMA=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token COMMA");
+ var stream_p_Param=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_Param");
+ try {
+ // XQueryParser.g:352:9: (p+= p_Param ( COMMA p+= p_Param )* -> ( $p)+ )
+ // XQueryParser.g:352:11: p+= p_Param ( COMMA p+= p_Param )*
+ this.pushFollow(XQueryParser.FOLLOW_p_Param_in_p_ParamList3193);
+ p=this.p_Param();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_Param.add(p.getTree());
+ if (org.antlr.lang.isNull(list_p)) list_p = [];
+ list_p.push(p.getTree());
+
+ // XQueryParser.g:352:22: ( COMMA p+= p_Param )*
+ loop42:
+ do {
+ var alt42=2;
+ var LA42_0 = this.input.LA(1);
+
+ if ( (LA42_0==COMMA) ) {
+ alt42=1;
+ }
+
+
+ switch (alt42) {
+ case 1 :
+ // XQueryParser.g:352:23: COMMA p+= p_Param
+ COMMA79=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_ParamList3196); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_COMMA.add(COMMA79);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_Param_in_p_ParamList3200);
+ p=this.p_Param();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_Param.add(p.getTree());
+ if (org.antlr.lang.isNull(list_p)) list_p = [];
+ list_p.push(p.getTree());
+
+
+
+ break;
+
+ default :
+ break loop42;
+ }
+ } while (true);
+
+
+
+ // AST REWRITE
+ // elements: p
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels: p
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_p=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token p",list_p);
+ root_0 = this.adaptor.nil();
+ // 353:17: -> ( $p)+
+ {
+ if ( !(stream_p.hasNext()) ) {
+ throw new org.antlr.runtime.tree.RewriteEarlyExitException();
+ }
+ while ( stream_p.hasNext() ) {
+ this.adaptor.addChild(root_0, stream_p.nextTree());
+
+ }
+ stream_p.reset();
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Param_return: (function() {
+ XQueryParser.p_Param_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Param_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:357:1: p_Param : DOLLAR qn= p_QName (td= p_TypeDeclaration )? -> ^( Param $qn ( $td)? ) ;
+ // $ANTLR start "p_Param"
+ p_Param: function() {
+ var retval = new XQueryParser.p_Param_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR80 = null;
+ var qn = null;
+ var td = null;
+
+ var DOLLAR80_tree=null;
+ var stream_DOLLAR=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DOLLAR");
+ var stream_p_TypeDeclaration=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_TypeDeclaration");
+ var stream_p_QName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QName");
+ try {
+ // XQueryParser.g:358:9: ( DOLLAR qn= p_QName (td= p_TypeDeclaration )? -> ^( Param $qn ( $td)? ) )
+ // XQueryParser.g:358:11: DOLLAR qn= p_QName (td= p_TypeDeclaration )?
+ DOLLAR80=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_Param3258); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DOLLAR.add(DOLLAR80);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_Param3262);
+ qn=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(qn.getTree());
+ // XQueryParser.g:358:31: (td= p_TypeDeclaration )?
+ var alt43=2;
+ var LA43_0 = this.input.LA(1);
+
+ if ( (LA43_0==AS) ) {
+ alt43=1;
+ }
+ switch (alt43) {
+ case 1 :
+ // XQueryParser.g:358:31: td= p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_Param3266);
+ td=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(td.getTree());
+
+
+ break;
+
+ }
+
+
+
+ // AST REWRITE
+ // elements: qn, td
+ // token labels:
+ // rule labels: qn, retval, td
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_qn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token qn",qn!=null?qn.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_td=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token td",td!=null?td.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 359:17: -> ^( Param $qn ( $td)? )
+ {
+ // XQueryParser.g:359:20: ^( Param $qn ( $td)? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(Param, "Param"), root_1);
+
+ this.adaptor.addChild(root_1, stream_qn.nextTree());
+ // XQueryParser.g:359:32: ( $td)?
+ if ( stream_td.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_td.nextTree());
+
+ }
+ stream_td.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_EnclosedExpr_return: (function() {
+ XQueryParser.p_EnclosedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_EnclosedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:363:1: p_EnclosedExpr : LBRACKET pm_Expr RBRACKET -> ^( EnclosedExpr pm_Expr ) ;
+ // $ANTLR start "p_EnclosedExpr"
+ p_EnclosedExpr: function() {
+ var retval = new XQueryParser.p_EnclosedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LBRACKET81 = null;
+ var RBRACKET83 = null;
+ var pm_Expr82 = null;
+
+ var LBRACKET81_tree=null;
+ var RBRACKET83_tree=null;
+ var stream_LBRACKET=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token LBRACKET");
+ var stream_RBRACKET=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token RBRACKET");
+ var stream_pm_Expr=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_Expr");
+ try {
+ // XQueryParser.g:364:9: ( LBRACKET pm_Expr RBRACKET -> ^( EnclosedExpr pm_Expr ) )
+ // XQueryParser.g:364:11: LBRACKET pm_Expr RBRACKET
+ LBRACKET81=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_EnclosedExpr3322); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LBRACKET.add(LBRACKET81);
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_EnclosedExpr3324);
+ pm_Expr82=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_Expr.add(pm_Expr82.getTree());
+ RBRACKET83=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_EnclosedExpr3326); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RBRACKET.add(RBRACKET83);
+
+
+
+ // AST REWRITE
+ // elements: pm_Expr
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 365:17: -> ^( EnclosedExpr pm_Expr )
+ {
+ // XQueryParser.g:365:20: ^( EnclosedExpr pm_Expr )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(EnclosedExpr, "EnclosedExpr"), root_1);
+
+ this.adaptor.addChild(root_1, stream_pm_Expr.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_QueryBody_return: (function() {
+ XQueryParser.p_QueryBody_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_QueryBody_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:369:1: p_QueryBody : pm_Expr -> ^( QueryBody pm_Expr ) ;
+ // $ANTLR start "p_QueryBody"
+ p_QueryBody: function() {
+ var retval = new XQueryParser.p_QueryBody_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_Expr84 = null;
+
+ var stream_pm_Expr=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_Expr");
+ try {
+ // XQueryParser.g:370:9: ( pm_Expr -> ^( QueryBody pm_Expr ) )
+ // XQueryParser.g:370:11: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_QueryBody3376);
+ pm_Expr84=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_Expr.add(pm_Expr84.getTree());
+
+
+ // AST REWRITE
+ // elements: pm_Expr
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 371:17: -> ^( QueryBody pm_Expr )
+ {
+ // XQueryParser.g:371:20: ^( QueryBody pm_Expr )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(QueryBody, "QueryBody"), root_1);
+
+ this.adaptor.addChild(root_1, stream_pm_Expr.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_Expr_return: (function() {
+ XQueryParser.pm_Expr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_Expr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:376:1: pm_Expr : p_ConcatExpr ({...}? => ( SEMICOLON ( pm_ApplyExpr )* )? | ) ({...}? => ( SEMICOLON p_ConcatExpr )+ | ) ;
+ // $ANTLR start "pm_Expr"
+ pm_Expr: function() {
+ var retval = new XQueryParser.pm_Expr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON86 = null;
+ var SEMICOLON88 = null;
+ var p_ConcatExpr85 = null;
+ var pm_ApplyExpr87 = null;
+ var p_ConcatExpr89 = null;
+
+ var SEMICOLON86_tree=null;
+ var SEMICOLON88_tree=null;
+
+ try {
+ // XQueryParser.g:377:9: ( p_ConcatExpr ({...}? => ( SEMICOLON ( pm_ApplyExpr )* )? | ) ({...}? => ( SEMICOLON p_ConcatExpr )+ | ) )
+ // XQueryParser.g:377:11: p_ConcatExpr ({...}? => ( SEMICOLON ( pm_ApplyExpr )* )? | ) ({...}? => ( SEMICOLON p_ConcatExpr )+ | )
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ConcatExpr_in_pm_Expr3427);
+ p_ConcatExpr85=this.p_ConcatExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ConcatExpr85.getTree());
+ // XQueryParser.g:378:11: ({...}? => ( SEMICOLON ( pm_ApplyExpr )* )? | )
+ var alt46=2;
+ var LA46_0 = this.input.LA(1);
+
+ if ( (LA46_0==SEMICOLON) && ((((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||(true)||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||(false)||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))||((true)&&(false))))) {
+ var LA46_1 = this.input.LA(2);
+
+ if ( ((((true)&&(false))||(true))) ) {
+ alt46=1;
+ }
+ else if ( ((false)) ) {
+ alt46=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA46_0==RBRACKET) ) {
+ var LA46_2 = this.input.LA(2);
+
+ if ( ((true)) ) {
+ alt46=1;
+ }
+ else if ( (true) ) {
+ alt46=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 2, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA46_0==EOF) ) {
+ var LA46_3 = this.input.LA(2);
+
+ if ( ((true)) ) {
+ alt46=1;
+ }
+ else if ( (true) ) {
+ alt46=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 3, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA46_0==RPAREN) ) {
+ var LA46_4 = this.input.LA(2);
+
+ if ( ((true)) ) {
+ alt46=1;
+ }
+ else if ( (true) ) {
+ alt46=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 4, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA46_0==RSQUARE) ) {
+ var LA46_5 = this.input.LA(2);
+
+ if ( ((true)) ) {
+ alt46=1;
+ }
+ else if ( (true) ) {
+ alt46=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 5, this.input);
+
+ throw nvae;
+ }
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 46, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt46) {
+ case 1 :
+ // XQueryParser.g:378:12: {...}? => ( SEMICOLON ( pm_ApplyExpr )* )?
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pm_Expr", "true");
+ }
+ // XQueryParser.g:378:22: ( SEMICOLON ( pm_ApplyExpr )* )?
+ var alt45=2;
+ var LA45_0 = this.input.LA(1);
+
+ if ( (LA45_0==SEMICOLON) ) {
+ var LA45_1 = this.input.LA(2);
+
+ if ( (!(((false)))) ) {
+ alt45=1;
+ }
+ }
+ switch (alt45) {
+ case 1 :
+ // XQueryParser.g:378:23: SEMICOLON ( pm_ApplyExpr )*
+ SEMICOLON86=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_Expr3444); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON86_tree = this.adaptor.create(SEMICOLON86);
+ this.adaptor.addChild(root_0, SEMICOLON86_tree);
+ }
+ // XQueryParser.g:378:33: ( pm_ApplyExpr )*
+ loop44:
+ do {
+ var alt44=2;
+ var LA44_0 = this.input.LA(1);
+
+ if ( ((LA44_0>=ANCESTOR && LA44_0<=EXIT)||(LA44_0>=SEQUENTIAL && LA44_0<=MAINTAINED)||(LA44_0>=MUTABLE && LA44_0<=LPAREN)||LA44_0==DOLLAR||(LA44_0>=STAR && LA44_0<=SMALLER)||(LA44_0>=SLASH && LA44_0<=DOT_DOT)||LA44_0==ATTR_SIGN||(LA44_0>=APOS && LA44_0<=QUOT)||LA44_0==L_NCName||(LA44_0>=L_Pragma && LA44_0<=L_DoubleLiteral)||(LA44_0>=LETDOLLAR && LA44_0<=EXPLICITLY)) ) {
+ alt44=1;
+ }
+
+
+ switch (alt44) {
+ case 1 :
+ // XQueryParser.g:378:33: pm_ApplyExpr
+ this.pushFollow(XQueryParser.FOLLOW_pm_ApplyExpr_in_pm_Expr3446);
+ pm_ApplyExpr87=this.pm_ApplyExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_ApplyExpr87.getTree());
+
+
+ break;
+
+ default :
+ break loop44;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:378:64:
+
+ break;
+
+ }
+
+ // XQueryParser.g:379:11: ({...}? => ( SEMICOLON p_ConcatExpr )+ | )
+ var alt48=2;
+ var LA48_0 = this.input.LA(1);
+
+ if ( (LA48_0==SEMICOLON) && ((false))) {
+ alt48=1;
+ }
+ else if ( (LA48_0==EOF||LA48_0==RPAREN||LA48_0==RBRACKET||LA48_0==RSQUARE) ) {
+ alt48=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 48, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt48) {
+ case 1 :
+ // XQueryParser.g:379:12: {...}? => ( SEMICOLON p_ConcatExpr )+
+ if ( !((false)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "pm_Expr", "false");
+ }
+ // XQueryParser.g:379:23: ( SEMICOLON p_ConcatExpr )+
+ var cnt47=0;
+ loop47:
+ do {
+ var alt47=2;
+ var LA47_0 = this.input.LA(1);
+
+ if ( (LA47_0==SEMICOLON) ) {
+ alt47=1;
+ }
+
+
+ switch (alt47) {
+ case 1 :
+ // XQueryParser.g:379:24: SEMICOLON p_ConcatExpr
+ SEMICOLON88=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_Expr3471); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON88_tree = this.adaptor.create(SEMICOLON88);
+ this.adaptor.addChild(root_0, SEMICOLON88_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ConcatExpr_in_pm_Expr3473);
+ p_ConcatExpr89=this.p_ConcatExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ConcatExpr89.getTree());
+
+
+ break;
+
+ default :
+ if ( cnt47 >= 1 ) {
+ break loop47;
+ }
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var eee = new org.antlr.runtime.EarlyExitException(47, this.input);
+ throw eee;
+ }
+ cnt47++;
+ } while (true);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:379:64:
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ExprSingle_return: (function() {
+ XQueryParser.p_ExprSingle_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ExprSingle_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:384:1: p_ExprSingle : ( p_FLWORExpr | p_QuantifiedExpr | p_TypeswitchExpr | p_IfExpr | p_TryCatchExpr | {...}? => p_EvalExpr | {...}? => p_InsertExpr | {...}? => p_DeleteExpr | {...}? => p_RenameExpr | {...}? => p_ReplaceExpr | {...}? => p_TransformExpr | {...}? => p_BlockExpr | {...}? => p_AssignmentExpr | {...}? => p_ExitExpr | {...}? => p_WhileExpr | p_OrExpr );
+ // $ANTLR start "p_ExprSingle"
+ p_ExprSingle: function() {
+ var retval = new XQueryParser.p_ExprSingle_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_FLWORExpr90 = null;
+ var p_QuantifiedExpr91 = null;
+ var p_TypeswitchExpr92 = null;
+ var p_IfExpr93 = null;
+ var p_TryCatchExpr94 = null;
+ var p_EvalExpr95 = null;
+ var p_InsertExpr96 = null;
+ var p_DeleteExpr97 = null;
+ var p_RenameExpr98 = null;
+ var p_ReplaceExpr99 = null;
+ var p_TransformExpr100 = null;
+ var p_BlockExpr101 = null;
+ var p_AssignmentExpr102 = null;
+ var p_ExitExpr103 = null;
+ var p_WhileExpr104 = null;
+ var p_OrExpr105 = null;
+
+
+ try {
+ // XQueryParser.g:385:9: ( p_FLWORExpr | p_QuantifiedExpr | p_TypeswitchExpr | p_IfExpr | p_TryCatchExpr | {...}? => p_EvalExpr | {...}? => p_InsertExpr | {...}? => p_DeleteExpr | {...}? => p_RenameExpr | {...}? => p_ReplaceExpr | {...}? => p_TransformExpr | {...}? => p_BlockExpr | {...}? => p_AssignmentExpr | {...}? => p_ExitExpr | {...}? => p_WhileExpr | p_OrExpr )
+ var alt49=16;
+ alt49 = this.dfa49.predict(this.input);
+ switch (alt49) {
+ case 1 :
+ // XQueryParser.g:385:11: p_FLWORExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_FLWORExpr_in_p_ExprSingle3507);
+ p_FLWORExpr90=this.p_FLWORExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_FLWORExpr90.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:386:11: p_QuantifiedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QuantifiedExpr_in_p_ExprSingle3519);
+ p_QuantifiedExpr91=this.p_QuantifiedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QuantifiedExpr91.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:387:11: p_TypeswitchExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeswitchExpr_in_p_ExprSingle3531);
+ p_TypeswitchExpr92=this.p_TypeswitchExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeswitchExpr92.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:388:11: p_IfExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IfExpr_in_p_ExprSingle3543);
+ p_IfExpr93=this.p_IfExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IfExpr93.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:389:11: p_TryCatchExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TryCatchExpr_in_p_ExprSingle3555);
+ p_TryCatchExpr94=this.p_TryCatchExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TryCatchExpr94.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:390:11: {...}? => p_EvalExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_EvalExpr_in_p_ExprSingle3570);
+ p_EvalExpr95=this.p_EvalExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_EvalExpr95.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:391:11: {...}? => p_InsertExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_InsertExpr_in_p_ExprSingle3585);
+ p_InsertExpr96=this.p_InsertExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InsertExpr96.getTree());
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:392:11: {...}? => p_DeleteExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_DeleteExpr_in_p_ExprSingle3600);
+ p_DeleteExpr97=this.p_DeleteExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DeleteExpr97.getTree());
+
+
+ break;
+ case 9 :
+ // XQueryParser.g:393:11: {...}? => p_RenameExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_RenameExpr_in_p_ExprSingle3615);
+ p_RenameExpr98=this.p_RenameExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RenameExpr98.getTree());
+
+
+ break;
+ case 10 :
+ // XQueryParser.g:394:11: {...}? => p_ReplaceExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ReplaceExpr_in_p_ExprSingle3630);
+ p_ReplaceExpr99=this.p_ReplaceExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ReplaceExpr99.getTree());
+
+
+ break;
+ case 11 :
+ // XQueryParser.g:395:11: {...}? => p_TransformExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_TransformExpr_in_p_ExprSingle3645);
+ p_TransformExpr100=this.p_TransformExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TransformExpr100.getTree());
+
+
+ break;
+ case 12 :
+ // XQueryParser.g:396:11: {...}? => p_BlockExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_BlockExpr_in_p_ExprSingle3660);
+ p_BlockExpr101=this.p_BlockExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_BlockExpr101.getTree());
+
+
+ break;
+ case 13 :
+ // XQueryParser.g:397:11: {...}? => p_AssignmentExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AssignmentExpr_in_p_ExprSingle3675);
+ p_AssignmentExpr102=this.p_AssignmentExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AssignmentExpr102.getTree());
+
+
+ break;
+ case 14 :
+ // XQueryParser.g:398:11: {...}? => p_ExitExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExitExpr_in_p_ExprSingle3690);
+ p_ExitExpr103=this.p_ExitExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExitExpr103.getTree());
+
+
+ break;
+ case 15 :
+ // XQueryParser.g:399:11: {...}? => p_WhileExpr
+ root_0 = this.adaptor.nil();
+
+ if ( !((true)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ExprSingle", "true");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_WhileExpr_in_p_ExprSingle3705);
+ p_WhileExpr104=this.p_WhileExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WhileExpr104.getTree());
+
+
+ break;
+ case 16 :
+ // XQueryParser.g:400:11: p_OrExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_OrExpr_in_p_ExprSingle3717);
+ p_OrExpr105=this.p_OrExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrExpr105.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FLWORExpr_return: (function() {
+ XQueryParser.p_FLWORExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FLWORExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:404:1: p_FLWORExpr : p_InitialClause ( p_IntermediateClause )* p_ReturnClause ;
+ // $ANTLR start "p_FLWORExpr"
+ p_FLWORExpr: function() {
+ var retval = new XQueryParser.p_FLWORExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_InitialClause106 = null;
+ var p_IntermediateClause107 = null;
+ var p_ReturnClause108 = null;
+
+
+ try {
+ // XQueryParser.g:405:9: ( p_InitialClause ( p_IntermediateClause )* p_ReturnClause )
+ // XQueryParser.g:405:11: p_InitialClause ( p_IntermediateClause )* p_ReturnClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_InitialClause_in_p_FLWORExpr3743);
+ p_InitialClause106=this.p_InitialClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InitialClause106.getTree());
+ // XQueryParser.g:405:27: ( p_IntermediateClause )*
+ loop50:
+ do {
+ var alt50=2;
+ var LA50_0 = this.input.LA(1);
+
+ if ( (LA50_0==FOR||LA50_0==ORDER||LA50_0==STABLE||LA50_0==WHERE||LA50_0==COUNT||LA50_0==GROUP||LA50_0==LETDOLLAR) ) {
+ alt50=1;
+ }
+
+
+ switch (alt50) {
+ case 1 :
+ // XQueryParser.g:405:27: p_IntermediateClause
+ this.pushFollow(XQueryParser.FOLLOW_p_IntermediateClause_in_p_FLWORExpr3745);
+ p_IntermediateClause107=this.p_IntermediateClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IntermediateClause107.getTree());
+
+
+ break;
+
+ default :
+ break loop50;
+ }
+ } while (true);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ReturnClause_in_p_FLWORExpr3748);
+ p_ReturnClause108=this.p_ReturnClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ReturnClause108.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_InitialClause_return: (function() {
+ XQueryParser.p_InitialClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_InitialClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:409:1: p_InitialClause : ( p_ForClause | p_LetClause | p_WindowClause );
+ // $ANTLR start "p_InitialClause"
+ p_InitialClause: function() {
+ var retval = new XQueryParser.p_InitialClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ForClause109 = null;
+ var p_LetClause110 = null;
+ var p_WindowClause111 = null;
+
+
+ try {
+ // XQueryParser.g:410:9: ( p_ForClause | p_LetClause | p_WindowClause )
+ var alt51=3;
+ var LA51_0 = this.input.LA(1);
+
+ if ( (LA51_0==FOR) ) {
+ var LA51_1 = this.input.LA(2);
+
+ if ( (LA51_1==DOLLAR) ) {
+ alt51=1;
+ }
+ else if ( (LA51_1==SLIDING||LA51_1==TUMBLING) ) {
+ alt51=3;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 51, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA51_0==LETDOLLAR) ) {
+ alt51=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 51, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt51) {
+ case 1 :
+ // XQueryParser.g:410:11: p_ForClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ForClause_in_p_InitialClause3774);
+ p_ForClause109=this.p_ForClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ForClause109.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:410:25: p_LetClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_LetClause_in_p_InitialClause3778);
+ p_LetClause110=this.p_LetClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_LetClause110.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:410:39: p_WindowClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowClause_in_p_InitialClause3782);
+ p_WindowClause111=this.p_WindowClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowClause111.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IntermediateClause_return: (function() {
+ XQueryParser.p_IntermediateClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IntermediateClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:414:1: p_IntermediateClause : ( p_InitialClause | p_WhereClause | p_GroupByClause | p_OrderByClause | p_CountClause );
+ // $ANTLR start "p_IntermediateClause"
+ p_IntermediateClause: function() {
+ var retval = new XQueryParser.p_IntermediateClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_InitialClause112 = null;
+ var p_WhereClause113 = null;
+ var p_GroupByClause114 = null;
+ var p_OrderByClause115 = null;
+ var p_CountClause116 = null;
+
+
+ try {
+ // XQueryParser.g:415:9: ( p_InitialClause | p_WhereClause | p_GroupByClause | p_OrderByClause | p_CountClause )
+ var alt52=5;
+ switch ( this.input.LA(1) ) {
+ case FOR:
+ case LETDOLLAR:
+ alt52=1;
+ break;
+ case WHERE:
+ alt52=2;
+ break;
+ case GROUP:
+ alt52=3;
+ break;
+ case ORDER:
+ case STABLE:
+ alt52=4;
+ break;
+ case COUNT:
+ alt52=5;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 52, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt52) {
+ case 1 :
+ // XQueryParser.g:415:11: p_InitialClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_InitialClause_in_p_IntermediateClause3808);
+ p_InitialClause112=this.p_InitialClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InitialClause112.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:415:29: p_WhereClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_WhereClause_in_p_IntermediateClause3812);
+ p_WhereClause113=this.p_WhereClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WhereClause113.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:415:45: p_GroupByClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_GroupByClause_in_p_IntermediateClause3816);
+ p_GroupByClause114=this.p_GroupByClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_GroupByClause114.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:415:63: p_OrderByClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderByClause_in_p_IntermediateClause3820);
+ p_OrderByClause115=this.p_OrderByClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderByClause115.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:415:81: p_CountClause
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CountClause_in_p_IntermediateClause3824);
+ p_CountClause116=this.p_CountClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CountClause116.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ForClause_return: (function() {
+ XQueryParser.p_ForClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ForClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:419:1: p_ForClause : k+= FOR DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle )* ;
+ // $ANTLR start "p_ForClause"
+ p_ForClause: function() {
+ var retval = new XQueryParser.p_ForClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR117 = null;
+ var COMMA122 = null;
+ var DOLLAR123 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName118 = null;
+ var p_TypeDeclaration119 = null;
+ var p_PositionalVar120 = null;
+ var p_ExprSingle121 = null;
+ var p_VarName124 = null;
+ var p_TypeDeclaration125 = null;
+ var p_PositionalVar126 = null;
+ var p_ExprSingle127 = null;
+
+ var DOLLAR117_tree=null;
+ var COMMA122_tree=null;
+ var DOLLAR123_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:420:9: (k+= FOR DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle )* )
+ // XQueryParser.g:420:11: k+= FOR DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle )*
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,FOR,XQueryParser.FOLLOW_FOR_in_p_ForClause3852); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR117=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ForClause3854); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR117_tree = this.adaptor.create(DOLLAR117);
+ this.adaptor.addChild(root_0, DOLLAR117_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_ForClause3856);
+ p_VarName118=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName118.getTree());
+ // XQueryParser.g:420:35: ( p_TypeDeclaration )?
+ var alt53=2;
+ var LA53_0 = this.input.LA(1);
+
+ if ( (LA53_0==AS) ) {
+ alt53=1;
+ }
+ switch (alt53) {
+ case 1 :
+ // XQueryParser.g:420:35: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_ForClause3858);
+ p_TypeDeclaration119=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration119.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:420:54: ( p_PositionalVar )?
+ var alt54=2;
+ var LA54_0 = this.input.LA(1);
+
+ if ( (LA54_0==AT) ) {
+ alt54=1;
+ }
+ switch (alt54) {
+ case 1 :
+ // XQueryParser.g:420:54: p_PositionalVar
+ this.pushFollow(XQueryParser.FOLLOW_p_PositionalVar_in_p_ForClause3861);
+ p_PositionalVar120=this.p_PositionalVar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PositionalVar120.getTree());
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_ForClause3866); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ForClause3868);
+ p_ExprSingle121=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle121.getTree());
+ // XQueryParser.g:420:90: ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle )*
+ loop57:
+ do {
+ var alt57=2;
+ var LA57_0 = this.input.LA(1);
+
+ if ( (LA57_0==COMMA) ) {
+ alt57=1;
+ }
+
+
+ switch (alt57) {
+ case 1 :
+ // XQueryParser.g:420:91: COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( p_PositionalVar )? k+= IN p_ExprSingle
+ COMMA122=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_ForClause3871); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA122_tree = this.adaptor.create(COMMA122);
+ this.adaptor.addChild(root_0, COMMA122_tree);
+ }
+ DOLLAR123=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ForClause3873); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR123_tree = this.adaptor.create(DOLLAR123);
+ this.adaptor.addChild(root_0, DOLLAR123_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_ForClause3875);
+ p_VarName124=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName124.getTree());
+ // XQueryParser.g:420:114: ( p_TypeDeclaration )?
+ var alt55=2;
+ var LA55_0 = this.input.LA(1);
+
+ if ( (LA55_0==AS) ) {
+ alt55=1;
+ }
+ switch (alt55) {
+ case 1 :
+ // XQueryParser.g:420:114: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_ForClause3877);
+ p_TypeDeclaration125=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration125.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:420:133: ( p_PositionalVar )?
+ var alt56=2;
+ var LA56_0 = this.input.LA(1);
+
+ if ( (LA56_0==AT) ) {
+ alt56=1;
+ }
+ switch (alt56) {
+ case 1 :
+ // XQueryParser.g:420:133: p_PositionalVar
+ this.pushFollow(XQueryParser.FOLLOW_p_PositionalVar_in_p_ForClause3880);
+ p_PositionalVar126=this.p_PositionalVar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PositionalVar126.getTree());
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_ForClause3885); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ForClause3887);
+ p_ExprSingle127=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle127.getTree());
+
+
+ break;
+
+ default :
+ break loop57;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PositionalVar_return: (function() {
+ XQueryParser.p_PositionalVar_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PositionalVar_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:424:1: p_PositionalVar : ka= AT DOLLAR p_VarName ;
+ // $ANTLR start "p_PositionalVar"
+ p_PositionalVar: function() {
+ var retval = new XQueryParser.p_PositionalVar_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ka = null;
+ var DOLLAR128 = null;
+ var p_VarName129 = null;
+
+ var ka_tree=null;
+ var DOLLAR128_tree=null;
+
+ try {
+ // XQueryParser.g:425:9: (ka= AT DOLLAR p_VarName )
+ // XQueryParser.g:425:11: ka= AT DOLLAR p_VarName
+ root_0 = this.adaptor.nil();
+
+ ka=this.match(this.input,AT,XQueryParser.FOLLOW_AT_in_p_PositionalVar3918); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ DOLLAR128=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_PositionalVar3920); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR128_tree = this.adaptor.create(DOLLAR128);
+ this.adaptor.addChild(root_0, DOLLAR128_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_PositionalVar3922);
+ p_VarName129=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName129.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_LetClause_return: (function() {
+ XQueryParser.p_LetClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_LetClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:429:1: p_LetClause : kl= LETDOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle )* ;
+ // $ANTLR start "p_LetClause"
+ p_LetClause: function() {
+ var retval = new XQueryParser.p_LetClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kl = null;
+ var BIND132 = null;
+ var COMMA134 = null;
+ var DOLLAR135 = null;
+ var BIND138 = null;
+ var p_VarName130 = null;
+ var p_TypeDeclaration131 = null;
+ var p_ExprSingle133 = null;
+ var p_VarName136 = null;
+ var p_TypeDeclaration137 = null;
+ var p_ExprSingle139 = null;
+
+ var kl_tree=null;
+ var BIND132_tree=null;
+ var COMMA134_tree=null;
+ var DOLLAR135_tree=null;
+ var BIND138_tree=null;
+
+ try {
+ // XQueryParser.g:430:9: (kl= LETDOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle )* )
+ // XQueryParser.g:430:11: kl= LETDOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle )*
+ root_0 = this.adaptor.nil();
+
+ kl=this.match(this.input,LETDOLLAR,XQueryParser.FOLLOW_LETDOLLAR_in_p_LetClause3950); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kl_tree = this.adaptor.create(kl);
+ this.adaptor.addChild(root_0, kl_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_LetClause3952);
+ p_VarName130=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName130.getTree());
+ // XQueryParser.g:430:34: ( p_TypeDeclaration )?
+ var alt58=2;
+ var LA58_0 = this.input.LA(1);
+
+ if ( (LA58_0==AS) ) {
+ alt58=1;
+ }
+ switch (alt58) {
+ case 1 :
+ // XQueryParser.g:430:34: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_LetClause3954);
+ p_TypeDeclaration131=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration131.getTree());
+
+
+ break;
+
+ }
+
+ BIND132=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_p_LetClause3957); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND132_tree = this.adaptor.create(BIND132);
+ this.adaptor.addChild(root_0, BIND132_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_LetClause3959);
+ p_ExprSingle133=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle133.getTree());
+ // XQueryParser.g:430:71: ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle )*
+ loop60:
+ do {
+ var alt60=2;
+ var LA60_0 = this.input.LA(1);
+
+ if ( (LA60_0==COMMA) ) {
+ alt60=1;
+ }
+
+
+ switch (alt60) {
+ case 1 :
+ // XQueryParser.g:430:72: COMMA DOLLAR p_VarName ( p_TypeDeclaration )? BIND p_ExprSingle
+ COMMA134=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_LetClause3962); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA134_tree = this.adaptor.create(COMMA134);
+ this.adaptor.addChild(root_0, COMMA134_tree);
+ }
+ DOLLAR135=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_LetClause3964); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR135_tree = this.adaptor.create(DOLLAR135);
+ this.adaptor.addChild(root_0, DOLLAR135_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_LetClause3966);
+ p_VarName136=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName136.getTree());
+ // XQueryParser.g:430:95: ( p_TypeDeclaration )?
+ var alt59=2;
+ var LA59_0 = this.input.LA(1);
+
+ if ( (LA59_0==AS) ) {
+ alt59=1;
+ }
+ switch (alt59) {
+ case 1 :
+ // XQueryParser.g:430:95: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_LetClause3968);
+ p_TypeDeclaration137=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration137.getTree());
+
+
+ break;
+
+ }
+
+ BIND138=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_p_LetClause3971); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND138_tree = this.adaptor.create(BIND138);
+ this.adaptor.addChild(root_0, BIND138_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_LetClause3973);
+ p_ExprSingle139=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle139.getTree());
+
+
+ break;
+
+ default :
+ break loop60;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WindowClause_return: (function() {
+ XQueryParser.p_WindowClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WindowClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:434:1: p_WindowClause : kf= FOR ( p_TumblingWindowClause | p_SlidingWindowClause ) ;
+ // $ANTLR start "p_WindowClause"
+ p_WindowClause: function() {
+ var retval = new XQueryParser.p_WindowClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kf = null;
+ var p_TumblingWindowClause140 = null;
+ var p_SlidingWindowClause141 = null;
+
+ var kf_tree=null;
+
+ try {
+ // XQueryParser.g:435:9: (kf= FOR ( p_TumblingWindowClause | p_SlidingWindowClause ) )
+ // XQueryParser.g:435:11: kf= FOR ( p_TumblingWindowClause | p_SlidingWindowClause )
+ root_0 = this.adaptor.nil();
+
+ kf=this.match(this.input,FOR,XQueryParser.FOLLOW_FOR_in_p_WindowClause4003); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kf_tree = this.adaptor.create(kf);
+ this.adaptor.addChild(root_0, kf_tree);
+ }
+ // XQueryParser.g:435:18: ( p_TumblingWindowClause | p_SlidingWindowClause )
+ var alt61=2;
+ var LA61_0 = this.input.LA(1);
+
+ if ( (LA61_0==TUMBLING) ) {
+ alt61=1;
+ }
+ else if ( (LA61_0==SLIDING) ) {
+ alt61=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 61, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt61) {
+ case 1 :
+ // XQueryParser.g:435:19: p_TumblingWindowClause
+ this.pushFollow(XQueryParser.FOLLOW_p_TumblingWindowClause_in_p_WindowClause4006);
+ p_TumblingWindowClause140=this.p_TumblingWindowClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TumblingWindowClause140.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:435:44: p_SlidingWindowClause
+ this.pushFollow(XQueryParser.FOLLOW_p_SlidingWindowClause_in_p_WindowClause4010);
+ p_SlidingWindowClause141=this.p_SlidingWindowClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SlidingWindowClause141.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TumblingWindowClause_return: (function() {
+ XQueryParser.p_TumblingWindowClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TumblingWindowClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:439:1: p_TumblingWindowClause : k+= TUMBLING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )? ;
+ // $ANTLR start "p_TumblingWindowClause"
+ p_TumblingWindowClause: function() {
+ var retval = new XQueryParser.p_TumblingWindowClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR142 = null;
+ var IN145 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName143 = null;
+ var p_TypeDeclaration144 = null;
+ var p_ExprSingle146 = null;
+ var p_WindowStartCondition147 = null;
+ var p_WindowEndCondition148 = null;
+
+ var DOLLAR142_tree=null;
+ var IN145_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:440:9: (k+= TUMBLING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )? )
+ // XQueryParser.g:440:11: k+= TUMBLING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )?
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,TUMBLING,XQueryParser.FOLLOW_TUMBLING_in_p_TumblingWindowClause4047); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,WINDOW,XQueryParser.FOLLOW_WINDOW_in_p_TumblingWindowClause4051); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR142=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_TumblingWindowClause4053); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR142_tree = this.adaptor.create(DOLLAR142);
+ this.adaptor.addChild(root_0, DOLLAR142_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_TumblingWindowClause4055);
+ p_VarName143=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName143.getTree());
+ // XQueryParser.g:440:50: ( p_TypeDeclaration )?
+ var alt62=2;
+ var LA62_0 = this.input.LA(1);
+
+ if ( (LA62_0==AS) ) {
+ alt62=1;
+ }
+ switch (alt62) {
+ case 1 :
+ // XQueryParser.g:440:50: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_TumblingWindowClause4057);
+ p_TypeDeclaration144=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration144.getTree());
+
+
+ break;
+
+ }
+
+ IN145=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_TumblingWindowClause4060); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ IN145_tree = this.adaptor.create(IN145);
+ this.adaptor.addChild(root_0, IN145_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TumblingWindowClause4062);
+ p_ExprSingle146=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle146.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowStartCondition_in_p_TumblingWindowClause4064);
+ p_WindowStartCondition147=this.p_WindowStartCondition();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowStartCondition147.getTree());
+ // XQueryParser.g:440:108: ( p_WindowEndCondition )?
+ var alt63=2;
+ var LA63_0 = this.input.LA(1);
+
+ if ( (LA63_0==END||LA63_0==ONLY) ) {
+ alt63=1;
+ }
+ switch (alt63) {
+ case 1 :
+ // XQueryParser.g:440:108: p_WindowEndCondition
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowEndCondition_in_p_TumblingWindowClause4066);
+ p_WindowEndCondition148=this.p_WindowEndCondition();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowEndCondition148.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SlidingWindowClause_return: (function() {
+ XQueryParser.p_SlidingWindowClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SlidingWindowClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:444:1: p_SlidingWindowClause : k+= SLIDING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )? ;
+ // $ANTLR start "p_SlidingWindowClause"
+ p_SlidingWindowClause: function() {
+ var retval = new XQueryParser.p_SlidingWindowClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR149 = null;
+ var IN152 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName150 = null;
+ var p_TypeDeclaration151 = null;
+ var p_ExprSingle153 = null;
+ var p_WindowStartCondition154 = null;
+ var p_WindowEndCondition155 = null;
+
+ var DOLLAR149_tree=null;
+ var IN152_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:445:9: (k+= SLIDING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )? )
+ // XQueryParser.g:445:11: k+= SLIDING k+= WINDOW DOLLAR p_VarName ( p_TypeDeclaration )? IN p_ExprSingle p_WindowStartCondition ( p_WindowEndCondition )?
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,SLIDING,XQueryParser.FOLLOW_SLIDING_in_p_SlidingWindowClause4096); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,WINDOW,XQueryParser.FOLLOW_WINDOW_in_p_SlidingWindowClause4100); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR149=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_SlidingWindowClause4102); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR149_tree = this.adaptor.create(DOLLAR149);
+ this.adaptor.addChild(root_0, DOLLAR149_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_SlidingWindowClause4104);
+ p_VarName150=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName150.getTree());
+ // XQueryParser.g:445:49: ( p_TypeDeclaration )?
+ var alt64=2;
+ var LA64_0 = this.input.LA(1);
+
+ if ( (LA64_0==AS) ) {
+ alt64=1;
+ }
+ switch (alt64) {
+ case 1 :
+ // XQueryParser.g:445:49: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_SlidingWindowClause4106);
+ p_TypeDeclaration151=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration151.getTree());
+
+
+ break;
+
+ }
+
+ IN152=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_SlidingWindowClause4109); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ IN152_tree = this.adaptor.create(IN152);
+ this.adaptor.addChild(root_0, IN152_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_SlidingWindowClause4111);
+ p_ExprSingle153=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle153.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowStartCondition_in_p_SlidingWindowClause4113);
+ p_WindowStartCondition154=this.p_WindowStartCondition();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowStartCondition154.getTree());
+ // XQueryParser.g:445:107: ( p_WindowEndCondition )?
+ var alt65=2;
+ var LA65_0 = this.input.LA(1);
+
+ if ( (LA65_0==END||LA65_0==ONLY) ) {
+ alt65=1;
+ }
+ switch (alt65) {
+ case 1 :
+ // XQueryParser.g:445:107: p_WindowEndCondition
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowEndCondition_in_p_SlidingWindowClause4115);
+ p_WindowEndCondition155=this.p_WindowEndCondition();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowEndCondition155.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WindowStartCondition_return: (function() {
+ XQueryParser.p_WindowStartCondition_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WindowStartCondition_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:449:1: p_WindowStartCondition : k+= START p_WindowVars k+= WHEN p_ExprSingle ;
+ // $ANTLR start "p_WindowStartCondition"
+ p_WindowStartCondition: function() {
+ var retval = new XQueryParser.p_WindowStartCondition_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_WindowVars156 = null;
+ var p_ExprSingle157 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:450:9: (k+= START p_WindowVars k+= WHEN p_ExprSingle )
+ // XQueryParser.g:450:11: k+= START p_WindowVars k+= WHEN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,START,XQueryParser.FOLLOW_START_in_p_WindowStartCondition4145); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowVars_in_p_WindowStartCondition4147);
+ p_WindowVars156=this.p_WindowVars();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowVars156.getTree());
+ k=this.match(this.input,WHEN,XQueryParser.FOLLOW_WHEN_in_p_WindowStartCondition4151); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_WindowStartCondition4153);
+ p_ExprSingle157=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle157.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WindowEndCondition_return: (function() {
+ XQueryParser.p_WindowEndCondition_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WindowEndCondition_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:454:1: p_WindowEndCondition : (k+= ONLY )? k+= END p_WindowVars k+= WHEN p_ExprSingle ;
+ // $ANTLR start "p_WindowEndCondition"
+ p_WindowEndCondition: function() {
+ var retval = new XQueryParser.p_WindowEndCondition_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_WindowVars158 = null;
+ var p_ExprSingle159 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:455:9: ( (k+= ONLY )? k+= END p_WindowVars k+= WHEN p_ExprSingle )
+ // XQueryParser.g:455:11: (k+= ONLY )? k+= END p_WindowVars k+= WHEN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:455:12: (k+= ONLY )?
+ var alt66=2;
+ var LA66_0 = this.input.LA(1);
+
+ if ( (LA66_0==ONLY) ) {
+ alt66=1;
+ }
+ switch (alt66) {
+ case 1 :
+ // XQueryParser.g:455:12: k+= ONLY
+ k=this.match(this.input,ONLY,XQueryParser.FOLLOW_ONLY_in_p_WindowEndCondition4182); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,END,XQueryParser.FOLLOW_END_in_p_WindowEndCondition4187); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_WindowVars_in_p_WindowEndCondition4189);
+ p_WindowVars158=this.p_WindowVars();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WindowVars158.getTree());
+ k=this.match(this.input,WHEN,XQueryParser.FOLLOW_WHEN_in_p_WindowEndCondition4193); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_WindowEndCondition4195);
+ p_ExprSingle159=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle159.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WindowVars_return: (function() {
+ XQueryParser.p_WindowVars_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WindowVars_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:459:1: p_WindowVars : ( DOLLAR p_QName )? ( p_PositionalVar )? (k+= PREVIOUS DOLLAR p_QName )? (k+= NEXT DOLLAR p_QName )? ;
+ // $ANTLR start "p_WindowVars"
+ p_WindowVars: function() {
+ var retval = new XQueryParser.p_WindowVars_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR160 = null;
+ var DOLLAR163 = null;
+ var DOLLAR165 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName161 = null;
+ var p_PositionalVar162 = null;
+ var p_QName164 = null;
+ var p_QName166 = null;
+
+ var DOLLAR160_tree=null;
+ var DOLLAR163_tree=null;
+ var DOLLAR165_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:460:9: ( ( DOLLAR p_QName )? ( p_PositionalVar )? (k+= PREVIOUS DOLLAR p_QName )? (k+= NEXT DOLLAR p_QName )? )
+ // XQueryParser.g:460:11: ( DOLLAR p_QName )? ( p_PositionalVar )? (k+= PREVIOUS DOLLAR p_QName )? (k+= NEXT DOLLAR p_QName )?
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:460:11: ( DOLLAR p_QName )?
+ var alt67=2;
+ var LA67_0 = this.input.LA(1);
+
+ if ( (LA67_0==DOLLAR) ) {
+ alt67=1;
+ }
+ switch (alt67) {
+ case 1 :
+ // XQueryParser.g:460:12: DOLLAR p_QName
+ DOLLAR160=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_WindowVars4223); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR160_tree = this.adaptor.create(DOLLAR160);
+ this.adaptor.addChild(root_0, DOLLAR160_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_WindowVars4225);
+ p_QName161=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName161.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:460:29: ( p_PositionalVar )?
+ var alt68=2;
+ var LA68_0 = this.input.LA(1);
+
+ if ( (LA68_0==AT) ) {
+ alt68=1;
+ }
+ switch (alt68) {
+ case 1 :
+ // XQueryParser.g:460:29: p_PositionalVar
+ this.pushFollow(XQueryParser.FOLLOW_p_PositionalVar_in_p_WindowVars4229);
+ p_PositionalVar162=this.p_PositionalVar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PositionalVar162.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:460:46: (k+= PREVIOUS DOLLAR p_QName )?
+ var alt69=2;
+ var LA69_0 = this.input.LA(1);
+
+ if ( (LA69_0==PREVIOUS) ) {
+ alt69=1;
+ }
+ switch (alt69) {
+ case 1 :
+ // XQueryParser.g:460:47: k+= PREVIOUS DOLLAR p_QName
+ k=this.match(this.input,PREVIOUS,XQueryParser.FOLLOW_PREVIOUS_in_p_WindowVars4235); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR163=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_WindowVars4237); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR163_tree = this.adaptor.create(DOLLAR163);
+ this.adaptor.addChild(root_0, DOLLAR163_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_WindowVars4239);
+ p_QName164=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName164.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:460:76: (k+= NEXT DOLLAR p_QName )?
+ var alt70=2;
+ var LA70_0 = this.input.LA(1);
+
+ if ( (LA70_0==NEXT) ) {
+ alt70=1;
+ }
+ switch (alt70) {
+ case 1 :
+ // XQueryParser.g:460:77: k+= NEXT DOLLAR p_QName
+ k=this.match(this.input,NEXT,XQueryParser.FOLLOW_NEXT_in_p_WindowVars4246); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR165=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_WindowVars4248); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR165_tree = this.adaptor.create(DOLLAR165);
+ this.adaptor.addChild(root_0, DOLLAR165_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_WindowVars4250);
+ p_QName166=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName166.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CountClause_return: (function() {
+ XQueryParser.p_CountClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CountClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:473:1: p_CountClause : kc+= COUNT DOLLAR p_VarName ;
+ // $ANTLR start "p_CountClause"
+ p_CountClause: function() {
+ var retval = new XQueryParser.p_CountClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR167 = null;
+ var kc = null;
+ var list_kc=null;
+ var p_VarName168 = null;
+
+ var DOLLAR167_tree=null;
+ var kc_tree=null;
+
+ try {
+ // XQueryParser.g:474:9: (kc+= COUNT DOLLAR p_VarName )
+ // XQueryParser.g:474:11: kc+= COUNT DOLLAR p_VarName
+ root_0 = this.adaptor.nil();
+
+ kc=this.match(this.input,COUNT,XQueryParser.FOLLOW_COUNT_in_p_CountClause4290); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ if (org.antlr.lang.isNull(list_kc)) list_kc = [];
+ list_kc.push(kc);
+
+ DOLLAR167=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_CountClause4292); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR167_tree = this.adaptor.create(DOLLAR167);
+ this.adaptor.addChild(root_0, DOLLAR167_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_CountClause4294);
+ p_VarName168=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName168.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WhereClause_return: (function() {
+ XQueryParser.p_WhereClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WhereClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:478:1: p_WhereClause : kw+= WHERE p_ExprSingle ;
+ // $ANTLR start "p_WhereClause"
+ p_WhereClause: function() {
+ var retval = new XQueryParser.p_WhereClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kw = null;
+ var list_kw=null;
+ var p_ExprSingle169 = null;
+
+ var kw_tree=null;
+
+ try {
+ // XQueryParser.g:479:9: (kw+= WHERE p_ExprSingle )
+ // XQueryParser.g:479:11: kw+= WHERE p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ kw=this.match(this.input,WHERE,XQueryParser.FOLLOW_WHERE_in_p_WhereClause4330); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kw_tree = this.adaptor.create(kw);
+ this.adaptor.addChild(root_0, kw_tree);
+ }
+ if (org.antlr.lang.isNull(list_kw)) list_kw = [];
+ list_kw.push(kw);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_WhereClause4332);
+ p_ExprSingle169=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle169.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_GroupByClause_return: (function() {
+ XQueryParser.p_GroupByClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_GroupByClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:483:1: p_GroupByClause : k+= GROUP k+= BY p_GroupingSpecList ;
+ // $ANTLR start "p_GroupByClause"
+ p_GroupByClause: function() {
+ var retval = new XQueryParser.p_GroupByClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_GroupingSpecList170 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:484:9: (k+= GROUP k+= BY p_GroupingSpecList )
+ // XQueryParser.g:484:13: k+= GROUP k+= BY p_GroupingSpecList
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,GROUP,XQueryParser.FOLLOW_GROUP_in_p_GroupByClause4362); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,BY,XQueryParser.FOLLOW_BY_in_p_GroupByClause4366); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_GroupingSpecList_in_p_GroupByClause4368);
+ p_GroupingSpecList170=this.p_GroupingSpecList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_GroupingSpecList170.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_GroupingSpecList_return: (function() {
+ XQueryParser.p_GroupingSpecList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_GroupingSpecList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:488:1: p_GroupingSpecList : p_GroupingSpec ( COMMA p_GroupingSpec )* ;
+ // $ANTLR start "p_GroupingSpecList"
+ p_GroupingSpecList: function() {
+ var retval = new XQueryParser.p_GroupingSpecList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA172 = null;
+ var p_GroupingSpec171 = null;
+ var p_GroupingSpec173 = null;
+
+ var COMMA172_tree=null;
+
+ try {
+ // XQueryParser.g:489:9: ( p_GroupingSpec ( COMMA p_GroupingSpec )* )
+ // XQueryParser.g:489:13: p_GroupingSpec ( COMMA p_GroupingSpec )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_GroupingSpec_in_p_GroupingSpecList4397);
+ p_GroupingSpec171=this.p_GroupingSpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_GroupingSpec171.getTree());
+ // XQueryParser.g:489:28: ( COMMA p_GroupingSpec )*
+ loop71:
+ do {
+ var alt71=2;
+ var LA71_0 = this.input.LA(1);
+
+ if ( (LA71_0==COMMA) ) {
+ alt71=1;
+ }
+
+
+ switch (alt71) {
+ case 1 :
+ // XQueryParser.g:489:29: COMMA p_GroupingSpec
+ COMMA172=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_GroupingSpecList4400); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA172_tree = this.adaptor.create(COMMA172);
+ this.adaptor.addChild(root_0, COMMA172_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_GroupingSpec_in_p_GroupingSpecList4402);
+ p_GroupingSpec173=this.p_GroupingSpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_GroupingSpec173.getTree());
+
+
+ break;
+
+ default :
+ break loop71;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_GroupingSpec_return: (function() {
+ XQueryParser.p_GroupingSpec_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_GroupingSpec_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:493:1: p_GroupingSpec : DOLLAR p_VarName (kc= COLLATION p_StringLiteral )? ;
+ // $ANTLR start "p_GroupingSpec"
+ p_GroupingSpec: function() {
+ var retval = new XQueryParser.p_GroupingSpec_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var DOLLAR174 = null;
+ var p_VarName175 = null;
+ var p_StringLiteral176 = null;
+
+ var kc_tree=null;
+ var DOLLAR174_tree=null;
+
+ try {
+ // XQueryParser.g:494:9: ( DOLLAR p_VarName (kc= COLLATION p_StringLiteral )? )
+ // XQueryParser.g:494:13: DOLLAR p_VarName (kc= COLLATION p_StringLiteral )?
+ root_0 = this.adaptor.nil();
+
+ DOLLAR174=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_GroupingSpec4432); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR174_tree = this.adaptor.create(DOLLAR174);
+ this.adaptor.addChild(root_0, DOLLAR174_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_GroupingSpec4434);
+ p_VarName175=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName175.getTree());
+ // XQueryParser.g:494:30: (kc= COLLATION p_StringLiteral )?
+ var alt72=2;
+ var LA72_0 = this.input.LA(1);
+
+ if ( (LA72_0==COLLATION) ) {
+ alt72=1;
+ }
+ switch (alt72) {
+ case 1 :
+ // XQueryParser.g:494:31: kc= COLLATION p_StringLiteral
+ kc=this.match(this.input,COLLATION,XQueryParser.FOLLOW_COLLATION_in_p_GroupingSpec4439); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_GroupingSpec4441);
+ p_StringLiteral176=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral176.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrderByClause_return: (function() {
+ XQueryParser.p_OrderByClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrderByClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:498:1: p_OrderByClause : ( (k+= ORDER k+= BY ) | (k+= STABLE k+= ORDER k+= BY ) ) p_OrderSpecList ;
+ // $ANTLR start "p_OrderByClause"
+ p_OrderByClause: function() {
+ var retval = new XQueryParser.p_OrderByClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_OrderSpecList177 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:499:9: ( ( (k+= ORDER k+= BY ) | (k+= STABLE k+= ORDER k+= BY ) ) p_OrderSpecList )
+ // XQueryParser.g:499:13: ( (k+= ORDER k+= BY ) | (k+= STABLE k+= ORDER k+= BY ) ) p_OrderSpecList
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:499:13: ( (k+= ORDER k+= BY ) | (k+= STABLE k+= ORDER k+= BY ) )
+ var alt73=2;
+ var LA73_0 = this.input.LA(1);
+
+ if ( (LA73_0==ORDER) ) {
+ alt73=1;
+ }
+ else if ( (LA73_0==STABLE) ) {
+ alt73=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 73, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt73) {
+ case 1 :
+ // XQueryParser.g:499:14: (k+= ORDER k+= BY )
+ // XQueryParser.g:499:14: (k+= ORDER k+= BY )
+ // XQueryParser.g:499:15: k+= ORDER k+= BY
+ k=this.match(this.input,ORDER,XQueryParser.FOLLOW_ORDER_in_p_OrderByClause4476); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,BY,XQueryParser.FOLLOW_BY_in_p_OrderByClause4480); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:499:33: (k+= STABLE k+= ORDER k+= BY )
+ // XQueryParser.g:499:33: (k+= STABLE k+= ORDER k+= BY )
+ // XQueryParser.g:499:34: k+= STABLE k+= ORDER k+= BY
+ k=this.match(this.input,STABLE,XQueryParser.FOLLOW_STABLE_in_p_OrderByClause4488); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,ORDER,XQueryParser.FOLLOW_ORDER_in_p_OrderByClause4492); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,BY,XQueryParser.FOLLOW_BY_in_p_OrderByClause4496); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderSpecList_in_p_OrderByClause4500);
+ p_OrderSpecList177=this.p_OrderSpecList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderSpecList177.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrderSpecList_return: (function() {
+ XQueryParser.p_OrderSpecList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrderSpecList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:503:1: p_OrderSpecList : p_OrderSpec ( COMMA p_OrderSpec )* ;
+ // $ANTLR start "p_OrderSpecList"
+ p_OrderSpecList: function() {
+ var retval = new XQueryParser.p_OrderSpecList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA179 = null;
+ var p_OrderSpec178 = null;
+ var p_OrderSpec180 = null;
+
+ var COMMA179_tree=null;
+
+ try {
+ // XQueryParser.g:504:9: ( p_OrderSpec ( COMMA p_OrderSpec )* )
+ // XQueryParser.g:504:13: p_OrderSpec ( COMMA p_OrderSpec )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderSpec_in_p_OrderSpecList4529);
+ p_OrderSpec178=this.p_OrderSpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderSpec178.getTree());
+ // XQueryParser.g:504:25: ( COMMA p_OrderSpec )*
+ loop74:
+ do {
+ var alt74=2;
+ var LA74_0 = this.input.LA(1);
+
+ if ( (LA74_0==COMMA) ) {
+ alt74=1;
+ }
+
+
+ switch (alt74) {
+ case 1 :
+ // XQueryParser.g:504:26: COMMA p_OrderSpec
+ COMMA179=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_OrderSpecList4532); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA179_tree = this.adaptor.create(COMMA179);
+ this.adaptor.addChild(root_0, COMMA179_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderSpec_in_p_OrderSpecList4534);
+ p_OrderSpec180=this.p_OrderSpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderSpec180.getTree());
+
+
+ break;
+
+ default :
+ break loop74;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrderSpec_return: (function() {
+ XQueryParser.p_OrderSpec_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrderSpec_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:508:1: p_OrderSpec : p_ExprSingle p_OrderModifier ;
+ // $ANTLR start "p_OrderSpec"
+ p_OrderSpec: function() {
+ var retval = new XQueryParser.p_OrderSpec_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ExprSingle181 = null;
+ var p_OrderModifier182 = null;
+
+
+ try {
+ // XQueryParser.g:509:9: ( p_ExprSingle p_OrderModifier )
+ // XQueryParser.g:509:13: p_ExprSingle p_OrderModifier
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_OrderSpec4564);
+ p_ExprSingle181=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle181.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderModifier_in_p_OrderSpec4566);
+ p_OrderModifier182=this.p_OrderModifier();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderModifier182.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrderModifier_return: (function() {
+ XQueryParser.p_OrderModifier_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrderModifier_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:513:1: p_OrderModifier : (ka= ASCENDING | k+= DESCENDING )? (k+= EMPTY (k+= GREATEST | k+= LEAST ) )? (k+= COLLATION p_StringLiteral )? ;
+ // $ANTLR start "p_OrderModifier"
+ p_OrderModifier: function() {
+ var retval = new XQueryParser.p_OrderModifier_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ka = null;
+ var k = null;
+ var list_k=null;
+ var p_StringLiteral183 = null;
+
+ var ka_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:514:9: ( (ka= ASCENDING | k+= DESCENDING )? (k+= EMPTY (k+= GREATEST | k+= LEAST ) )? (k+= COLLATION p_StringLiteral )? )
+ // XQueryParser.g:514:11: (ka= ASCENDING | k+= DESCENDING )? (k+= EMPTY (k+= GREATEST | k+= LEAST ) )? (k+= COLLATION p_StringLiteral )?
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:514:11: (ka= ASCENDING | k+= DESCENDING )?
+ var alt75=3;
+ var LA75_0 = this.input.LA(1);
+
+ if ( (LA75_0==ASCENDING) ) {
+ alt75=1;
+ }
+ else if ( (LA75_0==DESCENDING) ) {
+ alt75=2;
+ }
+ switch (alt75) {
+ case 1 :
+ // XQueryParser.g:514:12: ka= ASCENDING
+ ka=this.match(this.input,ASCENDING,XQueryParser.FOLLOW_ASCENDING_in_p_OrderModifier4595); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:514:27: k+= DESCENDING
+ k=this.match(this.input,DESCENDING,XQueryParser.FOLLOW_DESCENDING_in_p_OrderModifier4601); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:514:43: (k+= EMPTY (k+= GREATEST | k+= LEAST ) )?
+ var alt77=2;
+ var LA77_0 = this.input.LA(1);
+
+ if ( (LA77_0==EMPTY) ) {
+ alt77=1;
+ }
+ switch (alt77) {
+ case 1 :
+ // XQueryParser.g:514:44: k+= EMPTY (k+= GREATEST | k+= LEAST )
+ k=this.match(this.input,EMPTY,XQueryParser.FOLLOW_EMPTY_in_p_OrderModifier4608); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:514:53: (k+= GREATEST | k+= LEAST )
+ var alt76=2;
+ var LA76_0 = this.input.LA(1);
+
+ if ( (LA76_0==GREATEST) ) {
+ alt76=1;
+ }
+ else if ( (LA76_0==LEAST) ) {
+ alt76=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 76, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt76) {
+ case 1 :
+ // XQueryParser.g:514:54: k+= GREATEST
+ k=this.match(this.input,GREATEST,XQueryParser.FOLLOW_GREATEST_in_p_OrderModifier4613); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:514:68: k+= LEAST
+ k=this.match(this.input,LEAST,XQueryParser.FOLLOW_LEAST_in_p_OrderModifier4619); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:514:80: (k+= COLLATION p_StringLiteral )?
+ var alt78=2;
+ var LA78_0 = this.input.LA(1);
+
+ if ( (LA78_0==COLLATION) ) {
+ alt78=1;
+ }
+ switch (alt78) {
+ case 1 :
+ // XQueryParser.g:514:81: k+= COLLATION p_StringLiteral
+ k=this.match(this.input,COLLATION,XQueryParser.FOLLOW_COLLATION_in_p_OrderModifier4627); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_OrderModifier4629);
+ p_StringLiteral183=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral183.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ReturnClause_return: (function() {
+ XQueryParser.p_ReturnClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ReturnClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:518:1: p_ReturnClause : kr= RETURN p_ExprSingle ;
+ // $ANTLR start "p_ReturnClause"
+ p_ReturnClause: function() {
+ var retval = new XQueryParser.p_ReturnClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kr = null;
+ var p_ExprSingle184 = null;
+
+ var kr_tree=null;
+
+ try {
+ // XQueryParser.g:519:9: (kr= RETURN p_ExprSingle )
+ // XQueryParser.g:519:11: kr= RETURN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ kr=this.match(this.input,RETURN,XQueryParser.FOLLOW_RETURN_in_p_ReturnClause4660); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kr_tree = this.adaptor.create(kr);
+ this.adaptor.addChild(root_0, kr_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ReturnClause4662);
+ p_ExprSingle184=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle184.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_QuantifiedExpr_return: (function() {
+ XQueryParser.p_QuantifiedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_QuantifiedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:523:1: p_QuantifiedExpr : (k+= SOME | k+= EVERY ) DOLLAR p_VarName ( p_TypeDeclaration )? k+= IN p_ExprSingle ( COMMA DOLLAR p_QName ( p_TypeDeclaration )? k+= IN p_ExprSingle )* k+= SATISFIES p_ExprSingle ;
+ // $ANTLR start "p_QuantifiedExpr"
+ p_QuantifiedExpr: function() {
+ var retval = new XQueryParser.p_QuantifiedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR185 = null;
+ var COMMA189 = null;
+ var DOLLAR190 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName186 = null;
+ var p_TypeDeclaration187 = null;
+ var p_ExprSingle188 = null;
+ var p_QName191 = null;
+ var p_TypeDeclaration192 = null;
+ var p_ExprSingle193 = null;
+ var p_ExprSingle194 = null;
+
+ var DOLLAR185_tree=null;
+ var COMMA189_tree=null;
+ var DOLLAR190_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:524:9: ( (k+= SOME | k+= EVERY ) DOLLAR p_VarName ( p_TypeDeclaration )? k+= IN p_ExprSingle ( COMMA DOLLAR p_QName ( p_TypeDeclaration )? k+= IN p_ExprSingle )* k+= SATISFIES p_ExprSingle )
+ // XQueryParser.g:524:13: (k+= SOME | k+= EVERY ) DOLLAR p_VarName ( p_TypeDeclaration )? k+= IN p_ExprSingle ( COMMA DOLLAR p_QName ( p_TypeDeclaration )? k+= IN p_ExprSingle )* k+= SATISFIES p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:524:13: (k+= SOME | k+= EVERY )
+ var alt79=2;
+ var LA79_0 = this.input.LA(1);
+
+ if ( (LA79_0==SOME) ) {
+ alt79=1;
+ }
+ else if ( (LA79_0==EVERY) ) {
+ alt79=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 79, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt79) {
+ case 1 :
+ // XQueryParser.g:524:14: k+= SOME
+ k=this.match(this.input,SOME,XQueryParser.FOLLOW_SOME_in_p_QuantifiedExpr4693); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:524:24: k+= EVERY
+ k=this.match(this.input,EVERY,XQueryParser.FOLLOW_EVERY_in_p_QuantifiedExpr4699); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ DOLLAR185=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_QuantifiedExpr4702); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR185_tree = this.adaptor.create(DOLLAR185);
+ this.adaptor.addChild(root_0, DOLLAR185_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_QuantifiedExpr4704);
+ p_VarName186=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName186.getTree());
+ // XQueryParser.g:524:51: ( p_TypeDeclaration )?
+ var alt80=2;
+ var LA80_0 = this.input.LA(1);
+
+ if ( (LA80_0==AS) ) {
+ alt80=1;
+ }
+ switch (alt80) {
+ case 1 :
+ // XQueryParser.g:524:51: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_QuantifiedExpr4706);
+ p_TypeDeclaration187=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration187.getTree());
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_QuantifiedExpr4711); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4713);
+ p_ExprSingle188=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle188.getTree());
+ // XQueryParser.g:524:89: ( COMMA DOLLAR p_QName ( p_TypeDeclaration )? k+= IN p_ExprSingle )*
+ loop82:
+ do {
+ var alt82=2;
+ var LA82_0 = this.input.LA(1);
+
+ if ( (LA82_0==COMMA) ) {
+ alt82=1;
+ }
+
+
+ switch (alt82) {
+ case 1 :
+ // XQueryParser.g:524:90: COMMA DOLLAR p_QName ( p_TypeDeclaration )? k+= IN p_ExprSingle
+ COMMA189=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_QuantifiedExpr4716); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA189_tree = this.adaptor.create(COMMA189);
+ this.adaptor.addChild(root_0, COMMA189_tree);
+ }
+ DOLLAR190=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_QuantifiedExpr4718); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR190_tree = this.adaptor.create(DOLLAR190);
+ this.adaptor.addChild(root_0, DOLLAR190_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_QuantifiedExpr4720);
+ p_QName191=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName191.getTree());
+ // XQueryParser.g:524:111: ( p_TypeDeclaration )?
+ var alt81=2;
+ var LA81_0 = this.input.LA(1);
+
+ if ( (LA81_0==AS) ) {
+ alt81=1;
+ }
+ switch (alt81) {
+ case 1 :
+ // XQueryParser.g:524:111: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_p_QuantifiedExpr4722);
+ p_TypeDeclaration192=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeDeclaration192.getTree());
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,IN,XQueryParser.FOLLOW_IN_in_p_QuantifiedExpr4727); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4729);
+ p_ExprSingle193=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle193.getTree());
+
+
+ break;
+
+ default :
+ break loop82;
+ }
+ } while (true);
+
+ k=this.match(this.input,SATISFIES,XQueryParser.FOLLOW_SATISFIES_in_p_QuantifiedExpr4735); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4737);
+ p_ExprSingle194=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle194.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TypeswitchExpr_return: (function() {
+ XQueryParser.p_TypeswitchExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TypeswitchExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:528:1: p_TypeswitchExpr : k+= TYPESWITCH LPAREN pm_Expr RPAREN ( p_CaseClause )+ k+= DEFAULT ( DOLLAR p_VarName )? k+= RETURN p_ExprSingle ;
+ // $ANTLR start "p_TypeswitchExpr"
+ p_TypeswitchExpr: function() {
+ var retval = new XQueryParser.p_TypeswitchExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN195 = null;
+ var RPAREN197 = null;
+ var DOLLAR199 = null;
+ var k = null;
+ var list_k=null;
+ var pm_Expr196 = null;
+ var p_CaseClause198 = null;
+ var p_VarName200 = null;
+ var p_ExprSingle201 = null;
+
+ var LPAREN195_tree=null;
+ var RPAREN197_tree=null;
+ var DOLLAR199_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:529:9: (k+= TYPESWITCH LPAREN pm_Expr RPAREN ( p_CaseClause )+ k+= DEFAULT ( DOLLAR p_VarName )? k+= RETURN p_ExprSingle )
+ // XQueryParser.g:529:11: k+= TYPESWITCH LPAREN pm_Expr RPAREN ( p_CaseClause )+ k+= DEFAULT ( DOLLAR p_VarName )? k+= RETURN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,TYPESWITCH,XQueryParser.FOLLOW_TYPESWITCH_in_p_TypeswitchExpr4766); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ LPAREN195=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_TypeswitchExpr4768); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN195_tree = this.adaptor.create(LPAREN195);
+ this.adaptor.addChild(root_0, LPAREN195_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_TypeswitchExpr4770);
+ pm_Expr196=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr196.getTree());
+ RPAREN197=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_TypeswitchExpr4772); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN197_tree = this.adaptor.create(RPAREN197);
+ this.adaptor.addChild(root_0, RPAREN197_tree);
+ }
+ // XQueryParser.g:529:47: ( p_CaseClause )+
+ var cnt83=0;
+ loop83:
+ do {
+ var alt83=2;
+ var LA83_0 = this.input.LA(1);
+
+ if ( (LA83_0==CASE) ) {
+ alt83=1;
+ }
+
+
+ switch (alt83) {
+ case 1 :
+ // XQueryParser.g:529:47: p_CaseClause
+ this.pushFollow(XQueryParser.FOLLOW_p_CaseClause_in_p_TypeswitchExpr4774);
+ p_CaseClause198=this.p_CaseClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CaseClause198.getTree());
+
+
+ break;
+
+ default :
+ if ( cnt83 >= 1 ) {
+ break loop83;
+ }
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var eee = new org.antlr.runtime.EarlyExitException(83, this.input);
+ throw eee;
+ }
+ cnt83++;
+ } while (true);
+
+ k=this.match(this.input,DEFAULT,XQueryParser.FOLLOW_DEFAULT_in_p_TypeswitchExpr4779); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:529:72: ( DOLLAR p_VarName )?
+ var alt84=2;
+ var LA84_0 = this.input.LA(1);
+
+ if ( (LA84_0==DOLLAR) ) {
+ alt84=1;
+ }
+ switch (alt84) {
+ case 1 :
+ // XQueryParser.g:529:73: DOLLAR p_VarName
+ DOLLAR199=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_TypeswitchExpr4782); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR199_tree = this.adaptor.create(DOLLAR199);
+ this.adaptor.addChild(root_0, DOLLAR199_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_TypeswitchExpr4784);
+ p_VarName200=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName200.getTree());
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,RETURN,XQueryParser.FOLLOW_RETURN_in_p_TypeswitchExpr4790); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TypeswitchExpr4792);
+ p_ExprSingle201=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle201.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CaseClause_return: (function() {
+ XQueryParser.p_CaseClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CaseClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:533:1: p_CaseClause : k+= CASE ( DOLLAR p_VarName k+= AS )? p_SequenceType k+= RETURN p_ExprSingle ;
+ // $ANTLR start "p_CaseClause"
+ p_CaseClause: function() {
+ var retval = new XQueryParser.p_CaseClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR202 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName203 = null;
+ var p_SequenceType204 = null;
+ var p_ExprSingle205 = null;
+
+ var DOLLAR202_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:534:9: (k+= CASE ( DOLLAR p_VarName k+= AS )? p_SequenceType k+= RETURN p_ExprSingle )
+ // XQueryParser.g:534:11: k+= CASE ( DOLLAR p_VarName k+= AS )? p_SequenceType k+= RETURN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,CASE,XQueryParser.FOLLOW_CASE_in_p_CaseClause4821); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:534:19: ( DOLLAR p_VarName k+= AS )?
+ var alt85=2;
+ var LA85_0 = this.input.LA(1);
+
+ if ( (LA85_0==DOLLAR) ) {
+ alt85=1;
+ }
+ switch (alt85) {
+ case 1 :
+ // XQueryParser.g:534:20: DOLLAR p_VarName k+= AS
+ DOLLAR202=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_CaseClause4824); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR202_tree = this.adaptor.create(DOLLAR202);
+ this.adaptor.addChild(root_0, DOLLAR202_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_CaseClause4826);
+ p_VarName203=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName203.getTree());
+ k=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_CaseClause4830); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_SequenceType_in_p_CaseClause4834);
+ p_SequenceType204=this.p_SequenceType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SequenceType204.getTree());
+ k=this.match(this.input,RETURN,XQueryParser.FOLLOW_RETURN_in_p_CaseClause4838); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_CaseClause4840);
+ p_ExprSingle205=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle205.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IfExpr_return: (function() {
+ XQueryParser.p_IfExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IfExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:538:1: p_IfExpr : k+= IF LPAREN pm_Expr RPAREN k+= THEN p_ExprSingle k+= ELSE p_ExprSingle ;
+ // $ANTLR start "p_IfExpr"
+ p_IfExpr: function() {
+ var retval = new XQueryParser.p_IfExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN206 = null;
+ var RPAREN208 = null;
+ var k = null;
+ var list_k=null;
+ var pm_Expr207 = null;
+ var p_ExprSingle209 = null;
+ var p_ExprSingle210 = null;
+
+ var LPAREN206_tree=null;
+ var RPAREN208_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:539:9: (k+= IF LPAREN pm_Expr RPAREN k+= THEN p_ExprSingle k+= ELSE p_ExprSingle )
+ // XQueryParser.g:539:11: k+= IF LPAREN pm_Expr RPAREN k+= THEN p_ExprSingle k+= ELSE p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,IF,XQueryParser.FOLLOW_IF_in_p_IfExpr4869); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ LPAREN206=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_IfExpr4871); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN206_tree = this.adaptor.create(LPAREN206);
+ this.adaptor.addChild(root_0, LPAREN206_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_IfExpr4873);
+ pm_Expr207=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr207.getTree());
+ RPAREN208=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_IfExpr4875); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN208_tree = this.adaptor.create(RPAREN208);
+ this.adaptor.addChild(root_0, RPAREN208_tree);
+ }
+ k=this.match(this.input,THEN,XQueryParser.FOLLOW_THEN_in_p_IfExpr4879); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_IfExpr4881);
+ p_ExprSingle209=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle209.getTree());
+ k=this.match(this.input,ELSE,XQueryParser.FOLLOW_ELSE_in_p_IfExpr4885); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_IfExpr4887);
+ p_ExprSingle210=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle210.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrExpr_return: (function() {
+ XQueryParser.p_OrExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:543:1: p_OrExpr : p_AndExpr (k= OR p_AndExpr )* ;
+ // $ANTLR start "p_OrExpr"
+ p_OrExpr: function() {
+ var retval = new XQueryParser.p_OrExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var p_AndExpr211 = null;
+ var p_AndExpr212 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:544:9: ( p_AndExpr (k= OR p_AndExpr )* )
+ // XQueryParser.g:544:11: p_AndExpr (k= OR p_AndExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AndExpr_in_p_OrExpr4914);
+ p_AndExpr211=this.p_AndExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AndExpr211.getTree());
+ // XQueryParser.g:544:21: (k= OR p_AndExpr )*
+ loop86:
+ do {
+ var alt86=2;
+ var LA86_0 = this.input.LA(1);
+
+ if ( (LA86_0==OR) ) {
+ alt86=1;
+ }
+
+
+ switch (alt86) {
+ case 1 :
+ // XQueryParser.g:544:23: k= OR p_AndExpr
+ k=this.match(this.input,OR,XQueryParser.FOLLOW_OR_in_p_OrExpr4920); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AndExpr_in_p_OrExpr4923);
+ p_AndExpr212=this.p_AndExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AndExpr212.getTree());
+
+
+ break;
+
+ default :
+ break loop86;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AndExpr_return: (function() {
+ XQueryParser.p_AndExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AndExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:548:1: p_AndExpr : p_ComparisonExpr (k= AND p_ComparisonExpr )* ;
+ // $ANTLR start "p_AndExpr"
+ p_AndExpr: function() {
+ var retval = new XQueryParser.p_AndExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var p_ComparisonExpr213 = null;
+ var p_ComparisonExpr214 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:549:9: ( p_ComparisonExpr (k= AND p_ComparisonExpr )* )
+ // XQueryParser.g:549:13: p_ComparisonExpr (k= AND p_ComparisonExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ComparisonExpr_in_p_AndExpr4954);
+ p_ComparisonExpr213=this.p_ComparisonExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ComparisonExpr213.getTree());
+ // XQueryParser.g:549:30: (k= AND p_ComparisonExpr )*
+ loop87:
+ do {
+ var alt87=2;
+ var LA87_0 = this.input.LA(1);
+
+ if ( (LA87_0==AND) ) {
+ alt87=1;
+ }
+
+
+ switch (alt87) {
+ case 1 :
+ // XQueryParser.g:549:32: k= AND p_ComparisonExpr
+ k=this.match(this.input,AND,XQueryParser.FOLLOW_AND_in_p_AndExpr4960); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ComparisonExpr_in_p_AndExpr4963);
+ p_ComparisonExpr214=this.p_ComparisonExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ComparisonExpr214.getTree());
+
+
+ break;
+
+ default :
+ break loop87;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ComparisonExpr_return: (function() {
+ XQueryParser.p_ComparisonExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ComparisonExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:553:1: p_ComparisonExpr : p_RangeExpr ( ( p_ValueComp | p_GeneralComp | p_NodeComp ) p_RangeExpr )? ;
+ // $ANTLR start "p_ComparisonExpr"
+ p_ComparisonExpr: function() {
+ var retval = new XQueryParser.p_ComparisonExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_RangeExpr215 = null;
+ var p_ValueComp216 = null;
+ var p_GeneralComp217 = null;
+ var p_NodeComp218 = null;
+ var p_RangeExpr219 = null;
+
+
+ try {
+ // XQueryParser.g:554:9: ( p_RangeExpr ( ( p_ValueComp | p_GeneralComp | p_NodeComp ) p_RangeExpr )? )
+ // XQueryParser.g:554:13: p_RangeExpr ( ( p_ValueComp | p_GeneralComp | p_NodeComp ) p_RangeExpr )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_RangeExpr_in_p_ComparisonExpr4994);
+ p_RangeExpr215=this.p_RangeExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RangeExpr215.getTree());
+ // XQueryParser.g:554:25: ( ( p_ValueComp | p_GeneralComp | p_NodeComp ) p_RangeExpr )?
+ var alt89=2;
+ var LA89_0 = this.input.LA(1);
+
+ if ( (LA89_0==EQ||LA89_0==GE||LA89_0==GT||LA89_0==IS||LA89_0==LE||LA89_0==LT||LA89_0==NE||LA89_0==EQUAL||LA89_0==NOTEQUAL||(LA89_0>=SMALLER && LA89_0<=GREATER_GREATER)) ) {
+ alt89=1;
+ }
+ switch (alt89) {
+ case 1 :
+ // XQueryParser.g:554:27: ( p_ValueComp | p_GeneralComp | p_NodeComp ) p_RangeExpr
+ // XQueryParser.g:554:27: ( p_ValueComp | p_GeneralComp | p_NodeComp )
+ var alt88=3;
+ switch ( this.input.LA(1) ) {
+ case EQ:
+ case GE:
+ case GT:
+ case LE:
+ case LT:
+ case NE:
+ alt88=1;
+ break;
+ case EQUAL:
+ case NOTEQUAL:
+ case SMALLER:
+ case GREATER:
+ case SMALLEREQ:
+ case GREATEREQ:
+ alt88=2;
+ break;
+ case IS:
+ case SMALLER_SMALLER:
+ case GREATER_GREATER:
+ alt88=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 88, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt88) {
+ case 1 :
+ // XQueryParser.g:554:28: p_ValueComp
+ this.pushFollow(XQueryParser.FOLLOW_p_ValueComp_in_p_ComparisonExpr4999);
+ p_ValueComp216=this.p_ValueComp();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ValueComp216.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:554:42: p_GeneralComp
+ this.pushFollow(XQueryParser.FOLLOW_p_GeneralComp_in_p_ComparisonExpr5003);
+ p_GeneralComp217=this.p_GeneralComp();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_GeneralComp217.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:554:58: p_NodeComp
+ this.pushFollow(XQueryParser.FOLLOW_p_NodeComp_in_p_ComparisonExpr5007);
+ p_NodeComp218=this.p_NodeComp();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NodeComp218.getTree());
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_RangeExpr_in_p_ComparisonExpr5010);
+ p_RangeExpr219=this.p_RangeExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RangeExpr219.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_RangeExpr_return: (function() {
+ XQueryParser.p_RangeExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_RangeExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:558:1: p_RangeExpr : p_AdditiveExpr (k= TO p_AdditiveExpr )? ;
+ // $ANTLR start "p_RangeExpr"
+ p_RangeExpr: function() {
+ var retval = new XQueryParser.p_RangeExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var p_AdditiveExpr220 = null;
+ var p_AdditiveExpr221 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:559:9: ( p_AdditiveExpr (k= TO p_AdditiveExpr )? )
+ // XQueryParser.g:559:13: p_AdditiveExpr (k= TO p_AdditiveExpr )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AdditiveExpr_in_p_RangeExpr5041);
+ p_AdditiveExpr220=this.p_AdditiveExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AdditiveExpr220.getTree());
+ // XQueryParser.g:559:28: (k= TO p_AdditiveExpr )?
+ var alt90=2;
+ var LA90_0 = this.input.LA(1);
+
+ if ( (LA90_0==TO) ) {
+ alt90=1;
+ }
+ switch (alt90) {
+ case 1 :
+ // XQueryParser.g:559:30: k= TO p_AdditiveExpr
+ k=this.match(this.input,TO,XQueryParser.FOLLOW_TO_in_p_RangeExpr5047); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AdditiveExpr_in_p_RangeExpr5050);
+ p_AdditiveExpr221=this.p_AdditiveExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AdditiveExpr221.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AdditiveExpr_return: (function() {
+ XQueryParser.p_AdditiveExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AdditiveExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:563:1: p_AdditiveExpr : p_MultiplicativeExpr ( ( PLUS | MINUS ) p_MultiplicativeExpr )* ;
+ // $ANTLR start "p_AdditiveExpr"
+ p_AdditiveExpr: function() {
+ var retval = new XQueryParser.p_AdditiveExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set223 = null;
+ var p_MultiplicativeExpr222 = null;
+ var p_MultiplicativeExpr224 = null;
+
+ var set223_tree=null;
+
+ try {
+ // XQueryParser.g:564:9: ( p_MultiplicativeExpr ( ( PLUS | MINUS ) p_MultiplicativeExpr )* )
+ // XQueryParser.g:564:13: p_MultiplicativeExpr ( ( PLUS | MINUS ) p_MultiplicativeExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_MultiplicativeExpr_in_p_AdditiveExpr5081);
+ p_MultiplicativeExpr222=this.p_MultiplicativeExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_MultiplicativeExpr222.getTree());
+ // XQueryParser.g:564:34: ( ( PLUS | MINUS ) p_MultiplicativeExpr )*
+ loop91:
+ do {
+ var alt91=2;
+ var LA91_0 = this.input.LA(1);
+
+ if ( ((LA91_0>=PLUS && LA91_0<=MINUS)) ) {
+ alt91=1;
+ }
+
+
+ switch (alt91) {
+ case 1 :
+ // XQueryParser.g:564:36: ( PLUS | MINUS ) p_MultiplicativeExpr
+ set223=this.input.LT(1);
+ if ( (this.input.LA(1)>=PLUS && this.input.LA(1)<=MINUS) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set223));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_MultiplicativeExpr_in_p_AdditiveExpr5093);
+ p_MultiplicativeExpr224=this.p_MultiplicativeExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_MultiplicativeExpr224.getTree());
+
+
+ break;
+
+ default :
+ break loop91;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_MultiplicativeExpr_return: (function() {
+ XQueryParser.p_MultiplicativeExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_MultiplicativeExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:568:1: p_MultiplicativeExpr : p_UnionExpr ( ( STAR | kd= DIV | ki= IDIV | km= MOD ) p_UnionExpr )* ;
+ // $ANTLR start "p_MultiplicativeExpr"
+ p_MultiplicativeExpr: function() {
+ var retval = new XQueryParser.p_MultiplicativeExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kd = null;
+ var ki = null;
+ var km = null;
+ var STAR226 = null;
+ var p_UnionExpr225 = null;
+ var p_UnionExpr227 = null;
+
+ var kd_tree=null;
+ var ki_tree=null;
+ var km_tree=null;
+ var STAR226_tree=null;
+
+ try {
+ // XQueryParser.g:569:9: ( p_UnionExpr ( ( STAR | kd= DIV | ki= IDIV | km= MOD ) p_UnionExpr )* )
+ // XQueryParser.g:569:13: p_UnionExpr ( ( STAR | kd= DIV | ki= IDIV | km= MOD ) p_UnionExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_UnionExpr_in_p_MultiplicativeExpr5124);
+ p_UnionExpr225=this.p_UnionExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_UnionExpr225.getTree());
+ // XQueryParser.g:569:25: ( ( STAR | kd= DIV | ki= IDIV | km= MOD ) p_UnionExpr )*
+ loop93:
+ do {
+ var alt93=2;
+ var LA93_0 = this.input.LA(1);
+
+ if ( (LA93_0==DIV||LA93_0==IDIV||LA93_0==MOD||LA93_0==STAR) ) {
+ alt93=1;
+ }
+
+
+ switch (alt93) {
+ case 1 :
+ // XQueryParser.g:569:27: ( STAR | kd= DIV | ki= IDIV | km= MOD ) p_UnionExpr
+ // XQueryParser.g:569:27: ( STAR | kd= DIV | ki= IDIV | km= MOD )
+ var alt92=4;
+ switch ( this.input.LA(1) ) {
+ case STAR:
+ alt92=1;
+ break;
+ case DIV:
+ alt92=2;
+ break;
+ case IDIV:
+ alt92=3;
+ break;
+ case MOD:
+ alt92=4;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 92, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt92) {
+ case 1 :
+ // XQueryParser.g:569:28: STAR
+ STAR226=this.match(this.input,STAR,XQueryParser.FOLLOW_STAR_in_p_MultiplicativeExpr5129); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ STAR226_tree = this.adaptor.create(STAR226);
+ this.adaptor.addChild(root_0, STAR226_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:569:35: kd= DIV
+ kd=this.match(this.input,DIV,XQueryParser.FOLLOW_DIV_in_p_MultiplicativeExpr5135); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kd_tree = this.adaptor.create(kd);
+ this.adaptor.addChild(root_0, kd_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:569:44: ki= IDIV
+ ki=this.match(this.input,IDIV,XQueryParser.FOLLOW_IDIV_in_p_MultiplicativeExpr5141); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ki_tree = this.adaptor.create(ki);
+ this.adaptor.addChild(root_0, ki_tree);
+ }
+ if ( this.state.backtracking===0 ) {
+ }
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:569:57: km= MOD
+ km=this.match(this.input,MOD,XQueryParser.FOLLOW_MOD_in_p_MultiplicativeExpr5149); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ km_tree = this.adaptor.create(km);
+ this.adaptor.addChild(root_0, km_tree);
+ }
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_UnionExpr_in_p_MultiplicativeExpr5153);
+ p_UnionExpr227=this.p_UnionExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_UnionExpr227.getTree());
+
+
+ break;
+
+ default :
+ break loop93;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_UnionExpr_return: (function() {
+ XQueryParser.p_UnionExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_UnionExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:573:1: p_UnionExpr : p_IntersectExceptExpr ( (ku= UNION | VBAR ) p_IntersectExceptExpr )* ;
+ // $ANTLR start "p_UnionExpr"
+ p_UnionExpr: function() {
+ var retval = new XQueryParser.p_UnionExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ku = null;
+ var VBAR229 = null;
+ var p_IntersectExceptExpr228 = null;
+ var p_IntersectExceptExpr230 = null;
+
+ var ku_tree=null;
+ var VBAR229_tree=null;
+
+ try {
+ // XQueryParser.g:574:9: ( p_IntersectExceptExpr ( (ku= UNION | VBAR ) p_IntersectExceptExpr )* )
+ // XQueryParser.g:574:13: p_IntersectExceptExpr ( (ku= UNION | VBAR ) p_IntersectExceptExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IntersectExceptExpr_in_p_UnionExpr5184);
+ p_IntersectExceptExpr228=this.p_IntersectExceptExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IntersectExceptExpr228.getTree());
+ // XQueryParser.g:574:35: ( (ku= UNION | VBAR ) p_IntersectExceptExpr )*
+ loop95:
+ do {
+ var alt95=2;
+ var LA95_0 = this.input.LA(1);
+
+ if ( (LA95_0==UNION||LA95_0==VBAR) ) {
+ alt95=1;
+ }
+
+
+ switch (alt95) {
+ case 1 :
+ // XQueryParser.g:574:37: (ku= UNION | VBAR ) p_IntersectExceptExpr
+ // XQueryParser.g:574:37: (ku= UNION | VBAR )
+ var alt94=2;
+ var LA94_0 = this.input.LA(1);
+
+ if ( (LA94_0==UNION) ) {
+ alt94=1;
+ }
+ else if ( (LA94_0==VBAR) ) {
+ alt94=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 94, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt94) {
+ case 1 :
+ // XQueryParser.g:574:38: ku= UNION
+ ku=this.match(this.input,UNION,XQueryParser.FOLLOW_UNION_in_p_UnionExpr5191); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ku_tree = this.adaptor.create(ku);
+ this.adaptor.addChild(root_0, ku_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:574:49: VBAR
+ VBAR229=this.match(this.input,VBAR,XQueryParser.FOLLOW_VBAR_in_p_UnionExpr5195); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ VBAR229_tree = this.adaptor.create(VBAR229);
+ this.adaptor.addChild(root_0, VBAR229_tree);
+ }
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IntersectExceptExpr_in_p_UnionExpr5198);
+ p_IntersectExceptExpr230=this.p_IntersectExceptExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IntersectExceptExpr230.getTree());
+
+
+ break;
+
+ default :
+ break loop95;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IntersectExceptExpr_return: (function() {
+ XQueryParser.p_IntersectExceptExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IntersectExceptExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:578:1: p_IntersectExceptExpr : p_InstanceofExpr ( (k= INTERSECT | k= EXCEPT ) p_InstanceofExpr )* ;
+ // $ANTLR start "p_IntersectExceptExpr"
+ p_IntersectExceptExpr: function() {
+ var retval = new XQueryParser.p_IntersectExceptExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var p_InstanceofExpr231 = null;
+ var p_InstanceofExpr232 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:579:9: ( p_InstanceofExpr ( (k= INTERSECT | k= EXCEPT ) p_InstanceofExpr )* )
+ // XQueryParser.g:579:13: p_InstanceofExpr ( (k= INTERSECT | k= EXCEPT ) p_InstanceofExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_InstanceofExpr_in_p_IntersectExceptExpr5229);
+ p_InstanceofExpr231=this.p_InstanceofExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InstanceofExpr231.getTree());
+ // XQueryParser.g:579:30: ( (k= INTERSECT | k= EXCEPT ) p_InstanceofExpr )*
+ loop97:
+ do {
+ var alt97=2;
+ var LA97_0 = this.input.LA(1);
+
+ if ( (LA97_0==EXCEPT||LA97_0==INTERSECT) ) {
+ alt97=1;
+ }
+
+
+ switch (alt97) {
+ case 1 :
+ // XQueryParser.g:579:32: (k= INTERSECT | k= EXCEPT ) p_InstanceofExpr
+ // XQueryParser.g:579:32: (k= INTERSECT | k= EXCEPT )
+ var alt96=2;
+ var LA96_0 = this.input.LA(1);
+
+ if ( (LA96_0==INTERSECT) ) {
+ alt96=1;
+ }
+ else if ( (LA96_0==EXCEPT) ) {
+ alt96=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 96, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt96) {
+ case 1 :
+ // XQueryParser.g:579:33: k= INTERSECT
+ k=this.match(this.input,INTERSECT,XQueryParser.FOLLOW_INTERSECT_in_p_IntersectExceptExpr5236); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:579:47: k= EXCEPT
+ k=this.match(this.input,EXCEPT,XQueryParser.FOLLOW_EXCEPT_in_p_IntersectExceptExpr5242); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_InstanceofExpr_in_p_IntersectExceptExpr5246);
+ p_InstanceofExpr232=this.p_InstanceofExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InstanceofExpr232.getTree());
+
+
+ break;
+
+ default :
+ break loop97;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_InstanceofExpr_return: (function() {
+ XQueryParser.p_InstanceofExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_InstanceofExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:583:1: p_InstanceofExpr : p_TreatExpr (ki= INSTANCE ko= OF p_SequenceType )? ;
+ // $ANTLR start "p_InstanceofExpr"
+ p_InstanceofExpr: function() {
+ var retval = new XQueryParser.p_InstanceofExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ki = null;
+ var ko = null;
+ var p_TreatExpr233 = null;
+ var p_SequenceType234 = null;
+
+ var ki_tree=null;
+ var ko_tree=null;
+
+ try {
+ // XQueryParser.g:584:9: ( p_TreatExpr (ki= INSTANCE ko= OF p_SequenceType )? )
+ // XQueryParser.g:584:13: p_TreatExpr (ki= INSTANCE ko= OF p_SequenceType )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TreatExpr_in_p_InstanceofExpr5277);
+ p_TreatExpr233=this.p_TreatExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TreatExpr233.getTree());
+ // XQueryParser.g:584:25: (ki= INSTANCE ko= OF p_SequenceType )?
+ var alt98=2;
+ var LA98_0 = this.input.LA(1);
+
+ if ( (LA98_0==INSTANCE) ) {
+ alt98=1;
+ }
+ switch (alt98) {
+ case 1 :
+ // XQueryParser.g:584:27: ki= INSTANCE ko= OF p_SequenceType
+ ki=this.match(this.input,INSTANCE,XQueryParser.FOLLOW_INSTANCE_in_p_InstanceofExpr5283); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ki_tree = this.adaptor.create(ki);
+ this.adaptor.addChild(root_0, ki_tree);
+ }
+ ko=this.match(this.input,OF,XQueryParser.FOLLOW_OF_in_p_InstanceofExpr5287); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ko_tree = this.adaptor.create(ko);
+ this.adaptor.addChild(root_0, ko_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_SequenceType_in_p_InstanceofExpr5289);
+ p_SequenceType234=this.p_SequenceType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SequenceType234.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TreatExpr_return: (function() {
+ XQueryParser.p_TreatExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TreatExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:588:1: p_TreatExpr : p_CastableExpr (kt= TREAT ka= AS p_SequenceType )? ;
+ // $ANTLR start "p_TreatExpr"
+ p_TreatExpr: function() {
+ var retval = new XQueryParser.p_TreatExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kt = null;
+ var ka = null;
+ var p_CastableExpr235 = null;
+ var p_SequenceType236 = null;
+
+ var kt_tree=null;
+ var ka_tree=null;
+
+ try {
+ // XQueryParser.g:589:9: ( p_CastableExpr (kt= TREAT ka= AS p_SequenceType )? )
+ // XQueryParser.g:589:13: p_CastableExpr (kt= TREAT ka= AS p_SequenceType )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CastableExpr_in_p_TreatExpr5319);
+ p_CastableExpr235=this.p_CastableExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CastableExpr235.getTree());
+ // XQueryParser.g:589:28: (kt= TREAT ka= AS p_SequenceType )?
+ var alt99=2;
+ var LA99_0 = this.input.LA(1);
+
+ if ( (LA99_0==TREAT) ) {
+ alt99=1;
+ }
+ switch (alt99) {
+ case 1 :
+ // XQueryParser.g:589:30: kt= TREAT ka= AS p_SequenceType
+ kt=this.match(this.input,TREAT,XQueryParser.FOLLOW_TREAT_in_p_TreatExpr5325); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kt_tree = this.adaptor.create(kt);
+ this.adaptor.addChild(root_0, kt_tree);
+ }
+ ka=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_TreatExpr5329); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_SequenceType_in_p_TreatExpr5331);
+ p_SequenceType236=this.p_SequenceType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SequenceType236.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CastableExpr_return: (function() {
+ XQueryParser.p_CastableExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CastableExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:593:1: p_CastableExpr : p_CastExpr (kc= CASTABLE ka= AS p_SingleType )? ;
+ // $ANTLR start "p_CastableExpr"
+ p_CastableExpr: function() {
+ var retval = new XQueryParser.p_CastableExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var ka = null;
+ var p_CastExpr237 = null;
+ var p_SingleType238 = null;
+
+ var kc_tree=null;
+ var ka_tree=null;
+
+ try {
+ // XQueryParser.g:594:9: ( p_CastExpr (kc= CASTABLE ka= AS p_SingleType )? )
+ // XQueryParser.g:594:13: p_CastExpr (kc= CASTABLE ka= AS p_SingleType )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CastExpr_in_p_CastableExpr5370);
+ p_CastExpr237=this.p_CastExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CastExpr237.getTree());
+ // XQueryParser.g:594:24: (kc= CASTABLE ka= AS p_SingleType )?
+ var alt100=2;
+ var LA100_0 = this.input.LA(1);
+
+ if ( (LA100_0==CASTABLE) ) {
+ alt100=1;
+ }
+ switch (alt100) {
+ case 1 :
+ // XQueryParser.g:594:26: kc= CASTABLE ka= AS p_SingleType
+ kc=this.match(this.input,CASTABLE,XQueryParser.FOLLOW_CASTABLE_in_p_CastableExpr5376); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ ka=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_CastableExpr5380); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_SingleType_in_p_CastableExpr5382);
+ p_SingleType238=this.p_SingleType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SingleType238.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CastExpr_return: (function() {
+ XQueryParser.p_CastExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CastExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:598:1: p_CastExpr : p_UnaryExpr (kc= CAST ka= AS p_SingleType )? ;
+ // $ANTLR start "p_CastExpr"
+ p_CastExpr: function() {
+ var retval = new XQueryParser.p_CastExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var ka = null;
+ var p_UnaryExpr239 = null;
+ var p_SingleType240 = null;
+
+ var kc_tree=null;
+ var ka_tree=null;
+
+ try {
+ // XQueryParser.g:599:9: ( p_UnaryExpr (kc= CAST ka= AS p_SingleType )? )
+ // XQueryParser.g:599:13: p_UnaryExpr (kc= CAST ka= AS p_SingleType )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_UnaryExpr_in_p_CastExpr5421);
+ p_UnaryExpr239=this.p_UnaryExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_UnaryExpr239.getTree());
+ // XQueryParser.g:599:25: (kc= CAST ka= AS p_SingleType )?
+ var alt101=2;
+ var LA101_0 = this.input.LA(1);
+
+ if ( (LA101_0==CAST) ) {
+ alt101=1;
+ }
+ switch (alt101) {
+ case 1 :
+ // XQueryParser.g:599:27: kc= CAST ka= AS p_SingleType
+ kc=this.match(this.input,CAST,XQueryParser.FOLLOW_CAST_in_p_CastExpr5427); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ ka=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_CastExpr5431); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_SingleType_in_p_CastExpr5433);
+ p_SingleType240=this.p_SingleType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SingleType240.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_UnaryExpr_return: (function() {
+ XQueryParser.p_UnaryExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_UnaryExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:603:1: p_UnaryExpr : ( PLUS | MINUS )* p_ValueExpr -> ^( UnaryExpr ( PLUS )* p_ValueExpr ) ;
+ // $ANTLR start "p_UnaryExpr"
+ p_UnaryExpr: function() {
+ var retval = new XQueryParser.p_UnaryExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var PLUS241 = null;
+ var MINUS242 = null;
+ var p_ValueExpr243 = null;
+
+ var PLUS241_tree=null;
+ var MINUS242_tree=null;
+ var stream_PLUS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token PLUS");
+ var stream_MINUS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token MINUS");
+ var stream_p_ValueExpr=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ValueExpr");
+ try {
+ // XQueryParser.g:604:9: ( ( PLUS | MINUS )* p_ValueExpr -> ^( UnaryExpr ( PLUS )* p_ValueExpr ) )
+ // XQueryParser.g:604:13: ( PLUS | MINUS )* p_ValueExpr
+ // XQueryParser.g:604:13: ( PLUS | MINUS )*
+ loop102:
+ do {
+ var alt102=3;
+ var LA102_0 = this.input.LA(1);
+
+ if ( (LA102_0==PLUS) ) {
+ alt102=1;
+ }
+ else if ( (LA102_0==MINUS) ) {
+ alt102=2;
+ }
+
+
+ switch (alt102) {
+ case 1 :
+ // XQueryParser.g:604:14: PLUS
+ PLUS241=this.match(this.input,PLUS,XQueryParser.FOLLOW_PLUS_in_p_UnaryExpr5465); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_PLUS.add(PLUS241);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:604:21: MINUS
+ MINUS242=this.match(this.input,MINUS,XQueryParser.FOLLOW_MINUS_in_p_UnaryExpr5469); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_MINUS.add(MINUS242);
+
+
+
+ break;
+
+ default :
+ break loop102;
+ }
+ } while (true);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ValueExpr_in_p_UnaryExpr5473);
+ p_ValueExpr243=this.p_ValueExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ValueExpr.add(p_ValueExpr243.getTree());
+
+
+ // AST REWRITE
+ // elements: PLUS, p_ValueExpr
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 605:17: -> ^( UnaryExpr ( PLUS )* p_ValueExpr )
+ {
+ // XQueryParser.g:605:20: ^( UnaryExpr ( PLUS )* p_ValueExpr )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(UnaryExpr, "UnaryExpr"), root_1);
+
+ // XQueryParser.g:605:32: ( PLUS )*
+ while ( stream_PLUS.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_PLUS.nextNode());
+
+ }
+ stream_PLUS.reset();
+ this.adaptor.addChild(root_1, stream_p_ValueExpr.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ValueExpr_return: (function() {
+ XQueryParser.p_ValueExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ValueExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:612:1: p_ValueExpr : ( p_ValidateExpr | p_PathExpr | p_ExtensionExpr );
+ // $ANTLR start "p_ValueExpr"
+ p_ValueExpr: function() {
+ var retval = new XQueryParser.p_ValueExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ValidateExpr244 = null;
+ var p_PathExpr245 = null;
+ var p_ExtensionExpr246 = null;
+
+
+ try {
+ // XQueryParser.g:613:9: ( p_ValidateExpr | p_PathExpr | p_ExtensionExpr )
+ var alt103=3;
+ alt103 = this.dfa103.predict(this.input);
+ switch (alt103) {
+ case 1 :
+ // XQueryParser.g:613:11: p_ValidateExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ValidateExpr_in_p_ValueExpr5529);
+ p_ValidateExpr244=this.p_ValidateExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ValidateExpr244.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:614:11: p_PathExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PathExpr_in_p_ValueExpr5541);
+ p_PathExpr245=this.p_PathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PathExpr245.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:615:11: p_ExtensionExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExtensionExpr_in_p_ValueExpr5553);
+ p_ExtensionExpr246=this.p_ExtensionExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExtensionExpr246.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_GeneralComp_return: (function() {
+ XQueryParser.p_GeneralComp_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_GeneralComp_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:619:1: p_GeneralComp : ( EQUAL | NOTEQUAL | SMALLER | SMALLEREQ | GREATER | GREATEREQ );
+ // $ANTLR start "p_GeneralComp"
+ p_GeneralComp: function() {
+ var retval = new XQueryParser.p_GeneralComp_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set247 = null;
+
+ var set247_tree=null;
+
+ try {
+ // XQueryParser.g:620:9: ( EQUAL | NOTEQUAL | SMALLER | SMALLEREQ | GREATER | GREATEREQ )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set247=this.input.LT(1);
+ if ( this.input.LA(1)==EQUAL||this.input.LA(1)==NOTEQUAL||(this.input.LA(1)>=SMALLER && this.input.LA(1)<=GREATEREQ) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set247));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ValueComp_return: (function() {
+ XQueryParser.p_ValueComp_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ValueComp_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:624:1: p_ValueComp : (k= EQ | k= NE | k= LT | k= LE | k= GT | k= GE ) ;
+ // $ANTLR start "p_ValueComp"
+ p_ValueComp: function() {
+ var retval = new XQueryParser.p_ValueComp_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:625:9: ( (k= EQ | k= NE | k= LT | k= LE | k= GT | k= GE ) )
+ // XQueryParser.g:625:13: (k= EQ | k= NE | k= LT | k= LE | k= GT | k= GE )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:625:13: (k= EQ | k= NE | k= LT | k= LE | k= GT | k= GE )
+ var alt104=6;
+ switch ( this.input.LA(1) ) {
+ case EQ:
+ alt104=1;
+ break;
+ case NE:
+ alt104=2;
+ break;
+ case LT:
+ alt104=3;
+ break;
+ case LE:
+ alt104=4;
+ break;
+ case GT:
+ alt104=5;
+ break;
+ case GE:
+ alt104=6;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 104, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt104) {
+ case 1 :
+ // XQueryParser.g:625:14: k= EQ
+ k=this.match(this.input,EQ,XQueryParser.FOLLOW_EQ_in_p_ValueComp5632); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:625:21: k= NE
+ k=this.match(this.input,NE,XQueryParser.FOLLOW_NE_in_p_ValueComp5638); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:625:28: k= LT
+ k=this.match(this.input,LT,XQueryParser.FOLLOW_LT_in_p_ValueComp5644); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:625:35: k= LE
+ k=this.match(this.input,LE,XQueryParser.FOLLOW_LE_in_p_ValueComp5650); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:625:42: k= GT
+ k=this.match(this.input,GT,XQueryParser.FOLLOW_GT_in_p_ValueComp5656); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:625:49: k= GE
+ k=this.match(this.input,GE,XQueryParser.FOLLOW_GE_in_p_ValueComp5662); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NodeComp_return: (function() {
+ XQueryParser.p_NodeComp_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NodeComp_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:629:1: p_NodeComp : (ki= IS | SMALLER_SMALLER | GREATER_GREATER );
+ // $ANTLR start "p_NodeComp"
+ p_NodeComp: function() {
+ var retval = new XQueryParser.p_NodeComp_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ki = null;
+ var SMALLER_SMALLER248 = null;
+ var GREATER_GREATER249 = null;
+
+ var ki_tree=null;
+ var SMALLER_SMALLER248_tree=null;
+ var GREATER_GREATER249_tree=null;
+
+ try {
+ // XQueryParser.g:630:9: (ki= IS | SMALLER_SMALLER | GREATER_GREATER )
+ var alt105=3;
+ switch ( this.input.LA(1) ) {
+ case IS:
+ alt105=1;
+ break;
+ case SMALLER_SMALLER:
+ alt105=2;
+ break;
+ case GREATER_GREATER:
+ alt105=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 105, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt105) {
+ case 1 :
+ // XQueryParser.g:630:13: ki= IS
+ root_0 = this.adaptor.nil();
+
+ ki=this.match(this.input,IS,XQueryParser.FOLLOW_IS_in_p_NodeComp5694); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ki_tree = this.adaptor.create(ki);
+ this.adaptor.addChild(root_0, ki_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:630:21: SMALLER_SMALLER
+ root_0 = this.adaptor.nil();
+
+ SMALLER_SMALLER248=this.match(this.input,SMALLER_SMALLER,XQueryParser.FOLLOW_SMALLER_SMALLER_in_p_NodeComp5698); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SMALLER_SMALLER248_tree = this.adaptor.create(SMALLER_SMALLER248);
+ this.adaptor.addChild(root_0, SMALLER_SMALLER248_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:630:39: GREATER_GREATER
+ root_0 = this.adaptor.nil();
+
+ GREATER_GREATER249=this.match(this.input,GREATER_GREATER,XQueryParser.FOLLOW_GREATER_GREATER_in_p_NodeComp5702); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ GREATER_GREATER249_tree = this.adaptor.create(GREATER_GREATER249);
+ this.adaptor.addChild(root_0, GREATER_GREATER249_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ValidateExpr_return: (function() {
+ XQueryParser.p_ValidateExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ValidateExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:634:1: p_ValidateExpr : kv= VALIDATE ( p_ValidationMode )? LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_ValidateExpr"
+ p_ValidateExpr: function() {
+ var retval = new XQueryParser.p_ValidateExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kv = null;
+ var LBRACKET251 = null;
+ var RBRACKET253 = null;
+ var p_ValidationMode250 = null;
+ var pm_Expr252 = null;
+
+ var kv_tree=null;
+ var LBRACKET251_tree=null;
+ var RBRACKET253_tree=null;
+
+ try {
+ // XQueryParser.g:635:9: (kv= VALIDATE ( p_ValidationMode )? LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:635:13: kv= VALIDATE ( p_ValidationMode )? LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ kv=this.match(this.input,VALIDATE,XQueryParser.FOLLOW_VALIDATE_in_p_ValidateExpr5732); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kv_tree = this.adaptor.create(kv);
+ this.adaptor.addChild(root_0, kv_tree);
+ }
+ // XQueryParser.g:635:25: ( p_ValidationMode )?
+ var alt106=2;
+ var LA106_0 = this.input.LA(1);
+
+ if ( (LA106_0==AS||LA106_0==LAX||LA106_0==STRICT) ) {
+ alt106=1;
+ }
+ switch (alt106) {
+ case 1 :
+ // XQueryParser.g:635:25: p_ValidationMode
+ this.pushFollow(XQueryParser.FOLLOW_p_ValidationMode_in_p_ValidateExpr5734);
+ p_ValidationMode250=this.p_ValidationMode();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ValidationMode250.getTree());
+
+
+ break;
+
+ }
+
+ LBRACKET251=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_ValidateExpr5737); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET251_tree = this.adaptor.create(LBRACKET251);
+ this.adaptor.addChild(root_0, LBRACKET251_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_ValidateExpr5739);
+ pm_Expr252=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr252.getTree());
+ RBRACKET253=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_ValidateExpr5741); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET253_tree = this.adaptor.create(RBRACKET253);
+ this.adaptor.addChild(root_0, RBRACKET253_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ValidationMode_return: (function() {
+ XQueryParser.p_ValidationMode_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ValidationMode_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:639:1: p_ValidationMode : (k= LAX | k= STRICT | (k= AS p_QName ) ) ;
+ // $ANTLR start "p_ValidationMode"
+ p_ValidationMode: function() {
+ var retval = new XQueryParser.p_ValidationMode_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var p_QName254 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:640:9: ( (k= LAX | k= STRICT | (k= AS p_QName ) ) )
+ // XQueryParser.g:640:13: (k= LAX | k= STRICT | (k= AS p_QName ) )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:640:13: (k= LAX | k= STRICT | (k= AS p_QName ) )
+ var alt107=3;
+ switch ( this.input.LA(1) ) {
+ case LAX:
+ alt107=1;
+ break;
+ case STRICT:
+ alt107=2;
+ break;
+ case AS:
+ alt107=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 107, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt107) {
+ case 1 :
+ // XQueryParser.g:640:14: k= LAX
+ k=this.match(this.input,LAX,XQueryParser.FOLLOW_LAX_in_p_ValidationMode5772); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:640:22: k= STRICT
+ k=this.match(this.input,STRICT,XQueryParser.FOLLOW_STRICT_in_p_ValidationMode5778); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:640:33: (k= AS p_QName )
+ // XQueryParser.g:640:33: (k= AS p_QName )
+ // XQueryParser.g:640:34: k= AS p_QName
+ k=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_ValidationMode5785); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ValidationMode5787);
+ p_QName254=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName254.getTree());
+
+
+
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ExtensionExpr_return: (function() {
+ XQueryParser.p_ExtensionExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ExtensionExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:644:1: p_ExtensionExpr : ( L_Pragma )+ LBRACKET ( pm_Expr )? RBRACKET ;
+ // $ANTLR start "p_ExtensionExpr"
+ p_ExtensionExpr: function() {
+ var retval = new XQueryParser.p_ExtensionExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_Pragma255 = null;
+ var LBRACKET256 = null;
+ var RBRACKET258 = null;
+ var pm_Expr257 = null;
+
+ var L_Pragma255_tree=null;
+ var LBRACKET256_tree=null;
+ var RBRACKET258_tree=null;
+
+ try {
+ // XQueryParser.g:645:9: ( ( L_Pragma )+ LBRACKET ( pm_Expr )? RBRACKET )
+ // XQueryParser.g:645:13: ( L_Pragma )+ LBRACKET ( pm_Expr )? RBRACKET
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:645:13: ( L_Pragma )+
+ var cnt108=0;
+ loop108:
+ do {
+ var alt108=2;
+ var LA108_0 = this.input.LA(1);
+
+ if ( (LA108_0==L_Pragma) ) {
+ alt108=1;
+ }
+
+
+ switch (alt108) {
+ case 1 :
+ // XQueryParser.g:645:13: L_Pragma
+ L_Pragma255=this.match(this.input,L_Pragma,XQueryParser.FOLLOW_L_Pragma_in_p_ExtensionExpr5818); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ L_Pragma255_tree = this.adaptor.create(L_Pragma255);
+ this.adaptor.addChild(root_0, L_Pragma255_tree);
+ }
+
+
+ break;
+
+ default :
+ if ( cnt108 >= 1 ) {
+ break loop108;
+ }
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var eee = new org.antlr.runtime.EarlyExitException(108, this.input);
+ throw eee;
+ }
+ cnt108++;
+ } while (true);
+
+ LBRACKET256=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_ExtensionExpr5821); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET256_tree = this.adaptor.create(LBRACKET256);
+ this.adaptor.addChild(root_0, LBRACKET256_tree);
+ }
+ // XQueryParser.g:645:32: ( pm_Expr )?
+ var alt109=2;
+ var LA109_0 = this.input.LA(1);
+
+ if ( ((LA109_0>=ANCESTOR && LA109_0<=EXIT)||(LA109_0>=SEQUENTIAL && LA109_0<=MAINTAINED)||(LA109_0>=MUTABLE && LA109_0<=LPAREN)||LA109_0==DOLLAR||(LA109_0>=STAR && LA109_0<=SMALLER)||(LA109_0>=SLASH && LA109_0<=DOT_DOT)||LA109_0==ATTR_SIGN||(LA109_0>=APOS && LA109_0<=QUOT)||LA109_0==L_NCName||(LA109_0>=L_Pragma && LA109_0<=L_DoubleLiteral)||(LA109_0>=LETDOLLAR && LA109_0<=EXPLICITLY)) ) {
+ alt109=1;
+ }
+ switch (alt109) {
+ case 1 :
+ // XQueryParser.g:645:32: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_ExtensionExpr5823);
+ pm_Expr257=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr257.getTree());
+
+
+ break;
+
+ }
+
+ RBRACKET258=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_ExtensionExpr5826); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET258_tree = this.adaptor.create(RBRACKET258);
+ this.adaptor.addChild(root_0, RBRACKET258_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PathExpr_return: (function() {
+ XQueryParser.p_PathExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PathExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:656:1: p_PathExpr : ( ( SLASH p_RelativePathExpr )=> ( SLASH p_RelativePathExpr ) | SLASH | SLASH_SLASH p_RelativePathExpr | p_RelativePathExpr );
+ // $ANTLR start "p_PathExpr"
+ p_PathExpr: function() {
+ var retval = new XQueryParser.p_PathExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SLASH259 = null;
+ var SLASH261 = null;
+ var SLASH_SLASH262 = null;
+ var p_RelativePathExpr260 = null;
+ var p_RelativePathExpr263 = null;
+ var p_RelativePathExpr264 = null;
+
+ var SLASH259_tree=null;
+ var SLASH261_tree=null;
+ var SLASH_SLASH262_tree=null;
+
+ try {
+ // XQueryParser.g:657:9: ( ( SLASH p_RelativePathExpr )=> ( SLASH p_RelativePathExpr ) | SLASH | SLASH_SLASH p_RelativePathExpr | p_RelativePathExpr )
+ var alt110=4;
+ alt110 = this.dfa110.predict(this.input);
+ switch (alt110) {
+ case 1 :
+ // XQueryParser.g:657:11: ( SLASH p_RelativePathExpr )=> ( SLASH p_RelativePathExpr )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:657:41: ( SLASH p_RelativePathExpr )
+ // XQueryParser.g:657:42: SLASH p_RelativePathExpr
+ SLASH259=this.match(this.input,SLASH,XQueryParser.FOLLOW_SLASH_in_p_PathExpr5868); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SLASH259_tree = this.adaptor.create(SLASH259);
+ this.adaptor.addChild(root_0, SLASH259_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_RelativePathExpr_in_p_PathExpr5870);
+ p_RelativePathExpr260=this.p_RelativePathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RelativePathExpr260.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:658:11: SLASH
+ root_0 = this.adaptor.nil();
+
+ SLASH261=this.match(this.input,SLASH,XQueryParser.FOLLOW_SLASH_in_p_PathExpr5883); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SLASH261_tree = this.adaptor.create(SLASH261);
+ this.adaptor.addChild(root_0, SLASH261_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:659:11: SLASH_SLASH p_RelativePathExpr
+ root_0 = this.adaptor.nil();
+
+ SLASH_SLASH262=this.match(this.input,SLASH_SLASH,XQueryParser.FOLLOW_SLASH_SLASH_in_p_PathExpr5895); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SLASH_SLASH262_tree = this.adaptor.create(SLASH_SLASH262);
+ this.adaptor.addChild(root_0, SLASH_SLASH262_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_RelativePathExpr_in_p_PathExpr5897);
+ p_RelativePathExpr263=this.p_RelativePathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RelativePathExpr263.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:660:11: p_RelativePathExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_RelativePathExpr_in_p_PathExpr5909);
+ p_RelativePathExpr264=this.p_RelativePathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_RelativePathExpr264.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_RelativePathExpr_return: (function() {
+ XQueryParser.p_RelativePathExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_RelativePathExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:664:1: p_RelativePathExpr : p_StepExpr ( ( SLASH | SLASH_SLASH ) p_StepExpr )* ;
+ // $ANTLR start "p_RelativePathExpr"
+ p_RelativePathExpr: function() {
+ var retval = new XQueryParser.p_RelativePathExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set266 = null;
+ var p_StepExpr265 = null;
+ var p_StepExpr267 = null;
+
+ var set266_tree=null;
+
+ try {
+ // XQueryParser.g:665:9: ( p_StepExpr ( ( SLASH | SLASH_SLASH ) p_StepExpr )* )
+ // XQueryParser.g:665:11: p_StepExpr ( ( SLASH | SLASH_SLASH ) p_StepExpr )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StepExpr_in_p_RelativePathExpr5937);
+ p_StepExpr265=this.p_StepExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StepExpr265.getTree());
+ // XQueryParser.g:665:22: ( ( SLASH | SLASH_SLASH ) p_StepExpr )*
+ loop111:
+ do {
+ var alt111=2;
+ var LA111_0 = this.input.LA(1);
+
+ if ( ((LA111_0>=SLASH && LA111_0<=SLASH_SLASH)) ) {
+ alt111=1;
+ }
+
+
+ switch (alt111) {
+ case 1 :
+ // XQueryParser.g:665:23: ( SLASH | SLASH_SLASH ) p_StepExpr
+ set266=this.input.LT(1);
+ if ( (this.input.LA(1)>=SLASH && this.input.LA(1)<=SLASH_SLASH) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set266));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StepExpr_in_p_RelativePathExpr5948);
+ p_StepExpr267=this.p_StepExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StepExpr267.getTree());
+
+
+ break;
+
+ default :
+ break loop111;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_StepExpr_return: (function() {
+ XQueryParser.p_StepExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_StepExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:669:1: p_StepExpr : ( p_AxisStep | p_FilterExpr );
+ // $ANTLR start "p_StepExpr"
+ p_StepExpr: function() {
+ var retval = new XQueryParser.p_StepExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_AxisStep268 = null;
+ var p_FilterExpr269 = null;
+
+
+ try {
+ // XQueryParser.g:670:9: ( p_AxisStep | p_FilterExpr )
+ var alt112=2;
+ alt112 = this.dfa112.predict(this.input);
+ switch (alt112) {
+ case 1 :
+ // XQueryParser.g:670:11: p_AxisStep
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AxisStep_in_p_StepExpr5976);
+ p_AxisStep268=this.p_AxisStep();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AxisStep268.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:671:11: p_FilterExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_FilterExpr_in_p_StepExpr5988);
+ p_FilterExpr269=this.p_FilterExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_FilterExpr269.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AxisStep_return: (function() {
+ XQueryParser.p_AxisStep_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AxisStep_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:675:1: p_AxisStep : ( p_ReverseStep | p_ForwardStep ) p_PredicateList ;
+ // $ANTLR start "p_AxisStep"
+ p_AxisStep: function() {
+ var retval = new XQueryParser.p_AxisStep_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ReverseStep270 = null;
+ var p_ForwardStep271 = null;
+ var p_PredicateList272 = null;
+
+
+ try {
+ // XQueryParser.g:676:9: ( ( p_ReverseStep | p_ForwardStep ) p_PredicateList )
+ // XQueryParser.g:676:11: ( p_ReverseStep | p_ForwardStep ) p_PredicateList
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:676:11: ( p_ReverseStep | p_ForwardStep )
+ var alt113=2;
+ switch ( this.input.LA(1) ) {
+ case PARENT:
+ var LA113_1 = this.input.LA(2);
+
+ if ( (LA113_1==COLON_COLON) ) {
+ alt113=1;
+ }
+ else if ( (LA113_1==EOF||(LA113_1>=AND && LA113_1<=ASCENDING)||(LA113_1>=BY && LA113_1<=CASTABLE)||LA113_1==COLLATION||LA113_1==DEFAULT||(LA113_1>=DESCENDING && LA113_1<=DIV)||(LA113_1>=ELSE && LA113_1<=EMPTY)||LA113_1==EQ||LA113_1==EXCEPT||LA113_1==FOR||LA113_1==GE||(LA113_1>=GT && LA113_1<=IDIV)||(LA113_1>=INSTANCE && LA113_1<=IS)||LA113_1==LE||(LA113_1>=LT && LA113_1<=MOD)||LA113_1==NE||(LA113_1>=OR && LA113_1<=ORDER)||(LA113_1>=RETURN && LA113_1<=SATISFIES)||LA113_1==STABLE||(LA113_1>=TO && LA113_1<=TREAT)||LA113_1==UNION||LA113_1==WHERE||LA113_1==COUNT||(LA113_1>=END && LA113_1<=GROUP)||LA113_1==ONLY||LA113_1==START||(LA113_1>=AFTER && LA113_1<=BEFORE)||LA113_1==INTO||LA113_1==MODIFY||LA113_1==WITH||LA113_1==RPAREN||(LA113_1>=RBRACKET && LA113_1<=EQUAL)||LA113_1==NOTEQUAL||LA113_1==COMMA||(LA113_1>=STAR && LA113_1<=SLASH_SLASH)||LA113_1==COLON||(LA113_1>=SEMICOLON && LA113_1<=VBAR)||LA113_1==LETDOLLAR) ) {
+ alt113=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 1, this.input);
+
+ throw nvae;
+ }
+ break;
+ case ANCESTOR:
+ var LA113_2 = this.input.LA(2);
+
+ if ( (LA113_2==COLON_COLON) ) {
+ alt113=1;
+ }
+ else if ( (LA113_2==EOF||(LA113_2>=AND && LA113_2<=ASCENDING)||(LA113_2>=BY && LA113_2<=CASTABLE)||LA113_2==COLLATION||LA113_2==DEFAULT||(LA113_2>=DESCENDING && LA113_2<=DIV)||(LA113_2>=ELSE && LA113_2<=EMPTY)||LA113_2==EQ||LA113_2==EXCEPT||LA113_2==FOR||LA113_2==GE||(LA113_2>=GT && LA113_2<=IDIV)||(LA113_2>=INSTANCE && LA113_2<=IS)||LA113_2==LE||(LA113_2>=LT && LA113_2<=MOD)||LA113_2==NE||(LA113_2>=OR && LA113_2<=ORDER)||(LA113_2>=RETURN && LA113_2<=SATISFIES)||LA113_2==STABLE||(LA113_2>=TO && LA113_2<=TREAT)||LA113_2==UNION||LA113_2==WHERE||LA113_2==COUNT||(LA113_2>=END && LA113_2<=GROUP)||LA113_2==ONLY||LA113_2==START||(LA113_2>=AFTER && LA113_2<=BEFORE)||LA113_2==INTO||LA113_2==MODIFY||LA113_2==WITH||LA113_2==RPAREN||(LA113_2>=RBRACKET && LA113_2<=EQUAL)||LA113_2==NOTEQUAL||LA113_2==COMMA||(LA113_2>=STAR && LA113_2<=SLASH_SLASH)||LA113_2==COLON||(LA113_2>=SEMICOLON && LA113_2<=VBAR)||LA113_2==LETDOLLAR) ) {
+ alt113=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 2, this.input);
+
+ throw nvae;
+ }
+ break;
+ case PRECEDING_SIBLING:
+ var LA113_3 = this.input.LA(2);
+
+ if ( (LA113_3==COLON_COLON) ) {
+ alt113=1;
+ }
+ else if ( (LA113_3==EOF||(LA113_3>=AND && LA113_3<=ASCENDING)||(LA113_3>=BY && LA113_3<=CASTABLE)||LA113_3==COLLATION||LA113_3==DEFAULT||(LA113_3>=DESCENDING && LA113_3<=DIV)||(LA113_3>=ELSE && LA113_3<=EMPTY)||LA113_3==EQ||LA113_3==EXCEPT||LA113_3==FOR||LA113_3==GE||(LA113_3>=GT && LA113_3<=IDIV)||(LA113_3>=INSTANCE && LA113_3<=IS)||LA113_3==LE||(LA113_3>=LT && LA113_3<=MOD)||LA113_3==NE||(LA113_3>=OR && LA113_3<=ORDER)||(LA113_3>=RETURN && LA113_3<=SATISFIES)||LA113_3==STABLE||(LA113_3>=TO && LA113_3<=TREAT)||LA113_3==UNION||LA113_3==WHERE||LA113_3==COUNT||(LA113_3>=END && LA113_3<=GROUP)||LA113_3==ONLY||LA113_3==START||(LA113_3>=AFTER && LA113_3<=BEFORE)||LA113_3==INTO||LA113_3==MODIFY||LA113_3==WITH||LA113_3==RPAREN||(LA113_3>=RBRACKET && LA113_3<=EQUAL)||LA113_3==NOTEQUAL||LA113_3==COMMA||(LA113_3>=STAR && LA113_3<=SLASH_SLASH)||LA113_3==COLON||(LA113_3>=SEMICOLON && LA113_3<=VBAR)||LA113_3==LETDOLLAR) ) {
+ alt113=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 3, this.input);
+
+ throw nvae;
+ }
+ break;
+ case PRECEDING:
+ var LA113_4 = this.input.LA(2);
+
+ if ( (LA113_4==COLON_COLON) ) {
+ alt113=1;
+ }
+ else if ( (LA113_4==EOF||(LA113_4>=AND && LA113_4<=ASCENDING)||(LA113_4>=BY && LA113_4<=CASTABLE)||LA113_4==COLLATION||LA113_4==DEFAULT||(LA113_4>=DESCENDING && LA113_4<=DIV)||(LA113_4>=ELSE && LA113_4<=EMPTY)||LA113_4==EQ||LA113_4==EXCEPT||LA113_4==FOR||LA113_4==GE||(LA113_4>=GT && LA113_4<=IDIV)||(LA113_4>=INSTANCE && LA113_4<=IS)||LA113_4==LE||(LA113_4>=LT && LA113_4<=MOD)||LA113_4==NE||(LA113_4>=OR && LA113_4<=ORDER)||(LA113_4>=RETURN && LA113_4<=SATISFIES)||LA113_4==STABLE||(LA113_4>=TO && LA113_4<=TREAT)||LA113_4==UNION||LA113_4==WHERE||LA113_4==COUNT||(LA113_4>=END && LA113_4<=GROUP)||LA113_4==ONLY||LA113_4==START||(LA113_4>=AFTER && LA113_4<=BEFORE)||LA113_4==INTO||LA113_4==MODIFY||LA113_4==WITH||LA113_4==RPAREN||(LA113_4>=RBRACKET && LA113_4<=EQUAL)||LA113_4==NOTEQUAL||LA113_4==COMMA||(LA113_4>=STAR && LA113_4<=SLASH_SLASH)||LA113_4==COLON||(LA113_4>=SEMICOLON && LA113_4<=VBAR)||LA113_4==LETDOLLAR) ) {
+ alt113=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 4, this.input);
+
+ throw nvae;
+ }
+ break;
+ case ANCESTOR_OR_SELF:
+ var LA113_5 = this.input.LA(2);
+
+ if ( (LA113_5==COLON_COLON) ) {
+ alt113=1;
+ }
+ else if ( (LA113_5==EOF||(LA113_5>=AND && LA113_5<=ASCENDING)||(LA113_5>=BY && LA113_5<=CASTABLE)||LA113_5==COLLATION||LA113_5==DEFAULT||(LA113_5>=DESCENDING && LA113_5<=DIV)||(LA113_5>=ELSE && LA113_5<=EMPTY)||LA113_5==EQ||LA113_5==EXCEPT||LA113_5==FOR||LA113_5==GE||(LA113_5>=GT && LA113_5<=IDIV)||(LA113_5>=INSTANCE && LA113_5<=IS)||LA113_5==LE||(LA113_5>=LT && LA113_5<=MOD)||LA113_5==NE||(LA113_5>=OR && LA113_5<=ORDER)||(LA113_5>=RETURN && LA113_5<=SATISFIES)||LA113_5==STABLE||(LA113_5>=TO && LA113_5<=TREAT)||LA113_5==UNION||LA113_5==WHERE||LA113_5==COUNT||(LA113_5>=END && LA113_5<=GROUP)||LA113_5==ONLY||LA113_5==START||(LA113_5>=AFTER && LA113_5<=BEFORE)||LA113_5==INTO||LA113_5==MODIFY||LA113_5==WITH||LA113_5==RPAREN||(LA113_5>=RBRACKET && LA113_5<=EQUAL)||LA113_5==NOTEQUAL||LA113_5==COMMA||(LA113_5>=STAR && LA113_5<=SLASH_SLASH)||LA113_5==COLON||(LA113_5>=SEMICOLON && LA113_5<=VBAR)||LA113_5==LETDOLLAR) ) {
+ alt113=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 5, this.input);
+
+ throw nvae;
+ }
+ break;
+ case DOT_DOT:
+ alt113=1;
+ break;
+ case AND:
+ case AS:
+ case ASCENDING:
+ case AT:
+ case ATTRIBUTE:
+ case BASE_URI:
+ case BOUNDARY_SPACE:
+ case BY:
+ case CASE:
+ case CAST:
+ case CASTABLE:
+ case CHILD:
+ case COLLATION:
+ case COMMENT:
+ case CONSTRUCTION:
+ case COPY_NAMESPACES:
+ case DECLARE:
+ case DEFAULT:
+ case DESCENDANT:
+ case DESCENDANT_OR_SELF:
+ case DESCENDING:
+ case DIV:
+ case DOCUMENT:
+ case DOCUMENT_NODE:
+ case ELEMENT:
+ case ELSE:
+ case EMPTY:
+ case EMPTY_SEQUENCE:
+ case ENCODING:
+ case EQ:
+ case EVERY:
+ case EXCEPT:
+ case EXTERNAL:
+ case FOLLOWING:
+ case FOLLOWING_SIBLING:
+ case FOR:
+ case FUNCTION:
+ case GE:
+ case GREATEST:
+ case GT:
+ case IDIV:
+ case IF:
+ case IMPORT:
+ case IN:
+ case INHERIT:
+ case INSTANCE:
+ case INTERSECT:
+ case IS:
+ case ITEM:
+ case LAX:
+ case LE:
+ case LEAST:
+ case LET:
+ case LT:
+ case MOD:
+ case MODULE:
+ case NAMESPACE:
+ case NE:
+ case NO_INHERIT:
+ case NO_PRESERVE:
+ case NODE:
+ case OF:
+ case OPTION:
+ case OR:
+ case ORDER:
+ case ORDERED:
+ case ORDERING:
+ case PRESERVE:
+ case PROCESSING_INSTRUCTION:
+ case RETURN:
+ case SATISFIES:
+ case SCHEMA:
+ case SCHEMA_ATTRIBUTE:
+ case SCHEMA_ELEMENT:
+ case SELF:
+ case SOME:
+ case STABLE:
+ case STRICT:
+ case STRIP:
+ case TEXT:
+ case THEN:
+ case TO:
+ case TREAT:
+ case TYPESWITCH:
+ case UNION:
+ case UNORDERED:
+ case VALIDATE:
+ case VARIABLE:
+ case VERSION:
+ case WHERE:
+ case XQUERY:
+ case CATCH:
+ case CONTEXT:
+ case COUNT:
+ case DECIMAL_FORMAT:
+ case DECIMAL_SEPARATOR:
+ case DIGIT:
+ case END:
+ case GROUP:
+ case GROUPING_SEPARATOR:
+ case INFINITY:
+ case MINUS_SIGN:
+ case NAMESPACE_NODE:
+ case NAN:
+ case NEXT:
+ case ONLY:
+ case OUTER:
+ case PATTERN_SEPARATOR:
+ case PERCENT:
+ case PER_MILLE:
+ case PREVIOUS:
+ case SLIDING:
+ case START:
+ case TRY:
+ case TUMBLING:
+ case WHEN:
+ case WINDOW:
+ case ZERO_DIGIT:
+ case AFTER:
+ case BEFORE:
+ case COPY:
+ case DELETE:
+ case FIRST:
+ case INSERT:
+ case INTO:
+ case LAST:
+ case MODIFY:
+ case NODES:
+ case RENAME:
+ case REPLACE:
+ case REVALIDATION:
+ case SKIP:
+ case UPDATING:
+ case VALUE:
+ case WITH:
+ case BLOCK:
+ case CONSTANT:
+ case EXIT:
+ case SEQUENTIAL:
+ case SET:
+ case SIMPLE:
+ case WHILE:
+ case EVAL:
+ case USING:
+ case APPEND_ONLY:
+ case AUTOMATICALLY:
+ case CHECK:
+ case COLLECTION:
+ case CONSTRAINT:
+ case CONST:
+ case EQUALITY:
+ case FOREACH:
+ case FOREIGN:
+ case FROM:
+ case INDEX:
+ case INTEGRITY:
+ case KEY:
+ case MAINTAINED:
+ case MUTABLE:
+ case NON:
+ case ON:
+ case QUEUE:
+ case RANGE:
+ case READ_ONLY:
+ case UNIQUE:
+ case BINARY:
+ case PRIVATE:
+ case AMP_ER:
+ case APOS_ER:
+ case QUOT_ER:
+ case STAR:
+ case ATTR_SIGN:
+ case L_NCName:
+ case EXPLICITLY:
+ alt113=2;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 113, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt113) {
+ case 1 :
+ // XQueryParser.g:676:12: p_ReverseStep
+ this.pushFollow(XQueryParser.FOLLOW_p_ReverseStep_in_p_AxisStep6015);
+ p_ReverseStep270=this.p_ReverseStep();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ReverseStep270.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:676:28: p_ForwardStep
+ this.pushFollow(XQueryParser.FOLLOW_p_ForwardStep_in_p_AxisStep6019);
+ p_ForwardStep271=this.p_ForwardStep();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ForwardStep271.getTree());
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PredicateList_in_p_AxisStep6022);
+ p_PredicateList272=this.p_PredicateList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PredicateList272.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ForwardStep_return: (function() {
+ XQueryParser.p_ForwardStep_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ForwardStep_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:680:1: p_ForwardStep : ( ( p_ForwardAxis p_NodeTest ) | p_AbbrevForwardStep );
+ // $ANTLR start "p_ForwardStep"
+ p_ForwardStep: function() {
+ var retval = new XQueryParser.p_ForwardStep_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ForwardAxis273 = null;
+ var p_NodeTest274 = null;
+ var p_AbbrevForwardStep275 = null;
+
+
+ try {
+ // XQueryParser.g:681:9: ( ( p_ForwardAxis p_NodeTest ) | p_AbbrevForwardStep )
+ var alt114=2;
+ alt114 = this.dfa114.predict(this.input);
+ switch (alt114) {
+ case 1 :
+ // XQueryParser.g:681:11: ( p_ForwardAxis p_NodeTest )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:681:11: ( p_ForwardAxis p_NodeTest )
+ // XQueryParser.g:681:12: p_ForwardAxis p_NodeTest
+ this.pushFollow(XQueryParser.FOLLOW_p_ForwardAxis_in_p_ForwardStep6049);
+ p_ForwardAxis273=this.p_ForwardAxis();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ForwardAxis273.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_NodeTest_in_p_ForwardStep6051);
+ p_NodeTest274=this.p_NodeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NodeTest274.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:681:40: p_AbbrevForwardStep
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AbbrevForwardStep_in_p_ForwardStep6056);
+ p_AbbrevForwardStep275=this.p_AbbrevForwardStep();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AbbrevForwardStep275.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ForwardAxis_return: (function() {
+ XQueryParser.p_ForwardAxis_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ForwardAxis_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:685:1: p_ForwardAxis : ( CHILD COLON_COLON | DESCENDANT COLON_COLON | ATTRIBUTE COLON_COLON | SELF COLON_COLON | DESCENDANT_OR_SELF COLON_COLON | FOLLOWING_SIBLING COLON_COLON | FOLLOWING COLON_COLON );
+ // $ANTLR start "p_ForwardAxis"
+ p_ForwardAxis: function() {
+ var retval = new XQueryParser.p_ForwardAxis_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var CHILD276 = null;
+ var COLON_COLON277 = null;
+ var DESCENDANT278 = null;
+ var COLON_COLON279 = null;
+ var ATTRIBUTE280 = null;
+ var COLON_COLON281 = null;
+ var SELF282 = null;
+ var COLON_COLON283 = null;
+ var DESCENDANT_OR_SELF284 = null;
+ var COLON_COLON285 = null;
+ var FOLLOWING_SIBLING286 = null;
+ var COLON_COLON287 = null;
+ var FOLLOWING288 = null;
+ var COLON_COLON289 = null;
+
+ var CHILD276_tree=null;
+ var COLON_COLON277_tree=null;
+ var DESCENDANT278_tree=null;
+ var COLON_COLON279_tree=null;
+ var ATTRIBUTE280_tree=null;
+ var COLON_COLON281_tree=null;
+ var SELF282_tree=null;
+ var COLON_COLON283_tree=null;
+ var DESCENDANT_OR_SELF284_tree=null;
+ var COLON_COLON285_tree=null;
+ var FOLLOWING_SIBLING286_tree=null;
+ var COLON_COLON287_tree=null;
+ var FOLLOWING288_tree=null;
+ var COLON_COLON289_tree=null;
+
+ try {
+ // XQueryParser.g:686:9: ( CHILD COLON_COLON | DESCENDANT COLON_COLON | ATTRIBUTE COLON_COLON | SELF COLON_COLON | DESCENDANT_OR_SELF COLON_COLON | FOLLOWING_SIBLING COLON_COLON | FOLLOWING COLON_COLON )
+ var alt115=7;
+ switch ( this.input.LA(1) ) {
+ case CHILD:
+ alt115=1;
+ break;
+ case DESCENDANT:
+ alt115=2;
+ break;
+ case ATTRIBUTE:
+ alt115=3;
+ break;
+ case SELF:
+ alt115=4;
+ break;
+ case DESCENDANT_OR_SELF:
+ alt115=5;
+ break;
+ case FOLLOWING_SIBLING:
+ alt115=6;
+ break;
+ case FOLLOWING:
+ alt115=7;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 115, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt115) {
+ case 1 :
+ // XQueryParser.g:686:11: CHILD COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ CHILD276=this.match(this.input,CHILD,XQueryParser.FOLLOW_CHILD_in_p_ForwardAxis6082); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ CHILD276_tree = this.adaptor.create(CHILD276);
+ this.adaptor.addChild(root_0, CHILD276_tree);
+ }
+ COLON_COLON277=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6084); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON277_tree = this.adaptor.create(COLON_COLON277);
+ this.adaptor.addChild(root_0, COLON_COLON277_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:687:11: DESCENDANT COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ DESCENDANT278=this.match(this.input,DESCENDANT,XQueryParser.FOLLOW_DESCENDANT_in_p_ForwardAxis6096); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DESCENDANT278_tree = this.adaptor.create(DESCENDANT278);
+ this.adaptor.addChild(root_0, DESCENDANT278_tree);
+ }
+ COLON_COLON279=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6098); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON279_tree = this.adaptor.create(COLON_COLON279);
+ this.adaptor.addChild(root_0, COLON_COLON279_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:688:11: ATTRIBUTE COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ ATTRIBUTE280=this.match(this.input,ATTRIBUTE,XQueryParser.FOLLOW_ATTRIBUTE_in_p_ForwardAxis6110); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ATTRIBUTE280_tree = this.adaptor.create(ATTRIBUTE280);
+ this.adaptor.addChild(root_0, ATTRIBUTE280_tree);
+ }
+ COLON_COLON281=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6112); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON281_tree = this.adaptor.create(COLON_COLON281);
+ this.adaptor.addChild(root_0, COLON_COLON281_tree);
+ }
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:689:11: SELF COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ SELF282=this.match(this.input,SELF,XQueryParser.FOLLOW_SELF_in_p_ForwardAxis6124); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SELF282_tree = this.adaptor.create(SELF282);
+ this.adaptor.addChild(root_0, SELF282_tree);
+ }
+ COLON_COLON283=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6126); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON283_tree = this.adaptor.create(COLON_COLON283);
+ this.adaptor.addChild(root_0, COLON_COLON283_tree);
+ }
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:690:11: DESCENDANT_OR_SELF COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ DESCENDANT_OR_SELF284=this.match(this.input,DESCENDANT_OR_SELF,XQueryParser.FOLLOW_DESCENDANT_OR_SELF_in_p_ForwardAxis6138); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DESCENDANT_OR_SELF284_tree = this.adaptor.create(DESCENDANT_OR_SELF284);
+ this.adaptor.addChild(root_0, DESCENDANT_OR_SELF284_tree);
+ }
+ COLON_COLON285=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6140); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON285_tree = this.adaptor.create(COLON_COLON285);
+ this.adaptor.addChild(root_0, COLON_COLON285_tree);
+ }
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:691:11: FOLLOWING_SIBLING COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ FOLLOWING_SIBLING286=this.match(this.input,FOLLOWING_SIBLING,XQueryParser.FOLLOW_FOLLOWING_SIBLING_in_p_ForwardAxis6152); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ FOLLOWING_SIBLING286_tree = this.adaptor.create(FOLLOWING_SIBLING286);
+ this.adaptor.addChild(root_0, FOLLOWING_SIBLING286_tree);
+ }
+ COLON_COLON287=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6154); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON287_tree = this.adaptor.create(COLON_COLON287);
+ this.adaptor.addChild(root_0, COLON_COLON287_tree);
+ }
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:692:11: FOLLOWING COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ FOLLOWING288=this.match(this.input,FOLLOWING,XQueryParser.FOLLOW_FOLLOWING_in_p_ForwardAxis6166); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ FOLLOWING288_tree = this.adaptor.create(FOLLOWING288);
+ this.adaptor.addChild(root_0, FOLLOWING288_tree);
+ }
+ COLON_COLON289=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ForwardAxis6168); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON289_tree = this.adaptor.create(COLON_COLON289);
+ this.adaptor.addChild(root_0, COLON_COLON289_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AbbrevForwardStep_return: (function() {
+ XQueryParser.p_AbbrevForwardStep_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AbbrevForwardStep_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:696:1: p_AbbrevForwardStep : ( ATTR_SIGN )? p_NodeTest ;
+ // $ANTLR start "p_AbbrevForwardStep"
+ p_AbbrevForwardStep: function() {
+ var retval = new XQueryParser.p_AbbrevForwardStep_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ATTR_SIGN290 = null;
+ var p_NodeTest291 = null;
+
+ var ATTR_SIGN290_tree=null;
+
+ try {
+ // XQueryParser.g:697:9: ( ( ATTR_SIGN )? p_NodeTest )
+ // XQueryParser.g:697:11: ( ATTR_SIGN )? p_NodeTest
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:697:11: ( ATTR_SIGN )?
+ var alt116=2;
+ var LA116_0 = this.input.LA(1);
+
+ if ( (LA116_0==ATTR_SIGN) ) {
+ alt116=1;
+ }
+ switch (alt116) {
+ case 1 :
+ // XQueryParser.g:697:11: ATTR_SIGN
+ ATTR_SIGN290=this.match(this.input,ATTR_SIGN,XQueryParser.FOLLOW_ATTR_SIGN_in_p_AbbrevForwardStep6194); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ATTR_SIGN290_tree = this.adaptor.create(ATTR_SIGN290);
+ this.adaptor.addChild(root_0, ATTR_SIGN290_tree);
+ }
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NodeTest_in_p_AbbrevForwardStep6197);
+ p_NodeTest291=this.p_NodeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NodeTest291.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ReverseStep_return: (function() {
+ XQueryParser.p_ReverseStep_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ReverseStep_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:701:1: p_ReverseStep : ( ( p_ReverseAxis p_NodeTest ) | p_AbbrevReverseStep );
+ // $ANTLR start "p_ReverseStep"
+ p_ReverseStep: function() {
+ var retval = new XQueryParser.p_ReverseStep_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ReverseAxis292 = null;
+ var p_NodeTest293 = null;
+ var p_AbbrevReverseStep294 = null;
+
+
+ try {
+ // XQueryParser.g:702:9: ( ( p_ReverseAxis p_NodeTest ) | p_AbbrevReverseStep )
+ var alt117=2;
+ var LA117_0 = this.input.LA(1);
+
+ if ( ((LA117_0>=ANCESTOR && LA117_0<=ANCESTOR_OR_SELF)||(LA117_0>=PARENT && LA117_0<=PRECEDING_SIBLING)) ) {
+ alt117=1;
+ }
+ else if ( (LA117_0==DOT_DOT) ) {
+ alt117=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 117, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt117) {
+ case 1 :
+ // XQueryParser.g:702:11: ( p_ReverseAxis p_NodeTest )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:702:11: ( p_ReverseAxis p_NodeTest )
+ // XQueryParser.g:702:12: p_ReverseAxis p_NodeTest
+ this.pushFollow(XQueryParser.FOLLOW_p_ReverseAxis_in_p_ReverseStep6224);
+ p_ReverseAxis292=this.p_ReverseAxis();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ReverseAxis292.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_NodeTest_in_p_ReverseStep6226);
+ p_NodeTest293=this.p_NodeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NodeTest293.getTree());
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:702:40: p_AbbrevReverseStep
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AbbrevReverseStep_in_p_ReverseStep6231);
+ p_AbbrevReverseStep294=this.p_AbbrevReverseStep();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AbbrevReverseStep294.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ReverseAxis_return: (function() {
+ XQueryParser.p_ReverseAxis_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ReverseAxis_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:706:1: p_ReverseAxis : ( PARENT COLON_COLON | ANCESTOR COLON_COLON | PRECEDING_SIBLING COLON_COLON | PRECEDING COLON_COLON | ANCESTOR_OR_SELF COLON_COLON );
+ // $ANTLR start "p_ReverseAxis"
+ p_ReverseAxis: function() {
+ var retval = new XQueryParser.p_ReverseAxis_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var PARENT295 = null;
+ var COLON_COLON296 = null;
+ var ANCESTOR297 = null;
+ var COLON_COLON298 = null;
+ var PRECEDING_SIBLING299 = null;
+ var COLON_COLON300 = null;
+ var PRECEDING301 = null;
+ var COLON_COLON302 = null;
+ var ANCESTOR_OR_SELF303 = null;
+ var COLON_COLON304 = null;
+
+ var PARENT295_tree=null;
+ var COLON_COLON296_tree=null;
+ var ANCESTOR297_tree=null;
+ var COLON_COLON298_tree=null;
+ var PRECEDING_SIBLING299_tree=null;
+ var COLON_COLON300_tree=null;
+ var PRECEDING301_tree=null;
+ var COLON_COLON302_tree=null;
+ var ANCESTOR_OR_SELF303_tree=null;
+ var COLON_COLON304_tree=null;
+
+ try {
+ // XQueryParser.g:707:9: ( PARENT COLON_COLON | ANCESTOR COLON_COLON | PRECEDING_SIBLING COLON_COLON | PRECEDING COLON_COLON | ANCESTOR_OR_SELF COLON_COLON )
+ var alt118=5;
+ switch ( this.input.LA(1) ) {
+ case PARENT:
+ alt118=1;
+ break;
+ case ANCESTOR:
+ alt118=2;
+ break;
+ case PRECEDING_SIBLING:
+ alt118=3;
+ break;
+ case PRECEDING:
+ alt118=4;
+ break;
+ case ANCESTOR_OR_SELF:
+ alt118=5;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 118, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt118) {
+ case 1 :
+ // XQueryParser.g:707:11: PARENT COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ PARENT295=this.match(this.input,PARENT,XQueryParser.FOLLOW_PARENT_in_p_ReverseAxis6257); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ PARENT295_tree = this.adaptor.create(PARENT295);
+ this.adaptor.addChild(root_0, PARENT295_tree);
+ }
+ COLON_COLON296=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ReverseAxis6259); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON296_tree = this.adaptor.create(COLON_COLON296);
+ this.adaptor.addChild(root_0, COLON_COLON296_tree);
+ }
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:708:11: ANCESTOR COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ ANCESTOR297=this.match(this.input,ANCESTOR,XQueryParser.FOLLOW_ANCESTOR_in_p_ReverseAxis6271); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ANCESTOR297_tree = this.adaptor.create(ANCESTOR297);
+ this.adaptor.addChild(root_0, ANCESTOR297_tree);
+ }
+ COLON_COLON298=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ReverseAxis6273); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON298_tree = this.adaptor.create(COLON_COLON298);
+ this.adaptor.addChild(root_0, COLON_COLON298_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:709:11: PRECEDING_SIBLING COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ PRECEDING_SIBLING299=this.match(this.input,PRECEDING_SIBLING,XQueryParser.FOLLOW_PRECEDING_SIBLING_in_p_ReverseAxis6285); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ PRECEDING_SIBLING299_tree = this.adaptor.create(PRECEDING_SIBLING299);
+ this.adaptor.addChild(root_0, PRECEDING_SIBLING299_tree);
+ }
+ COLON_COLON300=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ReverseAxis6287); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON300_tree = this.adaptor.create(COLON_COLON300);
+ this.adaptor.addChild(root_0, COLON_COLON300_tree);
+ }
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:710:11: PRECEDING COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ PRECEDING301=this.match(this.input,PRECEDING,XQueryParser.FOLLOW_PRECEDING_in_p_ReverseAxis6299); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ PRECEDING301_tree = this.adaptor.create(PRECEDING301);
+ this.adaptor.addChild(root_0, PRECEDING301_tree);
+ }
+ COLON_COLON302=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ReverseAxis6301); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON302_tree = this.adaptor.create(COLON_COLON302);
+ this.adaptor.addChild(root_0, COLON_COLON302_tree);
+ }
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:711:11: ANCESTOR_OR_SELF COLON_COLON
+ root_0 = this.adaptor.nil();
+
+ ANCESTOR_OR_SELF303=this.match(this.input,ANCESTOR_OR_SELF,XQueryParser.FOLLOW_ANCESTOR_OR_SELF_in_p_ReverseAxis6313); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ANCESTOR_OR_SELF303_tree = this.adaptor.create(ANCESTOR_OR_SELF303);
+ this.adaptor.addChild(root_0, ANCESTOR_OR_SELF303_tree);
+ }
+ COLON_COLON304=this.match(this.input,COLON_COLON,XQueryParser.FOLLOW_COLON_COLON_in_p_ReverseAxis6315); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON_COLON304_tree = this.adaptor.create(COLON_COLON304);
+ this.adaptor.addChild(root_0, COLON_COLON304_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AbbrevReverseStep_return: (function() {
+ XQueryParser.p_AbbrevReverseStep_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AbbrevReverseStep_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:715:1: p_AbbrevReverseStep : DOT_DOT ;
+ // $ANTLR start "p_AbbrevReverseStep"
+ p_AbbrevReverseStep: function() {
+ var retval = new XQueryParser.p_AbbrevReverseStep_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOT_DOT305 = null;
+
+ var DOT_DOT305_tree=null;
+
+ try {
+ // XQueryParser.g:716:9: ( DOT_DOT )
+ // XQueryParser.g:716:11: DOT_DOT
+ root_0 = this.adaptor.nil();
+
+ DOT_DOT305=this.match(this.input,DOT_DOT,XQueryParser.FOLLOW_DOT_DOT_in_p_AbbrevReverseStep6341); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOT_DOT305_tree = this.adaptor.create(DOT_DOT305);
+ this.adaptor.addChild(root_0, DOT_DOT305_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NodeTest_return: (function() {
+ XQueryParser.p_NodeTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NodeTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:720:1: p_NodeTest : ( p_KindTest | p_NameTest );
+ // $ANTLR start "p_NodeTest"
+ p_NodeTest: function() {
+ var retval = new XQueryParser.p_NodeTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_KindTest306 = null;
+ var p_NameTest307 = null;
+
+
+ try {
+ // XQueryParser.g:721:9: ( p_KindTest | p_NameTest )
+ var alt119=2;
+ alt119 = this.dfa119.predict(this.input);
+ switch (alt119) {
+ case 1 :
+ // XQueryParser.g:721:11: p_KindTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_KindTest_in_p_NodeTest6367);
+ p_KindTest306=this.p_KindTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_KindTest306.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:721:24: p_NameTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NameTest_in_p_NodeTest6371);
+ p_NameTest307=this.p_NameTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NameTest307.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NameTest_return: (function() {
+ XQueryParser.p_NameTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NameTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:725:1: p_NameTest : ( p_QName | p_Wildcard );
+ // $ANTLR start "p_NameTest"
+ p_NameTest: function() {
+ var retval = new XQueryParser.p_NameTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName308 = null;
+ var p_Wildcard309 = null;
+
+
+ try {
+ // XQueryParser.g:726:9: ( p_QName | p_Wildcard )
+ var alt120=2;
+ var LA120_0 = this.input.LA(1);
+
+ if ( ((LA120_0>=ANCESTOR && LA120_0<=EXIT)||(LA120_0>=SEQUENTIAL && LA120_0<=MAINTAINED)||(LA120_0>=MUTABLE && LA120_0<=QUOT_ER)||LA120_0==L_NCName||LA120_0==EXPLICITLY) ) {
+ var LA120_1 = this.input.LA(2);
+
+ if ( (LA120_1==COLON) ) {
+ var LA120_3 = this.input.LA(3);
+
+ if ( (LA120_3==STAR) ) {
+ alt120=2;
+ }
+ else if ( ((LA120_3>=ANCESTOR && LA120_3<=EXIT)||(LA120_3>=SEQUENTIAL && LA120_3<=MAINTAINED)||(LA120_3>=MUTABLE && LA120_3<=QUOT_ER)||LA120_3==L_NCName||LA120_3==EXPLICITLY) ) {
+ alt120=1;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 120, 3, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA120_1==EOF||(LA120_1>=AND && LA120_1<=ASCENDING)||(LA120_1>=BY && LA120_1<=CASTABLE)||LA120_1==COLLATION||LA120_1==DEFAULT||(LA120_1>=DESCENDING && LA120_1<=DIV)||(LA120_1>=ELSE && LA120_1<=EMPTY)||LA120_1==EQ||LA120_1==EXCEPT||LA120_1==FOR||LA120_1==GE||(LA120_1>=GT && LA120_1<=IDIV)||(LA120_1>=INSTANCE && LA120_1<=IS)||LA120_1==LE||(LA120_1>=LT && LA120_1<=MOD)||LA120_1==NE||(LA120_1>=OR && LA120_1<=ORDER)||(LA120_1>=RETURN && LA120_1<=SATISFIES)||LA120_1==STABLE||(LA120_1>=TO && LA120_1<=TREAT)||LA120_1==UNION||LA120_1==WHERE||LA120_1==COUNT||(LA120_1>=END && LA120_1<=GROUP)||LA120_1==ONLY||LA120_1==START||(LA120_1>=AFTER && LA120_1<=BEFORE)||LA120_1==INTO||LA120_1==MODIFY||LA120_1==WITH||(LA120_1>=LPAREN && LA120_1<=RPAREN)||(LA120_1>=LBRACKET && LA120_1<=EQUAL)||LA120_1==NOTEQUAL||LA120_1==COMMA||(LA120_1>=STAR && LA120_1<=SLASH_SLASH)||(LA120_1>=SEMICOLON && LA120_1<=VBAR)||LA120_1==LETDOLLAR) ) {
+ alt120=1;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 120, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( (LA120_0==STAR) ) {
+ alt120=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 120, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt120) {
+ case 1 :
+ // XQueryParser.g:726:11: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_NameTest6397);
+ p_QName308=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName308.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:726:21: p_Wildcard
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_Wildcard_in_p_NameTest6401);
+ p_Wildcard309=this.p_Wildcard();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Wildcard309.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Wildcard_return: (function() {
+ XQueryParser.p_Wildcard_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Wildcard_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:730:1: p_Wildcard : ( STAR ( COLON p_NCName )? | ( p_NCName COLON STAR ) );
+ // $ANTLR start "p_Wildcard"
+ p_Wildcard: function() {
+ var retval = new XQueryParser.p_Wildcard_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var STAR310 = null;
+ var COLON311 = null;
+ var COLON314 = null;
+ var STAR315 = null;
+ var p_NCName312 = null;
+ var p_NCName313 = null;
+
+ var STAR310_tree=null;
+ var COLON311_tree=null;
+ var COLON314_tree=null;
+ var STAR315_tree=null;
+
+ try {
+ // XQueryParser.g:731:9: ( STAR ( COLON p_NCName )? | ( p_NCName COLON STAR ) )
+ var alt122=2;
+ var LA122_0 = this.input.LA(1);
+
+ if ( (LA122_0==STAR) ) {
+ alt122=1;
+ }
+ else if ( ((LA122_0>=ANCESTOR && LA122_0<=EXIT)||(LA122_0>=SEQUENTIAL && LA122_0<=MAINTAINED)||(LA122_0>=MUTABLE && LA122_0<=QUOT_ER)||LA122_0==L_NCName||LA122_0==EXPLICITLY) ) {
+ alt122=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 122, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt122) {
+ case 1 :
+ // XQueryParser.g:731:11: STAR ( COLON p_NCName )?
+ root_0 = this.adaptor.nil();
+
+ STAR310=this.match(this.input,STAR,XQueryParser.FOLLOW_STAR_in_p_Wildcard6427); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ STAR310_tree = this.adaptor.create(STAR310);
+ this.adaptor.addChild(root_0, STAR310_tree);
+ }
+ // XQueryParser.g:731:16: ( COLON p_NCName )?
+ var alt121=2;
+ var LA121_0 = this.input.LA(1);
+
+ if ( (LA121_0==COLON) ) {
+ alt121=1;
+ }
+ switch (alt121) {
+ case 1 :
+ // XQueryParser.g:731:17: COLON p_NCName
+ COLON311=this.match(this.input,COLON,XQueryParser.FOLLOW_COLON_in_p_Wildcard6430); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON311_tree = this.adaptor.create(COLON311);
+ this.adaptor.addChild(root_0, COLON311_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_Wildcard6432);
+ p_NCName312=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName312.getTree());
+
+
+ break;
+
+ }
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:731:36: ( p_NCName COLON STAR )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:731:36: ( p_NCName COLON STAR )
+ // XQueryParser.g:731:37: p_NCName COLON STAR
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_Wildcard6439);
+ p_NCName313=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName313.getTree());
+ COLON314=this.match(this.input,COLON,XQueryParser.FOLLOW_COLON_in_p_Wildcard6441); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON314_tree = this.adaptor.create(COLON314);
+ this.adaptor.addChild(root_0, COLON314_tree);
+ }
+ STAR315=this.match(this.input,STAR,XQueryParser.FOLLOW_STAR_in_p_Wildcard6443); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ STAR315_tree = this.adaptor.create(STAR315);
+ this.adaptor.addChild(root_0, STAR315_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FilterExpr_return: (function() {
+ XQueryParser.p_FilterExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FilterExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:736:1: p_FilterExpr : p_PrimaryExpr p_PredicateList ;
+ // $ANTLR start "p_FilterExpr"
+ p_FilterExpr: function() {
+ var retval = new XQueryParser.p_FilterExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_PrimaryExpr316 = null;
+ var p_PredicateList317 = null;
+
+
+ try {
+ // XQueryParser.g:737:9: ( p_PrimaryExpr p_PredicateList )
+ // XQueryParser.g:737:13: p_PrimaryExpr p_PredicateList
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PrimaryExpr_in_p_FilterExpr6479);
+ p_PrimaryExpr316=this.p_PrimaryExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PrimaryExpr316.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_PredicateList_in_p_FilterExpr6481);
+ p_PredicateList317=this.p_PredicateList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PredicateList317.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PredicateList_return: (function() {
+ XQueryParser.p_PredicateList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PredicateList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:741:1: p_PredicateList : ( p_Predicate )* ;
+ // $ANTLR start "p_PredicateList"
+ p_PredicateList: function() {
+ var retval = new XQueryParser.p_PredicateList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_Predicate318 = null;
+
+
+ try {
+ // XQueryParser.g:742:9: ( ( p_Predicate )* )
+ // XQueryParser.g:742:13: ( p_Predicate )*
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:742:13: ( p_Predicate )*
+ loop123:
+ do {
+ var alt123=2;
+ var LA123_0 = this.input.LA(1);
+
+ if ( (LA123_0==LSQUARE) ) {
+ alt123=1;
+ }
+
+
+ switch (alt123) {
+ case 1 :
+ // XQueryParser.g:742:13: p_Predicate
+ this.pushFollow(XQueryParser.FOLLOW_p_Predicate_in_p_PredicateList6509);
+ p_Predicate318=this.p_Predicate();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Predicate318.getTree());
+
+
+ break;
+
+ default :
+ break loop123;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Predicate_return: (function() {
+ XQueryParser.p_Predicate_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Predicate_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:746:1: p_Predicate : LSQUARE pm_Expr RSQUARE ;
+ // $ANTLR start "p_Predicate"
+ p_Predicate: function() {
+ var retval = new XQueryParser.p_Predicate_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LSQUARE319 = null;
+ var RSQUARE321 = null;
+ var pm_Expr320 = null;
+
+ var LSQUARE319_tree=null;
+ var RSQUARE321_tree=null;
+
+ try {
+ // XQueryParser.g:747:9: ( LSQUARE pm_Expr RSQUARE )
+ // XQueryParser.g:747:13: LSQUARE pm_Expr RSQUARE
+ root_0 = this.adaptor.nil();
+
+ LSQUARE319=this.match(this.input,LSQUARE,XQueryParser.FOLLOW_LSQUARE_in_p_Predicate6538); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LSQUARE319_tree = this.adaptor.create(LSQUARE319);
+ this.adaptor.addChild(root_0, LSQUARE319_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_Predicate6540);
+ pm_Expr320=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr320.getTree());
+ RSQUARE321=this.match(this.input,RSQUARE,XQueryParser.FOLLOW_RSQUARE_in_p_Predicate6542); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RSQUARE321_tree = this.adaptor.create(RSQUARE321);
+ this.adaptor.addChild(root_0, RSQUARE321_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PrimaryExpr_return: (function() {
+ XQueryParser.p_PrimaryExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PrimaryExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:751:1: p_PrimaryExpr : ( p_Literal | p_VarRef | p_ParenthesizedExpr | p_ContextItemExpr | p_FunctionCall | p_OrderedExpr | p_UnorderedExpr | p_Constructor );
+ // $ANTLR start "p_PrimaryExpr"
+ p_PrimaryExpr: function() {
+ var retval = new XQueryParser.p_PrimaryExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_Literal322 = null;
+ var p_VarRef323 = null;
+ var p_ParenthesizedExpr324 = null;
+ var p_ContextItemExpr325 = null;
+ var p_FunctionCall326 = null;
+ var p_OrderedExpr327 = null;
+ var p_UnorderedExpr328 = null;
+ var p_Constructor329 = null;
+
+
+ try {
+ // XQueryParser.g:752:9: ( p_Literal | p_VarRef | p_ParenthesizedExpr | p_ContextItemExpr | p_FunctionCall | p_OrderedExpr | p_UnorderedExpr | p_Constructor )
+ var alt124=8;
+ alt124 = this.dfa124.predict(this.input);
+ switch (alt124) {
+ case 1 :
+ // XQueryParser.g:752:13: p_Literal
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_Literal_in_p_PrimaryExpr6570);
+ p_Literal322=this.p_Literal();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Literal322.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:753:11: p_VarRef
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_VarRef_in_p_PrimaryExpr6582);
+ p_VarRef323=this.p_VarRef();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarRef323.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:754:11: p_ParenthesizedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ParenthesizedExpr_in_p_PrimaryExpr6594);
+ p_ParenthesizedExpr324=this.p_ParenthesizedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ParenthesizedExpr324.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:755:11: p_ContextItemExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ContextItemExpr_in_p_PrimaryExpr6606);
+ p_ContextItemExpr325=this.p_ContextItemExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ContextItemExpr325.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:756:11: p_FunctionCall
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_FunctionCall_in_p_PrimaryExpr6618);
+ p_FunctionCall326=this.p_FunctionCall();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_FunctionCall326.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:757:11: p_OrderedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_OrderedExpr_in_p_PrimaryExpr6630);
+ p_OrderedExpr327=this.p_OrderedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OrderedExpr327.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:758:11: p_UnorderedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_UnorderedExpr_in_p_PrimaryExpr6642);
+ p_UnorderedExpr328=this.p_UnorderedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_UnorderedExpr328.getTree());
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:759:11: p_Constructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_Constructor_in_p_PrimaryExpr6654);
+ p_Constructor329=this.p_Constructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Constructor329.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Literal_return: (function() {
+ XQueryParser.p_Literal_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Literal_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:763:1: p_Literal : ( p_NumericLiteral | p_StringLiteral );
+ // $ANTLR start "p_Literal"
+ p_Literal: function() {
+ var retval = new XQueryParser.p_Literal_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_NumericLiteral330 = null;
+ var p_StringLiteral331 = null;
+
+
+ try {
+ // XQueryParser.g:764:9: ( p_NumericLiteral | p_StringLiteral )
+ var alt125=2;
+ var LA125_0 = this.input.LA(1);
+
+ if ( ((LA125_0>=L_IntegerLiteral && LA125_0<=L_DoubleLiteral)) ) {
+ alt125=1;
+ }
+ else if ( ((LA125_0>=APOS && LA125_0<=QUOT)) ) {
+ alt125=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 125, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt125) {
+ case 1 :
+ // XQueryParser.g:764:13: p_NumericLiteral
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NumericLiteral_in_p_Literal6682);
+ p_NumericLiteral330=this.p_NumericLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NumericLiteral330.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:764:32: p_StringLiteral
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_Literal6686);
+ p_StringLiteral331=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral331.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NumericLiteral_return: (function() {
+ XQueryParser.p_NumericLiteral_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NumericLiteral_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:768:1: p_NumericLiteral : ( L_IntegerLiteral | L_DecimalLiteral | L_DoubleLiteral );
+ // $ANTLR start "p_NumericLiteral"
+ p_NumericLiteral: function() {
+ var retval = new XQueryParser.p_NumericLiteral_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set332 = null;
+
+ var set332_tree=null;
+
+ try {
+ // XQueryParser.g:769:9: ( L_IntegerLiteral | L_DecimalLiteral | L_DoubleLiteral )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set332=this.input.LT(1);
+ if ( (this.input.LA(1)>=L_IntegerLiteral && this.input.LA(1)<=L_DoubleLiteral) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set332));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_VarRef_return: (function() {
+ XQueryParser.p_VarRef_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_VarRef_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:773:1: p_VarRef : DOLLAR p_VarName ;
+ // $ANTLR start "p_VarRef"
+ p_VarRef: function() {
+ var retval = new XQueryParser.p_VarRef_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR333 = null;
+ var p_VarName334 = null;
+
+ var DOLLAR333_tree=null;
+
+ try {
+ // XQueryParser.g:774:9: ( DOLLAR p_VarName )
+ // XQueryParser.g:774:13: DOLLAR p_VarName
+ root_0 = this.adaptor.nil();
+
+ DOLLAR333=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_VarRef6758); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR333_tree = this.adaptor.create(DOLLAR333);
+ this.adaptor.addChild(root_0, DOLLAR333_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_VarRef6760);
+ p_VarName334=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName334.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_VarName_return: (function() {
+ XQueryParser.p_VarName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_VarName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:778:1: p_VarName : p_QName ;
+ // $ANTLR start "p_VarName"
+ p_VarName: function() {
+ var retval = new XQueryParser.p_VarName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName335 = null;
+
+
+ try {
+ // XQueryParser.g:779:9: ( p_QName )
+ // XQueryParser.g:779:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_VarName6788);
+ p_QName335=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName335.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ParenthesizedExpr_return: (function() {
+ XQueryParser.p_ParenthesizedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ParenthesizedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:783:1: p_ParenthesizedExpr : LPAREN ( pm_Expr )? RPAREN ;
+ // $ANTLR start "p_ParenthesizedExpr"
+ p_ParenthesizedExpr: function() {
+ var retval = new XQueryParser.p_ParenthesizedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN336 = null;
+ var RPAREN338 = null;
+ var pm_Expr337 = null;
+
+ var LPAREN336_tree=null;
+ var RPAREN338_tree=null;
+
+ try {
+ // XQueryParser.g:784:9: ( LPAREN ( pm_Expr )? RPAREN )
+ // XQueryParser.g:784:13: LPAREN ( pm_Expr )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ LPAREN336=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_ParenthesizedExpr6816); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN336_tree = this.adaptor.create(LPAREN336);
+ this.adaptor.addChild(root_0, LPAREN336_tree);
+ }
+ // XQueryParser.g:784:20: ( pm_Expr )?
+ var alt126=2;
+ var LA126_0 = this.input.LA(1);
+
+ if ( ((LA126_0>=ANCESTOR && LA126_0<=EXIT)||(LA126_0>=SEQUENTIAL && LA126_0<=MAINTAINED)||(LA126_0>=MUTABLE && LA126_0<=LPAREN)||LA126_0==DOLLAR||(LA126_0>=STAR && LA126_0<=SMALLER)||(LA126_0>=SLASH && LA126_0<=DOT_DOT)||LA126_0==ATTR_SIGN||(LA126_0>=APOS && LA126_0<=QUOT)||LA126_0==L_NCName||(LA126_0>=L_Pragma && LA126_0<=L_DoubleLiteral)||(LA126_0>=LETDOLLAR && LA126_0<=EXPLICITLY)) ) {
+ alt126=1;
+ }
+ switch (alt126) {
+ case 1 :
+ // XQueryParser.g:784:20: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_ParenthesizedExpr6818);
+ pm_Expr337=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr337.getTree());
+
+
+ break;
+
+ }
+
+ RPAREN338=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_ParenthesizedExpr6821); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN338_tree = this.adaptor.create(RPAREN338);
+ this.adaptor.addChild(root_0, RPAREN338_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ContextItemExpr_return: (function() {
+ XQueryParser.p_ContextItemExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ContextItemExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:788:1: p_ContextItemExpr : DOT ;
+ // $ANTLR start "p_ContextItemExpr"
+ p_ContextItemExpr: function() {
+ var retval = new XQueryParser.p_ContextItemExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOT339 = null;
+
+ var DOT339_tree=null;
+
+ try {
+ // XQueryParser.g:789:9: ( DOT )
+ // XQueryParser.g:789:13: DOT
+ root_0 = this.adaptor.nil();
+
+ DOT339=this.match(this.input,DOT,XQueryParser.FOLLOW_DOT_in_p_ContextItemExpr6849); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOT339_tree = this.adaptor.create(DOT339);
+ this.adaptor.addChild(root_0, DOT339_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OrderedExpr_return: (function() {
+ XQueryParser.p_OrderedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OrderedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:793:1: p_OrderedExpr : k= ORDERED LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_OrderedExpr"
+ p_OrderedExpr: function() {
+ var retval = new XQueryParser.p_OrderedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET340 = null;
+ var RBRACKET342 = null;
+ var pm_Expr341 = null;
+
+ var k_tree=null;
+ var LBRACKET340_tree=null;
+ var RBRACKET342_tree=null;
+
+ try {
+ // XQueryParser.g:794:9: (k= ORDERED LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:794:13: k= ORDERED LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,ORDERED,XQueryParser.FOLLOW_ORDERED_in_p_OrderedExpr6879); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET340=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_OrderedExpr6882); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET340_tree = this.adaptor.create(LBRACKET340);
+ this.adaptor.addChild(root_0, LBRACKET340_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_OrderedExpr6884);
+ pm_Expr341=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr341.getTree());
+ RBRACKET342=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_OrderedExpr6886); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET342_tree = this.adaptor.create(RBRACKET342);
+ this.adaptor.addChild(root_0, RBRACKET342_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_UnorderedExpr_return: (function() {
+ XQueryParser.p_UnorderedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_UnorderedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:798:1: p_UnorderedExpr : k= UNORDERED LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_UnorderedExpr"
+ p_UnorderedExpr: function() {
+ var retval = new XQueryParser.p_UnorderedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET343 = null;
+ var RBRACKET345 = null;
+ var pm_Expr344 = null;
+
+ var k_tree=null;
+ var LBRACKET343_tree=null;
+ var RBRACKET345_tree=null;
+
+ try {
+ // XQueryParser.g:799:9: (k= UNORDERED LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:799:13: k= UNORDERED LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,UNORDERED,XQueryParser.FOLLOW_UNORDERED_in_p_UnorderedExpr6916); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET343=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_UnorderedExpr6919); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET343_tree = this.adaptor.create(LBRACKET343);
+ this.adaptor.addChild(root_0, LBRACKET343_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_UnorderedExpr6921);
+ pm_Expr344=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr344.getTree());
+ RBRACKET345=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_UnorderedExpr6923); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET345_tree = this.adaptor.create(RBRACKET345);
+ this.adaptor.addChild(root_0, RBRACKET345_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FunctionCall_return: (function() {
+ XQueryParser.p_FunctionCall_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FunctionCall_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:804:1: p_FunctionCall : p_FQName LPAREN ( p_ExprSingle ( COMMA p_ExprSingle )* )? RPAREN ;
+ // $ANTLR start "p_FunctionCall"
+ p_FunctionCall: function() {
+ var retval = new XQueryParser.p_FunctionCall_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN347 = null;
+ var COMMA349 = null;
+ var RPAREN351 = null;
+ var p_FQName346 = null;
+ var p_ExprSingle348 = null;
+ var p_ExprSingle350 = null;
+
+ var LPAREN347_tree=null;
+ var COMMA349_tree=null;
+ var RPAREN351_tree=null;
+
+ try {
+ // XQueryParser.g:805:9: ( p_FQName LPAREN ( p_ExprSingle ( COMMA p_ExprSingle )* )? RPAREN )
+ // XQueryParser.g:805:13: p_FQName LPAREN ( p_ExprSingle ( COMMA p_ExprSingle )* )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_FQName_in_p_FunctionCall6952);
+ p_FQName346=this.p_FQName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_FQName346.getTree());
+ LPAREN347=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_FunctionCall6954); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN347_tree = this.adaptor.create(LPAREN347);
+ this.adaptor.addChild(root_0, LPAREN347_tree);
+ }
+ // XQueryParser.g:805:29: ( p_ExprSingle ( COMMA p_ExprSingle )* )?
+ var alt128=2;
+ var LA128_0 = this.input.LA(1);
+
+ if ( ((LA128_0>=ANCESTOR && LA128_0<=EXIT)||(LA128_0>=SEQUENTIAL && LA128_0<=MAINTAINED)||(LA128_0>=MUTABLE && LA128_0<=LPAREN)||LA128_0==DOLLAR||(LA128_0>=STAR && LA128_0<=SMALLER)||(LA128_0>=SLASH && LA128_0<=DOT_DOT)||LA128_0==ATTR_SIGN||(LA128_0>=APOS && LA128_0<=QUOT)||LA128_0==L_NCName||(LA128_0>=L_Pragma && LA128_0<=L_DoubleLiteral)||(LA128_0>=LETDOLLAR && LA128_0<=EXPLICITLY)) ) {
+ alt128=1;
+ }
+ switch (alt128) {
+ case 1 :
+ // XQueryParser.g:805:30: p_ExprSingle ( COMMA p_ExprSingle )*
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_FunctionCall6957);
+ p_ExprSingle348=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle348.getTree());
+ // XQueryParser.g:805:43: ( COMMA p_ExprSingle )*
+ loop127:
+ do {
+ var alt127=2;
+ var LA127_0 = this.input.LA(1);
+
+ if ( (LA127_0==COMMA) ) {
+ alt127=1;
+ }
+
+
+ switch (alt127) {
+ case 1 :
+ // XQueryParser.g:805:44: COMMA p_ExprSingle
+ COMMA349=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_FunctionCall6960); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA349_tree = this.adaptor.create(COMMA349);
+ this.adaptor.addChild(root_0, COMMA349_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_FunctionCall6962);
+ p_ExprSingle350=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle350.getTree());
+
+
+ break;
+
+ default :
+ break loop127;
+ }
+ } while (true);
+
+
+
+ break;
+
+ }
+
+ RPAREN351=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_FunctionCall6968); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN351_tree = this.adaptor.create(RPAREN351);
+ this.adaptor.addChild(root_0, RPAREN351_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Constructor_return: (function() {
+ XQueryParser.p_Constructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Constructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:809:1: p_Constructor : ( p_DirectConstructor | p_ComputedConstructor );
+ // $ANTLR start "p_Constructor"
+ p_Constructor: function() {
+ var retval = new XQueryParser.p_Constructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_DirectConstructor352 = null;
+ var p_ComputedConstructor353 = null;
+
+
+ try {
+ // XQueryParser.g:810:9: ( p_DirectConstructor | p_ComputedConstructor )
+ var alt129=2;
+ var LA129_0 = this.input.LA(1);
+
+ if ( (LA129_0==SMALLER||(LA129_0>=L_DirCommentConstructor && LA129_0<=L_DirPIConstructor)) ) {
+ alt129=1;
+ }
+ else if ( (LA129_0==ATTRIBUTE||LA129_0==COMMENT||LA129_0==DOCUMENT||LA129_0==ELEMENT||LA129_0==NAMESPACE||LA129_0==PROCESSING_INSTRUCTION||LA129_0==TEXT) ) {
+ alt129=2;
+ }
+ else if ( (LA129_0==BINARY) && ((false))) {
+ alt129=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 129, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt129) {
+ case 1 :
+ // XQueryParser.g:810:13: p_DirectConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_DirectConstructor_in_p_Constructor7000);
+ p_DirectConstructor352=this.p_DirectConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DirectConstructor352.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:810:35: p_ComputedConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ComputedConstructor_in_p_Constructor7004);
+ p_ComputedConstructor353=this.p_ComputedConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ComputedConstructor353.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DirectConstructor_return: (function() {
+ XQueryParser.p_DirectConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DirectConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:814:1: p_DirectConstructor : ( p_DirElemConstructor | L_DirCommentConstructor | L_DirPIConstructor );
+ // $ANTLR start "p_DirectConstructor"
+ p_DirectConstructor: function() {
+ var retval = new XQueryParser.p_DirectConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_DirCommentConstructor355 = null;
+ var L_DirPIConstructor356 = null;
+ var p_DirElemConstructor354 = null;
+
+ var L_DirCommentConstructor355_tree=null;
+ var L_DirPIConstructor356_tree=null;
+
+ try {
+ // XQueryParser.g:815:9: ( p_DirElemConstructor | L_DirCommentConstructor | L_DirPIConstructor )
+ var alt130=3;
+ switch ( this.input.LA(1) ) {
+ case SMALLER:
+ alt130=1;
+ break;
+ case L_DirCommentConstructor:
+ alt130=2;
+ break;
+ case L_DirPIConstructor:
+ alt130=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 130, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt130) {
+ case 1 :
+ // XQueryParser.g:815:13: p_DirElemConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_DirElemConstructor_in_p_DirectConstructor7032);
+ p_DirElemConstructor354=this.p_DirElemConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DirElemConstructor354.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:816:11: L_DirCommentConstructor
+ root_0 = this.adaptor.nil();
+
+ L_DirCommentConstructor355=this.match(this.input,L_DirCommentConstructor,XQueryParser.FOLLOW_L_DirCommentConstructor_in_p_DirectConstructor7044); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ L_DirCommentConstructor355_tree = this.adaptor.create(L_DirCommentConstructor355);
+ this.adaptor.addChild(root_0, L_DirCommentConstructor355_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:817:11: L_DirPIConstructor
+ root_0 = this.adaptor.nil();
+
+ L_DirPIConstructor356=this.match(this.input,L_DirPIConstructor,XQueryParser.FOLLOW_L_DirPIConstructor_in_p_DirectConstructor7056); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ L_DirPIConstructor356_tree = this.adaptor.create(L_DirPIConstructor356);
+ this.adaptor.addChild(root_0, L_DirPIConstructor356_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DirElemConstructor_return: (function() {
+ XQueryParser.p_DirElemConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DirElemConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:821:1: p_DirElemConstructor : SMALLER p_QName p_DirAttributeList ( EMPTY_CLOSE_TAG | ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER ) ) -> ^( DirElemConstructor ^( DirAttributeList ( p_DirAttributeList )* ) ^( DirElemContent ( pm_DirElemContent )* ) ) ;
+ // $ANTLR start "p_DirElemConstructor"
+ p_DirElemConstructor: function() {
+ var retval = new XQueryParser.p_DirElemConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SMALLER357 = null;
+ var EMPTY_CLOSE_TAG360 = null;
+ var GREATER361 = null;
+ var CLOSE_TAG363 = null;
+ var S365 = null;
+ var GREATER366 = null;
+ var p_QName358 = null;
+ var p_DirAttributeList359 = null;
+ var pm_DirElemContent362 = null;
+ var p_QName364 = null;
+
+ var SMALLER357_tree=null;
+ var EMPTY_CLOSE_TAG360_tree=null;
+ var GREATER361_tree=null;
+ var CLOSE_TAG363_tree=null;
+ var S365_tree=null;
+ var GREATER366_tree=null;
+ var stream_CLOSE_TAG=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token CLOSE_TAG");
+ var stream_GREATER=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token GREATER");
+ var stream_S=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token S");
+ var stream_EMPTY_CLOSE_TAG=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EMPTY_CLOSE_TAG");
+ var stream_SMALLER=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SMALLER");
+ var stream_p_DirAttributeList=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_DirAttributeList");
+ var stream_pm_DirElemContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_DirElemContent");
+ var stream_p_QName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QName");
+ try {
+ // XQueryParser.g:822:9: ( SMALLER p_QName p_DirAttributeList ( EMPTY_CLOSE_TAG | ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER ) ) -> ^( DirElemConstructor ^( DirAttributeList ( p_DirAttributeList )* ) ^( DirElemContent ( pm_DirElemContent )* ) ) )
+ // XQueryParser.g:822:13: SMALLER p_QName p_DirAttributeList ( EMPTY_CLOSE_TAG | ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER ) )
+ SMALLER357=this.match(this.input,SMALLER,XQueryParser.FOLLOW_SMALLER_in_p_DirElemConstructor7084); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SMALLER.add(SMALLER357);
+
+ if ( this.state.backtracking===0 ) {
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_DirElemConstructor7100);
+ p_QName358=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(p_QName358.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_DirAttributeList_in_p_DirElemConstructor7102);
+ p_DirAttributeList359=this.p_DirAttributeList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_DirAttributeList.add(p_DirAttributeList359.getTree());
+ // XQueryParser.g:824:13: ( EMPTY_CLOSE_TAG | ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER ) )
+ var alt133=2;
+ var LA133_0 = this.input.LA(1);
+
+ if ( (LA133_0==EMPTY_CLOSE_TAG) ) {
+ alt133=1;
+ }
+ else if ( (LA133_0==GREATER) ) {
+ alt133=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 133, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt133) {
+ case 1 :
+ // XQueryParser.g:824:14: EMPTY_CLOSE_TAG
+ EMPTY_CLOSE_TAG360=this.match(this.input,EMPTY_CLOSE_TAG,XQueryParser.FOLLOW_EMPTY_CLOSE_TAG_in_p_DirElemConstructor7118); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EMPTY_CLOSE_TAG.add(EMPTY_CLOSE_TAG360);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:824:32: ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER )
+ // XQueryParser.g:824:32: ( GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER )
+ // XQueryParser.g:824:33: GREATER ( pm_DirElemContent )* CLOSE_TAG p_QName ( S )? GREATER
+ GREATER361=this.match(this.input,GREATER,XQueryParser.FOLLOW_GREATER_in_p_DirElemConstructor7123); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_GREATER.add(GREATER361);
+
+ // XQueryParser.g:824:41: ( pm_DirElemContent )*
+ loop131:
+ do {
+ var alt131=2;
+ var LA131_0 = this.input.LA(1);
+
+ if ( ((LA131_0>=L_ElementContentChar && LA131_0<=ESCAPE_RBRACKET)||LA131_0==LBRACKET||LA131_0==SMALLER||(LA131_0>=L_DirCommentConstructor && LA131_0<=L_DirPIConstructor)) ) {
+ alt131=1;
+ }
+
+
+ switch (alt131) {
+ case 1 :
+ // XQueryParser.g:824:41: pm_DirElemContent
+ this.pushFollow(XQueryParser.FOLLOW_pm_DirElemContent_in_p_DirElemConstructor7125);
+ pm_DirElemContent362=this.pm_DirElemContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_DirElemContent.add(pm_DirElemContent362.getTree());
+
+
+ break;
+
+ default :
+ break loop131;
+ }
+ } while (true);
+
+ CLOSE_TAG363=this.match(this.input,CLOSE_TAG,XQueryParser.FOLLOW_CLOSE_TAG_in_p_DirElemConstructor7128); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_CLOSE_TAG.add(CLOSE_TAG363);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_DirElemConstructor7130);
+ p_QName364=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(p_QName364.getTree());
+ // XQueryParser.g:824:78: ( S )?
+ var alt132=2;
+ var LA132_0 = this.input.LA(1);
+
+ if ( (LA132_0==S) ) {
+ alt132=1;
+ }
+ switch (alt132) {
+ case 1 :
+ // XQueryParser.g:824:78: S
+ S365=this.match(this.input,S,XQueryParser.FOLLOW_S_in_p_DirElemConstructor7132); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_S.add(S365);
+
+
+
+ break;
+
+ }
+
+ GREATER366=this.match(this.input,GREATER,XQueryParser.FOLLOW_GREATER_in_p_DirElemConstructor7135); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_GREATER.add(GREATER366);
+
+
+
+
+
+
+ break;
+
+ }
+
+
+
+ // AST REWRITE
+ // elements: p_DirAttributeList, pm_DirElemContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 825:17: -> ^( DirElemConstructor ^( DirAttributeList ( p_DirAttributeList )* ) ^( DirElemContent ( pm_DirElemContent )* ) )
+ {
+ // XQueryParser.g:825:20: ^( DirElemConstructor ^( DirAttributeList ( p_DirAttributeList )* ) ^( DirElemContent ( pm_DirElemContent )* ) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(DirElemConstructor, "DirElemConstructor"), root_1);
+
+ // XQueryParser.g:825:41: ^( DirAttributeList ( p_DirAttributeList )* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(DirAttributeList, "DirAttributeList"), root_2);
+
+ // XQueryParser.g:825:60: ( p_DirAttributeList )*
+ while ( stream_p_DirAttributeList.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_p_DirAttributeList.nextTree());
+
+ }
+ stream_p_DirAttributeList.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+ // XQueryParser.g:825:81: ^( DirElemContent ( pm_DirElemContent )* )
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(DirElemContent, "DirElemContent"), root_2);
+
+ // XQueryParser.g:825:98: ( pm_DirElemContent )*
+ while ( stream_pm_DirElemContent.hasNext() ) {
+ this.adaptor.addChild(root_2, stream_pm_DirElemContent.nextTree());
+
+ }
+ stream_pm_DirElemContent.reset();
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DirAttributeList_return: (function() {
+ XQueryParser.p_DirAttributeList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DirAttributeList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:830:1: p_DirAttributeList : ( S ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )? )* ;
+ // $ANTLR start "p_DirAttributeList"
+ p_DirAttributeList: function() {
+ var retval = new XQueryParser.p_DirAttributeList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var S367 = null;
+ var S369 = null;
+ var EQUAL370 = null;
+ var S371 = null;
+ var p_QName368 = null;
+ var p_DirAttributeValue372 = null;
+
+ var S367_tree=null;
+ var S369_tree=null;
+ var EQUAL370_tree=null;
+ var S371_tree=null;
+
+ try {
+ // XQueryParser.g:831:9: ( ( S ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )? )* )
+ // XQueryParser.g:831:11: ( S ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )? )*
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:831:11: ( S ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )? )*
+ loop137:
+ do {
+ var alt137=2;
+ var LA137_0 = this.input.LA(1);
+
+ if ( (LA137_0==S) ) {
+ alt137=1;
+ }
+
+
+ switch (alt137) {
+ case 1 :
+ // XQueryParser.g:831:12: S ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )?
+ S367=this.match(this.input,S,XQueryParser.FOLLOW_S_in_p_DirAttributeList7212); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ S367_tree = this.adaptor.create(S367);
+ this.adaptor.addChild(root_0, S367_tree);
+ }
+ // XQueryParser.g:831:14: ( p_QName ( S )? EQUAL ( S )? p_DirAttributeValue )?
+ var alt136=2;
+ var LA136_0 = this.input.LA(1);
+
+ if ( ((LA136_0>=ANCESTOR && LA136_0<=EXIT)||(LA136_0>=SEQUENTIAL && LA136_0<=MAINTAINED)||(LA136_0>=MUTABLE && LA136_0<=QUOT_ER)||LA136_0==L_NCName||LA136_0==EXPLICITLY) ) {
+ alt136=1;
+ }
+ switch (alt136) {
+ case 1 :
+ // XQueryParser.g:831:15: p_QName ( S )? EQUAL ( S )? p_DirAttributeValue
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_DirAttributeList7215);
+ p_QName368=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName368.getTree());
+ // XQueryParser.g:831:23: ( S )?
+ var alt134=2;
+ var LA134_0 = this.input.LA(1);
+
+ if ( (LA134_0==S) ) {
+ alt134=1;
+ }
+ switch (alt134) {
+ case 1 :
+ // XQueryParser.g:831:23: S
+ S369=this.match(this.input,S,XQueryParser.FOLLOW_S_in_p_DirAttributeList7217); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ S369_tree = this.adaptor.create(S369);
+ this.adaptor.addChild(root_0, S369_tree);
+ }
+
+
+ break;
+
+ }
+
+ EQUAL370=this.match(this.input,EQUAL,XQueryParser.FOLLOW_EQUAL_in_p_DirAttributeList7220); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ EQUAL370_tree = this.adaptor.create(EQUAL370);
+ this.adaptor.addChild(root_0, EQUAL370_tree);
+ }
+ // XQueryParser.g:831:32: ( S )?
+ var alt135=2;
+ var LA135_0 = this.input.LA(1);
+
+ if ( (LA135_0==S) ) {
+ alt135=1;
+ }
+ switch (alt135) {
+ case 1 :
+ // XQueryParser.g:831:32: S
+ S371=this.match(this.input,S,XQueryParser.FOLLOW_S_in_p_DirAttributeList7222); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ S371_tree = this.adaptor.create(S371);
+ this.adaptor.addChild(root_0, S371_tree);
+ }
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_DirAttributeValue_in_p_DirAttributeList7225);
+ p_DirAttributeValue372=this.p_DirAttributeValue();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DirAttributeValue372.getTree());
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ default :
+ break loop137;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DirAttributeValue_return: (function() {
+ XQueryParser.p_DirAttributeValue_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DirAttributeValue_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:835:1: p_DirAttributeValue : ( ( QUOT ( ESCAPE_QUOT | pm_QuotAttrValueContent )* QUOT ) -> ^( DirAttributeValue ( pm_QuotAttrValueContent )* ) | ( APOS ( ESCAPE_APOS | pm_AposAttrValueContent )* APOS ) -> ^( DirAttributeValue ( pm_AposAttrValueContent )* ) );
+ // $ANTLR start "p_DirAttributeValue"
+ p_DirAttributeValue: function() {
+ var retval = new XQueryParser.p_DirAttributeValue_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var QUOT373 = null;
+ var ESCAPE_QUOT374 = null;
+ var QUOT376 = null;
+ var APOS377 = null;
+ var ESCAPE_APOS378 = null;
+ var APOS380 = null;
+ var pm_QuotAttrValueContent375 = null;
+ var pm_AposAttrValueContent379 = null;
+
+ var QUOT373_tree=null;
+ var ESCAPE_QUOT374_tree=null;
+ var QUOT376_tree=null;
+ var APOS377_tree=null;
+ var ESCAPE_APOS378_tree=null;
+ var APOS380_tree=null;
+ var stream_ESCAPE_QUOT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token ESCAPE_QUOT");
+ var stream_APOS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token APOS");
+ var stream_ESCAPE_APOS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token ESCAPE_APOS");
+ var stream_QUOT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token QUOT");
+ var stream_pm_QuotAttrValueContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_QuotAttrValueContent");
+ var stream_pm_AposAttrValueContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_AposAttrValueContent");
+ try {
+ // XQueryParser.g:836:9: ( ( QUOT ( ESCAPE_QUOT | pm_QuotAttrValueContent )* QUOT ) -> ^( DirAttributeValue ( pm_QuotAttrValueContent )* ) | ( APOS ( ESCAPE_APOS | pm_AposAttrValueContent )* APOS ) -> ^( DirAttributeValue ( pm_AposAttrValueContent )* ) )
+ var alt140=2;
+ var LA140_0 = this.input.LA(1);
+
+ if ( (LA140_0==QUOT) ) {
+ alt140=1;
+ }
+ else if ( (LA140_0==APOS) ) {
+ alt140=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 140, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt140) {
+ case 1 :
+ // XQueryParser.g:836:11: ( QUOT ( ESCAPE_QUOT | pm_QuotAttrValueContent )* QUOT )
+ // XQueryParser.g:836:11: ( QUOT ( ESCAPE_QUOT | pm_QuotAttrValueContent )* QUOT )
+ // XQueryParser.g:836:12: QUOT ( ESCAPE_QUOT | pm_QuotAttrValueContent )* QUOT
+ QUOT373=this.match(this.input,QUOT,XQueryParser.FOLLOW_QUOT_in_p_DirAttributeValue7256); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_QUOT.add(QUOT373);
+
+ // XQueryParser.g:836:17: ( ESCAPE_QUOT | pm_QuotAttrValueContent )*
+ loop138:
+ do {
+ var alt138=3;
+ var LA138_0 = this.input.LA(1);
+
+ if ( (LA138_0==ESCAPE_QUOT) ) {
+ alt138=1;
+ }
+ else if ( (LA138_0==L_QuotAttrContentChar||(LA138_0>=L_PredefinedEntityRef && LA138_0<=ESCAPE_RBRACKET)||LA138_0==LBRACKET) ) {
+ alt138=2;
+ }
+
+
+ switch (alt138) {
+ case 1 :
+ // XQueryParser.g:836:18: ESCAPE_QUOT
+ ESCAPE_QUOT374=this.match(this.input,ESCAPE_QUOT,XQueryParser.FOLLOW_ESCAPE_QUOT_in_p_DirAttributeValue7259); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ESCAPE_QUOT.add(ESCAPE_QUOT374);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:836:32: pm_QuotAttrValueContent
+ this.pushFollow(XQueryParser.FOLLOW_pm_QuotAttrValueContent_in_p_DirAttributeValue7263);
+ pm_QuotAttrValueContent375=this.pm_QuotAttrValueContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_QuotAttrValueContent.add(pm_QuotAttrValueContent375.getTree());
+
+
+ break;
+
+ default :
+ break loop138;
+ }
+ } while (true);
+
+ QUOT376=this.match(this.input,QUOT,XQueryParser.FOLLOW_QUOT_in_p_DirAttributeValue7267); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_QUOT.add(QUOT376);
+
+
+
+
+
+
+ // AST REWRITE
+ // elements: pm_QuotAttrValueContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 837:17: -> ^( DirAttributeValue ( pm_QuotAttrValueContent )* )
+ {
+ // XQueryParser.g:837:20: ^( DirAttributeValue ( pm_QuotAttrValueContent )* )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(DirAttributeValue, "DirAttributeValue"), root_1);
+
+ // XQueryParser.g:837:40: ( pm_QuotAttrValueContent )*
+ while ( stream_pm_QuotAttrValueContent.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_pm_QuotAttrValueContent.nextTree());
+
+ }
+ stream_pm_QuotAttrValueContent.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:838:11: ( APOS ( ESCAPE_APOS | pm_AposAttrValueContent )* APOS )
+ // XQueryParser.g:838:11: ( APOS ( ESCAPE_APOS | pm_AposAttrValueContent )* APOS )
+ // XQueryParser.g:838:12: APOS ( ESCAPE_APOS | pm_AposAttrValueContent )* APOS
+ APOS377=this.match(this.input,APOS,XQueryParser.FOLLOW_APOS_in_p_DirAttributeValue7306); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_APOS.add(APOS377);
+
+ // XQueryParser.g:838:17: ( ESCAPE_APOS | pm_AposAttrValueContent )*
+ loop139:
+ do {
+ var alt139=3;
+ var LA139_0 = this.input.LA(1);
+
+ if ( (LA139_0==ESCAPE_APOS) ) {
+ alt139=1;
+ }
+ else if ( (LA139_0==L_AposAttrContentChar||(LA139_0>=L_PredefinedEntityRef && LA139_0<=ESCAPE_RBRACKET)||LA139_0==LBRACKET) ) {
+ alt139=2;
+ }
+
+
+ switch (alt139) {
+ case 1 :
+ // XQueryParser.g:838:18: ESCAPE_APOS
+ ESCAPE_APOS378=this.match(this.input,ESCAPE_APOS,XQueryParser.FOLLOW_ESCAPE_APOS_in_p_DirAttributeValue7309); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ESCAPE_APOS.add(ESCAPE_APOS378);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:838:32: pm_AposAttrValueContent
+ this.pushFollow(XQueryParser.FOLLOW_pm_AposAttrValueContent_in_p_DirAttributeValue7313);
+ pm_AposAttrValueContent379=this.pm_AposAttrValueContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_AposAttrValueContent.add(pm_AposAttrValueContent379.getTree());
+
+
+ break;
+
+ default :
+ break loop139;
+ }
+ } while (true);
+
+ APOS380=this.match(this.input,APOS,XQueryParser.FOLLOW_APOS_in_p_DirAttributeValue7317); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_APOS.add(APOS380);
+
+
+
+
+
+
+ // AST REWRITE
+ // elements: pm_AposAttrValueContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 839:17: -> ^( DirAttributeValue ( pm_AposAttrValueContent )* )
+ {
+ // XQueryParser.g:839:20: ^( DirAttributeValue ( pm_AposAttrValueContent )* )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(DirAttributeValue, "DirAttributeValue"), root_1);
+
+ // XQueryParser.g:839:40: ( pm_AposAttrValueContent )*
+ while ( stream_pm_AposAttrValueContent.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_pm_AposAttrValueContent.nextTree());
+
+ }
+ stream_pm_AposAttrValueContent.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_QuotAttrValueContent_return: (function() {
+ XQueryParser.pm_QuotAttrValueContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_QuotAttrValueContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:843:1: pm_QuotAttrValueContent : ( pg_QuotAttrContentChar | pg_CommonContent | p_ElemEnclosedExpr );
+ // $ANTLR start "pm_QuotAttrValueContent"
+ pm_QuotAttrValueContent: function() {
+ var retval = new XQueryParser.pm_QuotAttrValueContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pg_QuotAttrContentChar381 = null;
+ var pg_CommonContent382 = null;
+ var p_ElemEnclosedExpr383 = null;
+
+
+ try {
+ // XQueryParser.g:844:9: ( pg_QuotAttrContentChar | pg_CommonContent | p_ElemEnclosedExpr )
+ var alt141=3;
+ switch ( this.input.LA(1) ) {
+ case L_QuotAttrContentChar:
+ alt141=1;
+ break;
+ case L_PredefinedEntityRef:
+ case L_CharRef:
+ case ESCAPE_LBRACKET:
+ case ESCAPE_RBRACKET:
+ alt141=2;
+ break;
+ case LBRACKET:
+ alt141=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 141, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt141) {
+ case 1 :
+ // XQueryParser.g:844:11: pg_QuotAttrContentChar
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_QuotAttrContentChar_in_pm_QuotAttrValueContent7369);
+ pg_QuotAttrContentChar381=this.pg_QuotAttrContentChar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_QuotAttrContentChar381.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:844:36: pg_CommonContent
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_CommonContent_in_pm_QuotAttrValueContent7373);
+ pg_CommonContent382=this.pg_CommonContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_CommonContent382.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:844:55: p_ElemEnclosedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ElemEnclosedExpr_in_pm_QuotAttrValueContent7377);
+ p_ElemEnclosedExpr383=this.p_ElemEnclosedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElemEnclosedExpr383.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_QuotAttrContentChar_return: (function() {
+ XQueryParser.pg_QuotAttrContentChar_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_QuotAttrContentChar_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:851:1: pg_QuotAttrContentChar : L_QuotAttrContentChar -> ^( AttributeValueChar L_QuotAttrContentChar ) ;
+ // $ANTLR start "pg_QuotAttrContentChar"
+ pg_QuotAttrContentChar: function() {
+ var retval = new XQueryParser.pg_QuotAttrContentChar_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_QuotAttrContentChar384 = null;
+
+ var L_QuotAttrContentChar384_tree=null;
+ var stream_L_QuotAttrContentChar=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token L_QuotAttrContentChar");
+
+ try {
+ // XQueryParser.g:852:9: ( L_QuotAttrContentChar -> ^( AttributeValueChar L_QuotAttrContentChar ) )
+ // XQueryParser.g:852:11: L_QuotAttrContentChar
+ L_QuotAttrContentChar384=this.match(this.input,L_QuotAttrContentChar,XQueryParser.FOLLOW_L_QuotAttrContentChar_in_pg_QuotAttrContentChar7406); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_L_QuotAttrContentChar.add(L_QuotAttrContentChar384);
+
+
+
+ // AST REWRITE
+ // elements: L_QuotAttrContentChar
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 853:17: -> ^( AttributeValueChar L_QuotAttrContentChar )
+ {
+ // XQueryParser.g:853:20: ^( AttributeValueChar L_QuotAttrContentChar )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(AttributeValueChar, "AttributeValueChar"), root_1);
+
+ this.adaptor.addChild(root_1, stream_L_QuotAttrContentChar.nextNode());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_AposAttrValueContent_return: (function() {
+ XQueryParser.pm_AposAttrValueContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_AposAttrValueContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:858:1: pm_AposAttrValueContent : ( pg_AposAttrContentChar | pg_CommonContent | p_ElemEnclosedExpr );
+ // $ANTLR start "pm_AposAttrValueContent"
+ pm_AposAttrValueContent: function() {
+ var retval = new XQueryParser.pm_AposAttrValueContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pg_AposAttrContentChar385 = null;
+ var pg_CommonContent386 = null;
+ var p_ElemEnclosedExpr387 = null;
+
+
+ try {
+ // XQueryParser.g:859:9: ( pg_AposAttrContentChar | pg_CommonContent | p_ElemEnclosedExpr )
+ var alt142=3;
+ switch ( this.input.LA(1) ) {
+ case L_AposAttrContentChar:
+ alt142=1;
+ break;
+ case L_PredefinedEntityRef:
+ case L_CharRef:
+ case ESCAPE_LBRACKET:
+ case ESCAPE_RBRACKET:
+ alt142=2;
+ break;
+ case LBRACKET:
+ alt142=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 142, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt142) {
+ case 1 :
+ // XQueryParser.g:859:13: pg_AposAttrContentChar
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_AposAttrContentChar_in_pm_AposAttrValueContent7459);
+ pg_AposAttrContentChar385=this.pg_AposAttrContentChar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_AposAttrContentChar385.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:859:38: pg_CommonContent
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_CommonContent_in_pm_AposAttrValueContent7463);
+ pg_CommonContent386=this.pg_CommonContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_CommonContent386.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:859:57: p_ElemEnclosedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ElemEnclosedExpr_in_pm_AposAttrValueContent7467);
+ p_ElemEnclosedExpr387=this.p_ElemEnclosedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElemEnclosedExpr387.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_AposAttrContentChar_return: (function() {
+ XQueryParser.pg_AposAttrContentChar_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_AposAttrContentChar_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:866:1: pg_AposAttrContentChar : L_AposAttrContentChar -> ^( AttributeValueChar L_AposAttrContentChar ) ;
+ // $ANTLR start "pg_AposAttrContentChar"
+ pg_AposAttrContentChar: function() {
+ var retval = new XQueryParser.pg_AposAttrContentChar_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_AposAttrContentChar388 = null;
+
+ var L_AposAttrContentChar388_tree=null;
+ var stream_L_AposAttrContentChar=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token L_AposAttrContentChar");
+
+ try {
+ // XQueryParser.g:867:9: ( L_AposAttrContentChar -> ^( AttributeValueChar L_AposAttrContentChar ) )
+ // XQueryParser.g:867:11: L_AposAttrContentChar
+ L_AposAttrContentChar388=this.match(this.input,L_AposAttrContentChar,XQueryParser.FOLLOW_L_AposAttrContentChar_in_pg_AposAttrContentChar7496); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_L_AposAttrContentChar.add(L_AposAttrContentChar388);
+
+
+
+ // AST REWRITE
+ // elements: L_AposAttrContentChar
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 868:17: -> ^( AttributeValueChar L_AposAttrContentChar )
+ {
+ // XQueryParser.g:868:20: ^( AttributeValueChar L_AposAttrContentChar )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(AttributeValueChar, "AttributeValueChar"), root_1);
+
+ this.adaptor.addChild(root_1, stream_L_AposAttrContentChar.nextNode());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_DirElemContent_return: (function() {
+ XQueryParser.pm_DirElemContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_DirElemContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:873:1: pm_DirElemContent : ( p_DirectConstructor | L_CDataSection | p_ElemEnclosedExpr | pg_CommonContent | pg_ElementContentChar );
+ // $ANTLR start "pm_DirElemContent"
+ pm_DirElemContent: function() {
+ var retval = new XQueryParser.pm_DirElemContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_CDataSection390 = null;
+ var p_DirectConstructor389 = null;
+ var p_ElemEnclosedExpr391 = null;
+ var pg_CommonContent392 = null;
+ var pg_ElementContentChar393 = null;
+
+ var L_CDataSection390_tree=null;
+
+ try {
+ // XQueryParser.g:874:9: ( p_DirectConstructor | L_CDataSection | p_ElemEnclosedExpr | pg_CommonContent | pg_ElementContentChar )
+ var alt143=5;
+ switch ( this.input.LA(1) ) {
+ case SMALLER:
+ case L_DirCommentConstructor:
+ case L_DirPIConstructor:
+ alt143=1;
+ break;
+ case L_CDataSection:
+ alt143=2;
+ break;
+ case LBRACKET:
+ alt143=3;
+ break;
+ case L_PredefinedEntityRef:
+ case L_CharRef:
+ case ESCAPE_LBRACKET:
+ case ESCAPE_RBRACKET:
+ alt143=4;
+ break;
+ case L_ElementContentChar:
+ alt143=5;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 143, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt143) {
+ case 1 :
+ // XQueryParser.g:874:11: p_DirectConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_DirectConstructor_in_pm_DirElemContent7547);
+ p_DirectConstructor389=this.p_DirectConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DirectConstructor389.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:875:11: L_CDataSection
+ root_0 = this.adaptor.nil();
+
+ L_CDataSection390=this.match(this.input,L_CDataSection,XQueryParser.FOLLOW_L_CDataSection_in_pm_DirElemContent7559); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ L_CDataSection390_tree = this.adaptor.create(L_CDataSection390);
+ this.adaptor.addChild(root_0, L_CDataSection390_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:876:11: p_ElemEnclosedExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ElemEnclosedExpr_in_pm_DirElemContent7571);
+ p_ElemEnclosedExpr391=this.p_ElemEnclosedExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElemEnclosedExpr391.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:877:11: pg_CommonContent
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_CommonContent_in_pm_DirElemContent7583);
+ pg_CommonContent392=this.pg_CommonContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_CommonContent392.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:878:11: pg_ElementContentChar
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pg_ElementContentChar_in_pm_DirElemContent7595);
+ pg_ElementContentChar393=this.pg_ElementContentChar();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pg_ElementContentChar393.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_ElementContentChar_return: (function() {
+ XQueryParser.pg_ElementContentChar_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_ElementContentChar_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:885:1: pg_ElementContentChar : L_ElementContentChar -> ^( ElementContentChar L_ElementContentChar ) ;
+ // $ANTLR start "pg_ElementContentChar"
+ pg_ElementContentChar: function() {
+ var retval = new XQueryParser.pg_ElementContentChar_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var L_ElementContentChar394 = null;
+
+ var L_ElementContentChar394_tree=null;
+ var stream_L_ElementContentChar=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token L_ElementContentChar");
+
+ try {
+ // XQueryParser.g:886:9: ( L_ElementContentChar -> ^( ElementContentChar L_ElementContentChar ) )
+ // XQueryParser.g:886:11: L_ElementContentChar
+ L_ElementContentChar394=this.match(this.input,L_ElementContentChar,XQueryParser.FOLLOW_L_ElementContentChar_in_pg_ElementContentChar7624); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_L_ElementContentChar.add(L_ElementContentChar394);
+
+
+
+ // AST REWRITE
+ // elements: L_ElementContentChar
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 887:17: -> ^( ElementContentChar L_ElementContentChar )
+ {
+ // XQueryParser.g:887:20: ^( ElementContentChar L_ElementContentChar )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(ElementContentChar, "ElementContentChar"), root_1);
+
+ this.adaptor.addChild(root_1, stream_L_ElementContentChar.nextNode());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pg_CommonContent_return: (function() {
+ XQueryParser.pg_CommonContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pg_CommonContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:895:1: pg_CommonContent : pm_CommonContent -> ^( CommonContent pm_CommonContent ) ;
+ // $ANTLR start "pg_CommonContent"
+ pg_CommonContent: function() {
+ var retval = new XQueryParser.pg_CommonContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_CommonContent395 = null;
+
+ var stream_pm_CommonContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_CommonContent");
+ try {
+ // XQueryParser.g:896:9: ( pm_CommonContent -> ^( CommonContent pm_CommonContent ) )
+ // XQueryParser.g:896:13: pm_CommonContent
+ this.pushFollow(XQueryParser.FOLLOW_pm_CommonContent_in_pg_CommonContent7680);
+ pm_CommonContent395=this.pm_CommonContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_CommonContent.add(pm_CommonContent395.getTree());
+
+
+ // AST REWRITE
+ // elements: pm_CommonContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 897:17: -> ^( CommonContent pm_CommonContent )
+ {
+ // XQueryParser.g:897:20: ^( CommonContent pm_CommonContent )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(CommonContent, "CommonContent"), root_1);
+
+ this.adaptor.addChild(root_1, stream_pm_CommonContent.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_CommonContent_return: (function() {
+ XQueryParser.pm_CommonContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_CommonContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:902:1: pm_CommonContent : ( L_PredefinedEntityRef | L_CharRef | ESCAPE_LBRACKET | ESCAPE_RBRACKET );
+ // $ANTLR start "pm_CommonContent"
+ pm_CommonContent: function() {
+ var retval = new XQueryParser.pm_CommonContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set396 = null;
+
+ var set396_tree=null;
+
+ try {
+ // XQueryParser.g:903:9: ( L_PredefinedEntityRef | L_CharRef | ESCAPE_LBRACKET | ESCAPE_RBRACKET )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set396=this.input.LT(1);
+ if ( (this.input.LA(1)>=L_PredefinedEntityRef && this.input.LA(1)<=ESCAPE_RBRACKET) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set396));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ElemEnclosedExpr_return: (function() {
+ XQueryParser.p_ElemEnclosedExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ElemEnclosedExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:910:1: p_ElemEnclosedExpr : LBRACKET ( pm_Expr ) RBRACKET ;
+ // $ANTLR start "p_ElemEnclosedExpr"
+ p_ElemEnclosedExpr: function() {
+ var retval = new XQueryParser.p_ElemEnclosedExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LBRACKET397 = null;
+ var RBRACKET399 = null;
+ var pm_Expr398 = null;
+
+ var LBRACKET397_tree=null;
+ var RBRACKET399_tree=null;
+
+ try {
+ // XQueryParser.g:911:9: ( LBRACKET ( pm_Expr ) RBRACKET )
+ // XQueryParser.g:911:13: LBRACKET ( pm_Expr ) RBRACKET
+ root_0 = this.adaptor.nil();
+
+ LBRACKET397=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_ElemEnclosedExpr7776); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET397_tree = this.adaptor.create(LBRACKET397);
+ this.adaptor.addChild(root_0, LBRACKET397_tree);
+ }
+ // XQueryParser.g:912:13: ( pm_Expr )
+ // XQueryParser.g:912:14: pm_Expr
+ if ( this.state.backtracking===0 ) {
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_ElemEnclosedExpr7793);
+ pm_Expr398=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr398.getTree());
+ if ( this.state.backtracking===0 ) {
+ }
+
+
+
+ RBRACKET399=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_ElemEnclosedExpr7810); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET399_tree = this.adaptor.create(RBRACKET399);
+ this.adaptor.addChild(root_0, RBRACKET399_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ComputedConstructor_return: (function() {
+ XQueryParser.p_ComputedConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ComputedConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:936:1: p_ComputedConstructor : ( p_CompDocConstructor | p_CompElemConstructor | p_CompAttrConstructor | p_CompNamespaceConstructor | p_CompTextConstructor | p_CompCommentConstructor | p_CompPIConstructor | {...}? => p_CompBinaryConstructor );
+ // $ANTLR start "p_ComputedConstructor"
+ p_ComputedConstructor: function() {
+ var retval = new XQueryParser.p_ComputedConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_CompDocConstructor400 = null;
+ var p_CompElemConstructor401 = null;
+ var p_CompAttrConstructor402 = null;
+ var p_CompNamespaceConstructor403 = null;
+ var p_CompTextConstructor404 = null;
+ var p_CompCommentConstructor405 = null;
+ var p_CompPIConstructor406 = null;
+ var p_CompBinaryConstructor407 = null;
+
+
+ try {
+ // XQueryParser.g:937:9: ( p_CompDocConstructor | p_CompElemConstructor | p_CompAttrConstructor | p_CompNamespaceConstructor | p_CompTextConstructor | p_CompCommentConstructor | p_CompPIConstructor | {...}? => p_CompBinaryConstructor )
+ var alt144=8;
+ var LA144_0 = this.input.LA(1);
+
+ if ( (LA144_0==DOCUMENT) ) {
+ alt144=1;
+ }
+ else if ( (LA144_0==ELEMENT) ) {
+ alt144=2;
+ }
+ else if ( (LA144_0==ATTRIBUTE) ) {
+ alt144=3;
+ }
+ else if ( (LA144_0==NAMESPACE) ) {
+ alt144=4;
+ }
+ else if ( (LA144_0==TEXT) ) {
+ alt144=5;
+ }
+ else if ( (LA144_0==COMMENT) ) {
+ alt144=6;
+ }
+ else if ( (LA144_0==PROCESSING_INSTRUCTION) ) {
+ alt144=7;
+ }
+ else if ( (LA144_0==BINARY) && ((false))) {
+ alt144=8;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 144, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt144) {
+ case 1 :
+ // XQueryParser.g:937:13: p_CompDocConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompDocConstructor_in_p_ComputedConstructor7861);
+ p_CompDocConstructor400=this.p_CompDocConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompDocConstructor400.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:938:11: p_CompElemConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompElemConstructor_in_p_ComputedConstructor7873);
+ p_CompElemConstructor401=this.p_CompElemConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompElemConstructor401.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:939:11: p_CompAttrConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompAttrConstructor_in_p_ComputedConstructor7885);
+ p_CompAttrConstructor402=this.p_CompAttrConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompAttrConstructor402.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:940:11: p_CompNamespaceConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompNamespaceConstructor_in_p_ComputedConstructor7897);
+ p_CompNamespaceConstructor403=this.p_CompNamespaceConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompNamespaceConstructor403.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:941:11: p_CompTextConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompTextConstructor_in_p_ComputedConstructor7909);
+ p_CompTextConstructor404=this.p_CompTextConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompTextConstructor404.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:942:11: p_CompCommentConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompCommentConstructor_in_p_ComputedConstructor7921);
+ p_CompCommentConstructor405=this.p_CompCommentConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompCommentConstructor405.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:943:11: p_CompPIConstructor
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CompPIConstructor_in_p_ComputedConstructor7933);
+ p_CompPIConstructor406=this.p_CompPIConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompPIConstructor406.getTree());
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:944:11: {...}? => p_CompBinaryConstructor
+ root_0 = this.adaptor.nil();
+
+ if ( !((false)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ComputedConstructor", "false");
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_CompBinaryConstructor_in_p_ComputedConstructor7948);
+ p_CompBinaryConstructor407=this.p_CompBinaryConstructor();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CompBinaryConstructor407.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompDocConstructor_return: (function() {
+ XQueryParser.p_CompDocConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompDocConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:948:1: p_CompDocConstructor : k= DOCUMENT LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_CompDocConstructor"
+ p_CompDocConstructor: function() {
+ var retval = new XQueryParser.p_CompDocConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET408 = null;
+ var RBRACKET410 = null;
+ var pm_Expr409 = null;
+
+ var k_tree=null;
+ var LBRACKET408_tree=null;
+ var RBRACKET410_tree=null;
+
+ try {
+ // XQueryParser.g:949:9: (k= DOCUMENT LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:949:13: k= DOCUMENT LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DOCUMENT,XQueryParser.FOLLOW_DOCUMENT_in_p_CompDocConstructor7982); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET408=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompDocConstructor7985); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET408_tree = this.adaptor.create(LBRACKET408);
+ this.adaptor.addChild(root_0, LBRACKET408_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompDocConstructor7987);
+ pm_Expr409=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr409.getTree());
+ RBRACKET410=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompDocConstructor7989); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET410_tree = this.adaptor.create(RBRACKET410);
+ this.adaptor.addChild(root_0, RBRACKET410_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompElemConstructor_return: (function() {
+ XQueryParser.p_CompElemConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompElemConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:953:1: p_CompElemConstructor : k= ELEMENT ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET ;
+ // $ANTLR start "p_CompElemConstructor"
+ p_CompElemConstructor: function() {
+ var retval = new XQueryParser.p_CompElemConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET412 = null;
+ var RBRACKET414 = null;
+ var LBRACKET415 = null;
+ var RBRACKET417 = null;
+ var p_QName411 = null;
+ var pm_Expr413 = null;
+ var pm_Expr416 = null;
+
+ var k_tree=null;
+ var LBRACKET412_tree=null;
+ var RBRACKET414_tree=null;
+ var LBRACKET415_tree=null;
+ var RBRACKET417_tree=null;
+
+ try {
+ // XQueryParser.g:954:9: (k= ELEMENT ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET )
+ // XQueryParser.g:954:13: k= ELEMENT ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,ELEMENT,XQueryParser.FOLLOW_ELEMENT_in_p_CompElemConstructor8030); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ // XQueryParser.g:954:24: ( p_QName | ( LBRACKET pm_Expr RBRACKET ) )
+ var alt145=2;
+ var LA145_0 = this.input.LA(1);
+
+ if ( ((LA145_0>=ANCESTOR && LA145_0<=EXIT)||(LA145_0>=SEQUENTIAL && LA145_0<=MAINTAINED)||(LA145_0>=MUTABLE && LA145_0<=QUOT_ER)||LA145_0==L_NCName||LA145_0==EXPLICITLY) ) {
+ alt145=1;
+ }
+ else if ( (LA145_0==LBRACKET) ) {
+ alt145=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 145, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt145) {
+ case 1 :
+ // XQueryParser.g:954:25: p_QName
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_CompElemConstructor8034);
+ p_QName411=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName411.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:954:35: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:954:35: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:954:36: LBRACKET pm_Expr RBRACKET
+ LBRACKET412=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompElemConstructor8039); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET412_tree = this.adaptor.create(LBRACKET412);
+ this.adaptor.addChild(root_0, LBRACKET412_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompElemConstructor8041);
+ pm_Expr413=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr413.getTree());
+ RBRACKET414=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompElemConstructor8043); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET414_tree = this.adaptor.create(RBRACKET414);
+ this.adaptor.addChild(root_0, RBRACKET414_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+
+ LBRACKET415=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompElemConstructor8047); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET415_tree = this.adaptor.create(LBRACKET415);
+ this.adaptor.addChild(root_0, LBRACKET415_tree);
+ }
+ // XQueryParser.g:954:73: ( pm_Expr )?
+ var alt146=2;
+ var LA146_0 = this.input.LA(1);
+
+ if ( ((LA146_0>=ANCESTOR && LA146_0<=EXIT)||(LA146_0>=SEQUENTIAL && LA146_0<=MAINTAINED)||(LA146_0>=MUTABLE && LA146_0<=LPAREN)||LA146_0==DOLLAR||(LA146_0>=STAR && LA146_0<=SMALLER)||(LA146_0>=SLASH && LA146_0<=DOT_DOT)||LA146_0==ATTR_SIGN||(LA146_0>=APOS && LA146_0<=QUOT)||LA146_0==L_NCName||(LA146_0>=L_Pragma && LA146_0<=L_DoubleLiteral)||(LA146_0>=LETDOLLAR && LA146_0<=EXPLICITLY)) ) {
+ alt146=1;
+ }
+ switch (alt146) {
+ case 1 :
+ // XQueryParser.g:954:73: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompElemConstructor8049);
+ pm_Expr416=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr416.getTree());
+
+
+ break;
+
+ }
+
+ RBRACKET417=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompElemConstructor8052); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET417_tree = this.adaptor.create(RBRACKET417);
+ this.adaptor.addChild(root_0, RBRACKET417_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompAttrConstructor_return: (function() {
+ XQueryParser.p_CompAttrConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompAttrConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:961:1: p_CompAttrConstructor : k= ATTRIBUTE ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET ;
+ // $ANTLR start "p_CompAttrConstructor"
+ p_CompAttrConstructor: function() {
+ var retval = new XQueryParser.p_CompAttrConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET419 = null;
+ var RBRACKET421 = null;
+ var LBRACKET422 = null;
+ var RBRACKET424 = null;
+ var p_QName418 = null;
+ var pm_Expr420 = null;
+ var pm_Expr423 = null;
+
+ var k_tree=null;
+ var LBRACKET419_tree=null;
+ var RBRACKET421_tree=null;
+ var LBRACKET422_tree=null;
+ var RBRACKET424_tree=null;
+
+ try {
+ // XQueryParser.g:962:9: (k= ATTRIBUTE ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET )
+ // XQueryParser.g:962:13: k= ATTRIBUTE ( p_QName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,ATTRIBUTE,XQueryParser.FOLLOW_ATTRIBUTE_in_p_CompAttrConstructor8085); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ // XQueryParser.g:962:26: ( p_QName | ( LBRACKET pm_Expr RBRACKET ) )
+ var alt147=2;
+ var LA147_0 = this.input.LA(1);
+
+ if ( ((LA147_0>=ANCESTOR && LA147_0<=EXIT)||(LA147_0>=SEQUENTIAL && LA147_0<=MAINTAINED)||(LA147_0>=MUTABLE && LA147_0<=QUOT_ER)||LA147_0==L_NCName||LA147_0==EXPLICITLY) ) {
+ alt147=1;
+ }
+ else if ( (LA147_0==LBRACKET) ) {
+ alt147=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 147, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt147) {
+ case 1 :
+ // XQueryParser.g:962:27: p_QName
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_CompAttrConstructor8089);
+ p_QName418=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName418.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:962:37: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:962:37: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:962:38: LBRACKET pm_Expr RBRACKET
+ LBRACKET419=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompAttrConstructor8094); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET419_tree = this.adaptor.create(LBRACKET419);
+ this.adaptor.addChild(root_0, LBRACKET419_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompAttrConstructor8096);
+ pm_Expr420=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr420.getTree());
+ RBRACKET421=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompAttrConstructor8098); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET421_tree = this.adaptor.create(RBRACKET421);
+ this.adaptor.addChild(root_0, RBRACKET421_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+
+ LBRACKET422=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompAttrConstructor8102); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET422_tree = this.adaptor.create(LBRACKET422);
+ this.adaptor.addChild(root_0, LBRACKET422_tree);
+ }
+ // XQueryParser.g:962:75: ( pm_Expr )?
+ var alt148=2;
+ var LA148_0 = this.input.LA(1);
+
+ if ( ((LA148_0>=ANCESTOR && LA148_0<=EXIT)||(LA148_0>=SEQUENTIAL && LA148_0<=MAINTAINED)||(LA148_0>=MUTABLE && LA148_0<=LPAREN)||LA148_0==DOLLAR||(LA148_0>=STAR && LA148_0<=SMALLER)||(LA148_0>=SLASH && LA148_0<=DOT_DOT)||LA148_0==ATTR_SIGN||(LA148_0>=APOS && LA148_0<=QUOT)||LA148_0==L_NCName||(LA148_0>=L_Pragma && LA148_0<=L_DoubleLiteral)||(LA148_0>=LETDOLLAR && LA148_0<=EXPLICITLY)) ) {
+ alt148=1;
+ }
+ switch (alt148) {
+ case 1 :
+ // XQueryParser.g:962:75: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompAttrConstructor8104);
+ pm_Expr423=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr423.getTree());
+
+
+ break;
+
+ }
+
+ RBRACKET424=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompAttrConstructor8107); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET424_tree = this.adaptor.create(RBRACKET424);
+ this.adaptor.addChild(root_0, RBRACKET424_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompNamespaceConstructor_return: (function() {
+ XQueryParser.p_CompNamespaceConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompNamespaceConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:966:1: p_CompNamespaceConstructor : k= NAMESPACE ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET ;
+ // $ANTLR start "p_CompNamespaceConstructor"
+ p_CompNamespaceConstructor: function() {
+ var retval = new XQueryParser.p_CompNamespaceConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET426 = null;
+ var RBRACKET428 = null;
+ var LBRACKET429 = null;
+ var RBRACKET431 = null;
+ var p_NCName425 = null;
+ var pm_Expr427 = null;
+ var pm_Expr430 = null;
+
+ var k_tree=null;
+ var LBRACKET426_tree=null;
+ var RBRACKET428_tree=null;
+ var LBRACKET429_tree=null;
+ var RBRACKET431_tree=null;
+
+ try {
+ // XQueryParser.g:967:9: (k= NAMESPACE ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET )
+ // XQueryParser.g:967:11: k= NAMESPACE ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,NAMESPACE,XQueryParser.FOLLOW_NAMESPACE_in_p_CompNamespaceConstructor8135); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ // XQueryParser.g:967:24: ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) )
+ var alt149=2;
+ var LA149_0 = this.input.LA(1);
+
+ if ( ((LA149_0>=ANCESTOR && LA149_0<=EXIT)||(LA149_0>=SEQUENTIAL && LA149_0<=MAINTAINED)||(LA149_0>=MUTABLE && LA149_0<=QUOT_ER)||LA149_0==L_NCName||LA149_0==EXPLICITLY) ) {
+ alt149=1;
+ }
+ else if ( (LA149_0==LBRACKET) ) {
+ alt149=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 149, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt149) {
+ case 1 :
+ // XQueryParser.g:967:25: p_NCName
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_CompNamespaceConstructor8139);
+ p_NCName425=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName425.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:967:36: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:967:36: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:967:37: LBRACKET pm_Expr RBRACKET
+ LBRACKET426=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompNamespaceConstructor8144); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET426_tree = this.adaptor.create(LBRACKET426);
+ this.adaptor.addChild(root_0, LBRACKET426_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompNamespaceConstructor8146);
+ pm_Expr427=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr427.getTree());
+ RBRACKET428=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompNamespaceConstructor8148); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET428_tree = this.adaptor.create(RBRACKET428);
+ this.adaptor.addChild(root_0, RBRACKET428_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+
+ LBRACKET429=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompNamespaceConstructor8152); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET429_tree = this.adaptor.create(LBRACKET429);
+ this.adaptor.addChild(root_0, LBRACKET429_tree);
+ }
+ // XQueryParser.g:967:74: ( pm_Expr )?
+ var alt150=2;
+ var LA150_0 = this.input.LA(1);
+
+ if ( ((LA150_0>=ANCESTOR && LA150_0<=EXIT)||(LA150_0>=SEQUENTIAL && LA150_0<=MAINTAINED)||(LA150_0>=MUTABLE && LA150_0<=LPAREN)||LA150_0==DOLLAR||(LA150_0>=STAR && LA150_0<=SMALLER)||(LA150_0>=SLASH && LA150_0<=DOT_DOT)||LA150_0==ATTR_SIGN||(LA150_0>=APOS && LA150_0<=QUOT)||LA150_0==L_NCName||(LA150_0>=L_Pragma && LA150_0<=L_DoubleLiteral)||(LA150_0>=LETDOLLAR && LA150_0<=EXPLICITLY)) ) {
+ alt150=1;
+ }
+ switch (alt150) {
+ case 1 :
+ // XQueryParser.g:967:74: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompNamespaceConstructor8154);
+ pm_Expr430=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr430.getTree());
+
+
+ break;
+
+ }
+
+ RBRACKET431=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompNamespaceConstructor8157); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET431_tree = this.adaptor.create(RBRACKET431);
+ this.adaptor.addChild(root_0, RBRACKET431_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompTextConstructor_return: (function() {
+ XQueryParser.p_CompTextConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompTextConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:977:1: p_CompTextConstructor : k= TEXT LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_CompTextConstructor"
+ p_CompTextConstructor: function() {
+ var retval = new XQueryParser.p_CompTextConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET432 = null;
+ var RBRACKET434 = null;
+ var pm_Expr433 = null;
+
+ var k_tree=null;
+ var LBRACKET432_tree=null;
+ var RBRACKET434_tree=null;
+
+ try {
+ // XQueryParser.g:978:9: (k= TEXT LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:978:13: k= TEXT LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,TEXT,XQueryParser.FOLLOW_TEXT_in_p_CompTextConstructor8193); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET432=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompTextConstructor8196); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET432_tree = this.adaptor.create(LBRACKET432);
+ this.adaptor.addChild(root_0, LBRACKET432_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompTextConstructor8198);
+ pm_Expr433=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr433.getTree());
+ RBRACKET434=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompTextConstructor8200); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET434_tree = this.adaptor.create(RBRACKET434);
+ this.adaptor.addChild(root_0, RBRACKET434_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompBinaryConstructor_return: (function() {
+ XQueryParser.p_CompBinaryConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompBinaryConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:982:1: p_CompBinaryConstructor : k= BINARY LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_CompBinaryConstructor"
+ p_CompBinaryConstructor: function() {
+ var retval = new XQueryParser.p_CompBinaryConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET435 = null;
+ var RBRACKET437 = null;
+ var pm_Expr436 = null;
+
+ var k_tree=null;
+ var LBRACKET435_tree=null;
+ var RBRACKET437_tree=null;
+
+ try {
+ // XQueryParser.g:983:9: (k= BINARY LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:983:13: k= BINARY LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,BINARY,XQueryParser.FOLLOW_BINARY_in_p_CompBinaryConstructor8230); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET435=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompBinaryConstructor8233); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET435_tree = this.adaptor.create(LBRACKET435);
+ this.adaptor.addChild(root_0, LBRACKET435_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompBinaryConstructor8235);
+ pm_Expr436=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr436.getTree());
+ RBRACKET437=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompBinaryConstructor8237); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET437_tree = this.adaptor.create(RBRACKET437);
+ this.adaptor.addChild(root_0, RBRACKET437_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompCommentConstructor_return: (function() {
+ XQueryParser.p_CompCommentConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompCommentConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:987:1: p_CompCommentConstructor : k= COMMENT LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_CompCommentConstructor"
+ p_CompCommentConstructor: function() {
+ var retval = new XQueryParser.p_CompCommentConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET438 = null;
+ var RBRACKET440 = null;
+ var pm_Expr439 = null;
+
+ var k_tree=null;
+ var LBRACKET438_tree=null;
+ var RBRACKET440_tree=null;
+
+ try {
+ // XQueryParser.g:988:9: (k= COMMENT LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:988:13: k= COMMENT LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,COMMENT,XQueryParser.FOLLOW_COMMENT_in_p_CompCommentConstructor8267); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ LBRACKET438=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompCommentConstructor8270); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET438_tree = this.adaptor.create(LBRACKET438);
+ this.adaptor.addChild(root_0, LBRACKET438_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompCommentConstructor8272);
+ pm_Expr439=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr439.getTree());
+ RBRACKET440=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompCommentConstructor8274); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET440_tree = this.adaptor.create(RBRACKET440);
+ this.adaptor.addChild(root_0, RBRACKET440_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CompPIConstructor_return: (function() {
+ XQueryParser.p_CompPIConstructor_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CompPIConstructor_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:992:1: p_CompPIConstructor : k= PROCESSING_INSTRUCTION ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET ;
+ // $ANTLR start "p_CompPIConstructor"
+ p_CompPIConstructor: function() {
+ var retval = new XQueryParser.p_CompPIConstructor_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var LBRACKET442 = null;
+ var RBRACKET444 = null;
+ var LBRACKET445 = null;
+ var RBRACKET447 = null;
+ var p_NCName441 = null;
+ var pm_Expr443 = null;
+ var pm_Expr446 = null;
+
+ var k_tree=null;
+ var LBRACKET442_tree=null;
+ var RBRACKET444_tree=null;
+ var LBRACKET445_tree=null;
+ var RBRACKET447_tree=null;
+
+ try {
+ // XQueryParser.g:993:9: (k= PROCESSING_INSTRUCTION ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET )
+ // XQueryParser.g:993:13: k= PROCESSING_INSTRUCTION ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) ) LBRACKET ( pm_Expr )? RBRACKET
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,PROCESSING_INSTRUCTION,XQueryParser.FOLLOW_PROCESSING_INSTRUCTION_in_p_CompPIConstructor8305); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ // XQueryParser.g:993:39: ( p_NCName | ( LBRACKET pm_Expr RBRACKET ) )
+ var alt151=2;
+ var LA151_0 = this.input.LA(1);
+
+ if ( ((LA151_0>=ANCESTOR && LA151_0<=EXIT)||(LA151_0>=SEQUENTIAL && LA151_0<=MAINTAINED)||(LA151_0>=MUTABLE && LA151_0<=QUOT_ER)||LA151_0==L_NCName||LA151_0==EXPLICITLY) ) {
+ alt151=1;
+ }
+ else if ( (LA151_0==LBRACKET) ) {
+ alt151=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 151, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt151) {
+ case 1 :
+ // XQueryParser.g:993:40: p_NCName
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_CompPIConstructor8309);
+ p_NCName441=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName441.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:993:51: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:993:51: ( LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:993:52: LBRACKET pm_Expr RBRACKET
+ LBRACKET442=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompPIConstructor8314); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET442_tree = this.adaptor.create(LBRACKET442);
+ this.adaptor.addChild(root_0, LBRACKET442_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompPIConstructor8316);
+ pm_Expr443=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr443.getTree());
+ RBRACKET444=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompPIConstructor8318); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET444_tree = this.adaptor.create(RBRACKET444);
+ this.adaptor.addChild(root_0, RBRACKET444_tree);
+ }
+
+
+
+
+
+ break;
+
+ }
+
+ LBRACKET445=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CompPIConstructor8322); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET445_tree = this.adaptor.create(LBRACKET445);
+ this.adaptor.addChild(root_0, LBRACKET445_tree);
+ }
+ // XQueryParser.g:993:89: ( pm_Expr )?
+ var alt152=2;
+ var LA152_0 = this.input.LA(1);
+
+ if ( ((LA152_0>=ANCESTOR && LA152_0<=EXIT)||(LA152_0>=SEQUENTIAL && LA152_0<=MAINTAINED)||(LA152_0>=MUTABLE && LA152_0<=LPAREN)||LA152_0==DOLLAR||(LA152_0>=STAR && LA152_0<=SMALLER)||(LA152_0>=SLASH && LA152_0<=DOT_DOT)||LA152_0==ATTR_SIGN||(LA152_0>=APOS && LA152_0<=QUOT)||LA152_0==L_NCName||(LA152_0>=L_Pragma && LA152_0<=L_DoubleLiteral)||(LA152_0>=LETDOLLAR && LA152_0<=EXPLICITLY)) ) {
+ alt152=1;
+ }
+ switch (alt152) {
+ case 1 :
+ // XQueryParser.g:993:89: pm_Expr
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CompPIConstructor8324);
+ pm_Expr446=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr446.getTree());
+
+
+ break;
+
+ }
+
+ RBRACKET447=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CompPIConstructor8327); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET447_tree = this.adaptor.create(RBRACKET447);
+ this.adaptor.addChild(root_0, RBRACKET447_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SingleType_return: (function() {
+ XQueryParser.p_SingleType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SingleType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:997:1: p_SingleType : p_AtomicType ( QUESTION )? ;
+ // $ANTLR start "p_SingleType"
+ p_SingleType: function() {
+ var retval = new XQueryParser.p_SingleType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var QUESTION449 = null;
+ var p_AtomicType448 = null;
+
+ var QUESTION449_tree=null;
+
+ try {
+ // XQueryParser.g:998:9: ( p_AtomicType ( QUESTION )? )
+ // XQueryParser.g:998:13: p_AtomicType ( QUESTION )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AtomicType_in_p_SingleType8355);
+ p_AtomicType448=this.p_AtomicType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AtomicType448.getTree());
+ // XQueryParser.g:998:26: ( QUESTION )?
+ var alt153=2;
+ var LA153_0 = this.input.LA(1);
+
+ if ( (LA153_0==QUESTION) ) {
+ alt153=1;
+ }
+ switch (alt153) {
+ case 1 :
+ // XQueryParser.g:998:26: QUESTION
+ QUESTION449=this.match(this.input,QUESTION,XQueryParser.FOLLOW_QUESTION_in_p_SingleType8357); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ QUESTION449_tree = this.adaptor.create(QUESTION449);
+ this.adaptor.addChild(root_0, QUESTION449_tree);
+ }
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TypeDeclaration_return: (function() {
+ XQueryParser.p_TypeDeclaration_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TypeDeclaration_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1002:1: p_TypeDeclaration : k= AS st= p_SequenceType -> ^( TypeDeclaration $st) ;
+ // $ANTLR start "p_TypeDeclaration"
+ p_TypeDeclaration: function() {
+ var retval = new XQueryParser.p_TypeDeclaration_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var st = null;
+
+ var k_tree=null;
+ var stream_AS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token AS");
+ var stream_p_SequenceType=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_SequenceType");
+ try {
+ // XQueryParser.g:1003:9: (k= AS st= p_SequenceType -> ^( TypeDeclaration $st) )
+ // XQueryParser.g:1003:13: k= AS st= p_SequenceType
+ k=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_TypeDeclaration8388); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_AS.add(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_SequenceType_in_p_TypeDeclaration8393);
+ st=this.p_SequenceType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_SequenceType.add(st.getTree());
+
+
+ // AST REWRITE
+ // elements: st
+ // token labels:
+ // rule labels: retval, st
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_st=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token st",st!=null?st.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1004:17: -> ^( TypeDeclaration $st)
+ {
+ // XQueryParser.g:1004:20: ^( TypeDeclaration $st)
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(TypeDeclaration, "TypeDeclaration"), root_1);
+
+ this.adaptor.addChild(root_1, stream_st.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SequenceType_return: (function() {
+ XQueryParser.p_SequenceType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SequenceType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1008:1: p_SequenceType : (k= EMPTY_SEQUENCE l= LPAREN r= RPAREN -> ^( SequenceType ^( EmptySequenceTest $k $l $r) ) | it= p_ItemType ( ( p_OccurrenceIndicator )=>oi= p_OccurrenceIndicator )? -> ^( SequenceType $it ( $oi)? ) );
+ // $ANTLR start "p_SequenceType"
+ p_SequenceType: function() {
+ var retval = new XQueryParser.p_SequenceType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var l = null;
+ var r = null;
+ var it = null;
+ var oi = null;
+
+ var k_tree=null;
+ var l_tree=null;
+ var r_tree=null;
+ var stream_EMPTY_SEQUENCE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token EMPTY_SEQUENCE");
+ var stream_RPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token RPAREN");
+ var stream_LPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token LPAREN");
+ var stream_p_ItemType=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ItemType");
+ var stream_p_OccurrenceIndicator=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_OccurrenceIndicator");
+ try {
+ // XQueryParser.g:1009:9: (k= EMPTY_SEQUENCE l= LPAREN r= RPAREN -> ^( SequenceType ^( EmptySequenceTest $k $l $r) ) | it= p_ItemType ( ( p_OccurrenceIndicator )=>oi= p_OccurrenceIndicator )? -> ^( SequenceType $it ( $oi)? ) )
+ var alt155=2;
+ var LA155_0 = this.input.LA(1);
+
+ if ( (LA155_0==EMPTY_SEQUENCE) ) {
+ var LA155_1 = this.input.LA(2);
+
+ if ( (LA155_1==LPAREN) ) {
+ alt155=1;
+ }
+ else if ( (LA155_1==EOF||(LA155_1>=AND && LA155_1<=AT)||LA155_1==CASE||LA155_1==COLLATION||LA155_1==DEFAULT||(LA155_1>=DESCENDING && LA155_1<=DIV)||(LA155_1>=ELSE && LA155_1<=EMPTY)||LA155_1==EQ||(LA155_1>=EXCEPT && LA155_1<=EXTERNAL)||LA155_1==FOR||LA155_1==GE||(LA155_1>=GT && LA155_1<=IDIV)||LA155_1==IN||(LA155_1>=INSTANCE && LA155_1<=IS)||LA155_1==LE||(LA155_1>=LT && LA155_1<=MOD)||LA155_1==NE||(LA155_1>=OR && LA155_1<=ORDER)||(LA155_1>=RETURN && LA155_1<=SATISFIES)||LA155_1==STABLE||LA155_1==TO||LA155_1==UNION||LA155_1==WHERE||LA155_1==COUNT||(LA155_1>=END && LA155_1<=GROUP)||LA155_1==ONLY||LA155_1==START||(LA155_1>=AFTER && LA155_1<=BEFORE)||LA155_1==INTO||LA155_1==MODIFY||LA155_1==WITH||LA155_1==RPAREN||(LA155_1>=LBRACKET && LA155_1<=RBRACKET)||(LA155_1>=RSQUARE && LA155_1<=NOTEQUAL)||(LA155_1>=COMMA && LA155_1<=GREATER_GREATER)||LA155_1==COLON||(LA155_1>=SEMICOLON && LA155_1<=VBAR)||LA155_1==LETDOLLAR) ) {
+ alt155=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 155, 1, this.input);
+
+ throw nvae;
+ }
+ }
+ else if ( ((LA155_0>=ANCESTOR && LA155_0<=EMPTY)||(LA155_0>=ENCODING && LA155_0<=EXIT)||(LA155_0>=SEQUENTIAL && LA155_0<=MAINTAINED)||(LA155_0>=MUTABLE && LA155_0<=QUOT_ER)||LA155_0==L_NCName||LA155_0==EXPLICITLY) ) {
+ alt155=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 155, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt155) {
+ case 1 :
+ // XQueryParser.g:1009:13: k= EMPTY_SEQUENCE l= LPAREN r= RPAREN
+ k=this.match(this.input,EMPTY_SEQUENCE,XQueryParser.FOLLOW_EMPTY_SEQUENCE_in_p_SequenceType8448); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_EMPTY_SEQUENCE.add(k);
+
+ l=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_SequenceType8453); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LPAREN.add(l);
+
+ r=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_SequenceType8457); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RPAREN.add(r);
+
+
+
+ // AST REWRITE
+ // elements: k, r, l
+ // token labels: r, l, k
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_r=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token r",r);
+ var stream_l=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token l",l);
+ var stream_k=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token k",k);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1010:17: -> ^( SequenceType ^( EmptySequenceTest $k $l $r) )
+ {
+ // XQueryParser.g:1010:20: ^( SequenceType ^( EmptySequenceTest $k $l $r) )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(SequenceType, "SequenceType"), root_1);
+
+ // XQueryParser.g:1010:35: ^( EmptySequenceTest $k $l $r)
+ {
+ var root_2 = this.adaptor.nil();
+ root_2 = this.adaptor.becomeRoot(this.adaptor.create(EmptySequenceTest, "EmptySequenceTest"), root_2);
+
+ this.adaptor.addChild(root_2, stream_k.nextNode());
+ this.adaptor.addChild(root_2, stream_l.nextNode());
+ this.adaptor.addChild(root_2, stream_r.nextNode());
+
+ this.adaptor.addChild(root_1, root_2);
+ }
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:1011:11: it= p_ItemType ( ( p_OccurrenceIndicator )=>oi= p_OccurrenceIndicator )?
+ this.pushFollow(XQueryParser.FOLLOW_p_ItemType_in_p_SequenceType8506);
+ it=this.p_ItemType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ItemType.add(it.getTree());
+ // XQueryParser.g:1011:25: ( ( p_OccurrenceIndicator )=>oi= p_OccurrenceIndicator )?
+ var alt154=2;
+ alt154 = this.dfa154.predict(this.input);
+ switch (alt154) {
+ case 1 :
+ // XQueryParser.g:1011:26: ( p_OccurrenceIndicator )=>oi= p_OccurrenceIndicator
+ this.pushFollow(XQueryParser.FOLLOW_p_OccurrenceIndicator_in_p_SequenceType8517);
+ oi=this.p_OccurrenceIndicator();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_OccurrenceIndicator.add(oi.getTree());
+
+
+ break;
+
+ }
+
+
+
+ // AST REWRITE
+ // elements: oi, it
+ // token labels:
+ // rule labels: retval, it, oi
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_it=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token it",it!=null?it.tree:null);
+ var stream_oi=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token oi",oi!=null?oi.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1012:17: -> ^( SequenceType $it ( $oi)? )
+ {
+ // XQueryParser.g:1012:20: ^( SequenceType $it ( $oi)? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(SequenceType, "SequenceType"), root_1);
+
+ this.adaptor.addChild(root_1, stream_it.nextTree());
+ // XQueryParser.g:1012:39: ( $oi)?
+ if ( stream_oi.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_oi.nextTree());
+
+ }
+ stream_oi.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_OccurrenceIndicator_return: (function() {
+ XQueryParser.p_OccurrenceIndicator_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_OccurrenceIndicator_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1016:1: p_OccurrenceIndicator : ( QUESTION | STAR | PLUS );
+ // $ANTLR start "p_OccurrenceIndicator"
+ p_OccurrenceIndicator: function() {
+ var retval = new XQueryParser.p_OccurrenceIndicator_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set450 = null;
+
+ var set450_tree=null;
+
+ try {
+ // XQueryParser.g:1017:9: ( QUESTION | STAR | PLUS )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set450=this.input.LT(1);
+ if ( (this.input.LA(1)>=QUESTION && this.input.LA(1)<=PLUS) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set450));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ItemType_return: (function() {
+ XQueryParser.p_ItemType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ItemType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1021:1: p_ItemType : ( p_KindTest -> ^( KindTest p_KindTest ) | {...}? => ( BINARY LPAREN RPAREN ) -> ^( BinaryTest BINARY LPAREN RPAREN ) | ( ITEM LPAREN RPAREN ) -> ^( ItemTest ITEM LPAREN RPAREN ) | p_AtomicType );
+ // $ANTLR start "p_ItemType"
+ p_ItemType: function() {
+ var retval = new XQueryParser.p_ItemType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var BINARY452 = null;
+ var LPAREN453 = null;
+ var RPAREN454 = null;
+ var ITEM455 = null;
+ var LPAREN456 = null;
+ var RPAREN457 = null;
+ var p_KindTest451 = null;
+ var p_AtomicType458 = null;
+
+ var BINARY452_tree=null;
+ var LPAREN453_tree=null;
+ var RPAREN454_tree=null;
+ var ITEM455_tree=null;
+ var LPAREN456_tree=null;
+ var RPAREN457_tree=null;
+ var stream_RPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token RPAREN");
+ var stream_ITEM=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token ITEM");
+ var stream_BINARY=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token BINARY");
+ var stream_LPAREN=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token LPAREN");
+ var stream_p_KindTest=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_KindTest");
+ try {
+ // XQueryParser.g:1022:9: ( p_KindTest -> ^( KindTest p_KindTest ) | {...}? => ( BINARY LPAREN RPAREN ) -> ^( BinaryTest BINARY LPAREN RPAREN ) | ( ITEM LPAREN RPAREN ) -> ^( ItemTest ITEM LPAREN RPAREN ) | p_AtomicType )
+ var alt156=4;
+ alt156 = this.dfa156.predict(this.input);
+ switch (alt156) {
+ case 1 :
+ // XQueryParser.g:1022:11: p_KindTest
+ this.pushFollow(XQueryParser.FOLLOW_p_KindTest_in_p_ItemType8619);
+ p_KindTest451=this.p_KindTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_KindTest.add(p_KindTest451.getTree());
+
+
+ // AST REWRITE
+ // elements: p_KindTest
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1023:17: -> ^( KindTest p_KindTest )
+ {
+ // XQueryParser.g:1023:20: ^( KindTest p_KindTest )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(KindTest, "KindTest"), root_1);
+
+ this.adaptor.addChild(root_1, stream_p_KindTest.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:1024:11: {...}? => ( BINARY LPAREN RPAREN )
+ if ( !((false)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_ItemType", "false");
+ }
+ // XQueryParser.g:1024:22: ( BINARY LPAREN RPAREN )
+ // XQueryParser.g:1024:23: BINARY LPAREN RPAREN
+ BINARY452=this.match(this.input,BINARY,XQueryParser.FOLLOW_BINARY_in_p_ItemType8659); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BINARY.add(BINARY452);
+
+ LPAREN453=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_ItemType8661); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LPAREN.add(LPAREN453);
+
+ RPAREN454=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_ItemType8663); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RPAREN.add(RPAREN454);
+
+
+
+
+
+
+ // AST REWRITE
+ // elements: LPAREN, RPAREN, BINARY
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1025:17: -> ^( BinaryTest BINARY LPAREN RPAREN )
+ {
+ // XQueryParser.g:1025:20: ^( BinaryTest BINARY LPAREN RPAREN )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(BinaryTest, "BinaryTest"), root_1);
+
+ this.adaptor.addChild(root_1, stream_BINARY.nextNode());
+ this.adaptor.addChild(root_1, stream_LPAREN.nextNode());
+ this.adaptor.addChild(root_1, stream_RPAREN.nextNode());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 3 :
+ // XQueryParser.g:1026:11: ( ITEM LPAREN RPAREN )
+ // XQueryParser.g:1026:11: ( ITEM LPAREN RPAREN )
+ // XQueryParser.g:1026:12: ITEM LPAREN RPAREN
+ ITEM455=this.match(this.input,ITEM,XQueryParser.FOLLOW_ITEM_in_p_ItemType8705); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_ITEM.add(ITEM455);
+
+ LPAREN456=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_ItemType8707); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LPAREN.add(LPAREN456);
+
+ RPAREN457=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_ItemType8709); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RPAREN.add(RPAREN457);
+
+
+
+
+
+
+ // AST REWRITE
+ // elements: RPAREN, LPAREN, ITEM
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1027:17: -> ^( ItemTest ITEM LPAREN RPAREN )
+ {
+ // XQueryParser.g:1027:20: ^( ItemTest ITEM LPAREN RPAREN )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(ItemTest, "ItemTest"), root_1);
+
+ this.adaptor.addChild(root_1, stream_ITEM.nextNode());
+ this.adaptor.addChild(root_1, stream_LPAREN.nextNode());
+ this.adaptor.addChild(root_1, stream_RPAREN.nextNode());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 4 :
+ // XQueryParser.g:1028:11: p_AtomicType
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AtomicType_in_p_ItemType8750);
+ p_AtomicType458=this.p_AtomicType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AtomicType458.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AtomicType_return: (function() {
+ XQueryParser.p_AtomicType_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AtomicType_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1032:1: p_AtomicType : p_QName -> ^( AtomicType p_QName ) ;
+ // $ANTLR start "p_AtomicType"
+ p_AtomicType: function() {
+ var retval = new XQueryParser.p_AtomicType_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName459 = null;
+
+ var stream_p_QName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QName");
+ try {
+ // XQueryParser.g:1033:9: ( p_QName -> ^( AtomicType p_QName ) )
+ // XQueryParser.g:1033:11: p_QName
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_AtomicType8776);
+ p_QName459=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QName.add(p_QName459.getTree());
+
+
+ // AST REWRITE
+ // elements: p_QName
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1034:17: -> ^( AtomicType p_QName )
+ {
+ // XQueryParser.g:1034:20: ^( AtomicType p_QName )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(AtomicType, "AtomicType"), root_1);
+
+ this.adaptor.addChild(root_1, stream_p_QName.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_KindTest_return: (function() {
+ XQueryParser.p_KindTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_KindTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1038:1: p_KindTest : ( p_DocumentTest | p_ElementTest | p_AttributeTest | p_SchemaElementTest | p_SchemaAttributeTest | p_NamespaceNodeTest | p_PITest | p_CommentTest | p_TextTest | p_AnyKindTest );
+ // $ANTLR start "p_KindTest"
+ p_KindTest: function() {
+ var retval = new XQueryParser.p_KindTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_DocumentTest460 = null;
+ var p_ElementTest461 = null;
+ var p_AttributeTest462 = null;
+ var p_SchemaElementTest463 = null;
+ var p_SchemaAttributeTest464 = null;
+ var p_NamespaceNodeTest465 = null;
+ var p_PITest466 = null;
+ var p_CommentTest467 = null;
+ var p_TextTest468 = null;
+ var p_AnyKindTest469 = null;
+
+
+ try {
+ // XQueryParser.g:1039:9: ( p_DocumentTest | p_ElementTest | p_AttributeTest | p_SchemaElementTest | p_SchemaAttributeTest | p_NamespaceNodeTest | p_PITest | p_CommentTest | p_TextTest | p_AnyKindTest )
+ var alt157=10;
+ switch ( this.input.LA(1) ) {
+ case DOCUMENT_NODE:
+ alt157=1;
+ break;
+ case ELEMENT:
+ alt157=2;
+ break;
+ case ATTRIBUTE:
+ alt157=3;
+ break;
+ case SCHEMA_ELEMENT:
+ alt157=4;
+ break;
+ case SCHEMA_ATTRIBUTE:
+ alt157=5;
+ break;
+ case NAMESPACE_NODE:
+ alt157=6;
+ break;
+ case PROCESSING_INSTRUCTION:
+ alt157=7;
+ break;
+ case COMMENT:
+ alt157=8;
+ break;
+ case TEXT:
+ alt157=9;
+ break;
+ case NODE:
+ alt157=10;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 157, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt157) {
+ case 1 :
+ // XQueryParser.g:1039:11: p_DocumentTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_DocumentTest_in_p_KindTest8826);
+ p_DocumentTest460=this.p_DocumentTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_DocumentTest460.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1040:11: p_ElementTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ElementTest_in_p_KindTest8838);
+ p_ElementTest461=this.p_ElementTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElementTest461.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1041:11: p_AttributeTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AttributeTest_in_p_KindTest8850);
+ p_AttributeTest462=this.p_AttributeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AttributeTest462.getTree());
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:1042:11: p_SchemaElementTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_SchemaElementTest_in_p_KindTest8862);
+ p_SchemaElementTest463=this.p_SchemaElementTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SchemaElementTest463.getTree());
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:1043:11: p_SchemaAttributeTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_SchemaAttributeTest_in_p_KindTest8874);
+ p_SchemaAttributeTest464=this.p_SchemaAttributeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SchemaAttributeTest464.getTree());
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:1044:11: p_NamespaceNodeTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NamespaceNodeTest_in_p_KindTest8886);
+ p_NamespaceNodeTest465=this.p_NamespaceNodeTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NamespaceNodeTest465.getTree());
+
+
+ break;
+ case 7 :
+ // XQueryParser.g:1045:11: p_PITest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PITest_in_p_KindTest8898);
+ p_PITest466=this.p_PITest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PITest466.getTree());
+
+
+ break;
+ case 8 :
+ // XQueryParser.g:1046:11: p_CommentTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CommentTest_in_p_KindTest8910);
+ p_CommentTest467=this.p_CommentTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CommentTest467.getTree());
+
+
+ break;
+ case 9 :
+ // XQueryParser.g:1047:11: p_TextTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TextTest_in_p_KindTest8922);
+ p_TextTest468=this.p_TextTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TextTest468.getTree());
+
+
+ break;
+ case 10 :
+ // XQueryParser.g:1048:11: p_AnyKindTest
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AnyKindTest_in_p_KindTest8934);
+ p_AnyKindTest469=this.p_AnyKindTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AnyKindTest469.getTree());
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AnyKindTest_return: (function() {
+ XQueryParser.p_AnyKindTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AnyKindTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1052:1: p_AnyKindTest : NODE LPAREN RPAREN ;
+ // $ANTLR start "p_AnyKindTest"
+ p_AnyKindTest: function() {
+ var retval = new XQueryParser.p_AnyKindTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var NODE470 = null;
+ var LPAREN471 = null;
+ var RPAREN472 = null;
+
+ var NODE470_tree=null;
+ var LPAREN471_tree=null;
+ var RPAREN472_tree=null;
+
+ try {
+ // XQueryParser.g:1053:9: ( NODE LPAREN RPAREN )
+ // XQueryParser.g:1053:13: NODE LPAREN RPAREN
+ root_0 = this.adaptor.nil();
+
+ NODE470=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_AnyKindTest8962); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ NODE470_tree = this.adaptor.create(NODE470);
+ this.adaptor.addChild(root_0, NODE470_tree);
+ }
+ LPAREN471=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_AnyKindTest8964); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN471_tree = this.adaptor.create(LPAREN471);
+ this.adaptor.addChild(root_0, LPAREN471_tree);
+ }
+ RPAREN472=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_AnyKindTest8966); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN472_tree = this.adaptor.create(RPAREN472);
+ this.adaptor.addChild(root_0, RPAREN472_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DocumentTest_return: (function() {
+ XQueryParser.p_DocumentTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DocumentTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1057:1: p_DocumentTest : DOCUMENT_NODE LPAREN ( p_ElementTest | p_SchemaElementTest )? RPAREN ;
+ // $ANTLR start "p_DocumentTest"
+ p_DocumentTest: function() {
+ var retval = new XQueryParser.p_DocumentTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOCUMENT_NODE473 = null;
+ var LPAREN474 = null;
+ var RPAREN477 = null;
+ var p_ElementTest475 = null;
+ var p_SchemaElementTest476 = null;
+
+ var DOCUMENT_NODE473_tree=null;
+ var LPAREN474_tree=null;
+ var RPAREN477_tree=null;
+
+ try {
+ // XQueryParser.g:1058:9: ( DOCUMENT_NODE LPAREN ( p_ElementTest | p_SchemaElementTest )? RPAREN )
+ // XQueryParser.g:1058:13: DOCUMENT_NODE LPAREN ( p_ElementTest | p_SchemaElementTest )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ DOCUMENT_NODE473=this.match(this.input,DOCUMENT_NODE,XQueryParser.FOLLOW_DOCUMENT_NODE_in_p_DocumentTest8994); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOCUMENT_NODE473_tree = this.adaptor.create(DOCUMENT_NODE473);
+ this.adaptor.addChild(root_0, DOCUMENT_NODE473_tree);
+ }
+ LPAREN474=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_DocumentTest8996); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN474_tree = this.adaptor.create(LPAREN474);
+ this.adaptor.addChild(root_0, LPAREN474_tree);
+ }
+ // XQueryParser.g:1058:34: ( p_ElementTest | p_SchemaElementTest )?
+ var alt158=3;
+ var LA158_0 = this.input.LA(1);
+
+ if ( (LA158_0==ELEMENT) ) {
+ alt158=1;
+ }
+ else if ( (LA158_0==SCHEMA_ELEMENT) ) {
+ alt158=2;
+ }
+ switch (alt158) {
+ case 1 :
+ // XQueryParser.g:1058:35: p_ElementTest
+ this.pushFollow(XQueryParser.FOLLOW_p_ElementTest_in_p_DocumentTest8999);
+ p_ElementTest475=this.p_ElementTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElementTest475.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1058:51: p_SchemaElementTest
+ this.pushFollow(XQueryParser.FOLLOW_p_SchemaElementTest_in_p_DocumentTest9003);
+ p_SchemaElementTest476=this.p_SchemaElementTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SchemaElementTest476.getTree());
+
+
+ break;
+
+ }
+
+ RPAREN477=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_DocumentTest9007); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN477_tree = this.adaptor.create(RPAREN477);
+ this.adaptor.addChild(root_0, RPAREN477_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TextTest_return: (function() {
+ XQueryParser.p_TextTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TextTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1061:1: p_TextTest : TEXT LPAREN RPAREN ;
+ // $ANTLR start "p_TextTest"
+ p_TextTest: function() {
+ var retval = new XQueryParser.p_TextTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var TEXT478 = null;
+ var LPAREN479 = null;
+ var RPAREN480 = null;
+
+ var TEXT478_tree=null;
+ var LPAREN479_tree=null;
+ var RPAREN480_tree=null;
+
+ try {
+ // XQueryParser.g:1062:9: ( TEXT LPAREN RPAREN )
+ // XQueryParser.g:1062:13: TEXT LPAREN RPAREN
+ root_0 = this.adaptor.nil();
+
+ TEXT478=this.match(this.input,TEXT,XQueryParser.FOLLOW_TEXT_in_p_TextTest9027); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ TEXT478_tree = this.adaptor.create(TEXT478);
+ this.adaptor.addChild(root_0, TEXT478_tree);
+ }
+ LPAREN479=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_TextTest9029); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN479_tree = this.adaptor.create(LPAREN479);
+ this.adaptor.addChild(root_0, LPAREN479_tree);
+ }
+ RPAREN480=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_TextTest9031); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN480_tree = this.adaptor.create(RPAREN480);
+ this.adaptor.addChild(root_0, RPAREN480_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CommentTest_return: (function() {
+ XQueryParser.p_CommentTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CommentTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1066:1: p_CommentTest : COMMENT LPAREN RPAREN ;
+ // $ANTLR start "p_CommentTest"
+ p_CommentTest: function() {
+ var retval = new XQueryParser.p_CommentTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMENT481 = null;
+ var LPAREN482 = null;
+ var RPAREN483 = null;
+
+ var COMMENT481_tree=null;
+ var LPAREN482_tree=null;
+ var RPAREN483_tree=null;
+
+ try {
+ // XQueryParser.g:1067:9: ( COMMENT LPAREN RPAREN )
+ // XQueryParser.g:1067:13: COMMENT LPAREN RPAREN
+ root_0 = this.adaptor.nil();
+
+ COMMENT481=this.match(this.input,COMMENT,XQueryParser.FOLLOW_COMMENT_in_p_CommentTest9059); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMENT481_tree = this.adaptor.create(COMMENT481);
+ this.adaptor.addChild(root_0, COMMENT481_tree);
+ }
+ LPAREN482=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_CommentTest9061); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN482_tree = this.adaptor.create(LPAREN482);
+ this.adaptor.addChild(root_0, LPAREN482_tree);
+ }
+ RPAREN483=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_CommentTest9063); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN483_tree = this.adaptor.create(RPAREN483);
+ this.adaptor.addChild(root_0, RPAREN483_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NamespaceNodeTest_return: (function() {
+ XQueryParser.p_NamespaceNodeTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NamespaceNodeTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1071:1: p_NamespaceNodeTest : NAMESPACE_NODE LPAREN RPAREN ;
+ // $ANTLR start "p_NamespaceNodeTest"
+ p_NamespaceNodeTest: function() {
+ var retval = new XQueryParser.p_NamespaceNodeTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var NAMESPACE_NODE484 = null;
+ var LPAREN485 = null;
+ var RPAREN486 = null;
+
+ var NAMESPACE_NODE484_tree=null;
+ var LPAREN485_tree=null;
+ var RPAREN486_tree=null;
+
+ try {
+ // XQueryParser.g:1072:9: ( NAMESPACE_NODE LPAREN RPAREN )
+ // XQueryParser.g:1072:11: NAMESPACE_NODE LPAREN RPAREN
+ root_0 = this.adaptor.nil();
+
+ NAMESPACE_NODE484=this.match(this.input,NAMESPACE_NODE,XQueryParser.FOLLOW_NAMESPACE_NODE_in_p_NamespaceNodeTest9089); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ NAMESPACE_NODE484_tree = this.adaptor.create(NAMESPACE_NODE484);
+ this.adaptor.addChild(root_0, NAMESPACE_NODE484_tree);
+ }
+ LPAREN485=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_NamespaceNodeTest9091); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN485_tree = this.adaptor.create(LPAREN485);
+ this.adaptor.addChild(root_0, LPAREN485_tree);
+ }
+ RPAREN486=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_NamespaceNodeTest9093); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN486_tree = this.adaptor.create(RPAREN486);
+ this.adaptor.addChild(root_0, RPAREN486_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_PITest_return: (function() {
+ XQueryParser.p_PITest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_PITest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1076:1: p_PITest : PROCESSING_INSTRUCTION LPAREN ( p_NCName | p_StringLiteral )? RPAREN ;
+ // $ANTLR start "p_PITest"
+ p_PITest: function() {
+ var retval = new XQueryParser.p_PITest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var PROCESSING_INSTRUCTION487 = null;
+ var LPAREN488 = null;
+ var RPAREN491 = null;
+ var p_NCName489 = null;
+ var p_StringLiteral490 = null;
+
+ var PROCESSING_INSTRUCTION487_tree=null;
+ var LPAREN488_tree=null;
+ var RPAREN491_tree=null;
+
+ try {
+ // XQueryParser.g:1077:9: ( PROCESSING_INSTRUCTION LPAREN ( p_NCName | p_StringLiteral )? RPAREN )
+ // XQueryParser.g:1077:13: PROCESSING_INSTRUCTION LPAREN ( p_NCName | p_StringLiteral )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ PROCESSING_INSTRUCTION487=this.match(this.input,PROCESSING_INSTRUCTION,XQueryParser.FOLLOW_PROCESSING_INSTRUCTION_in_p_PITest9121); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ PROCESSING_INSTRUCTION487_tree = this.adaptor.create(PROCESSING_INSTRUCTION487);
+ this.adaptor.addChild(root_0, PROCESSING_INSTRUCTION487_tree);
+ }
+ LPAREN488=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_PITest9123); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN488_tree = this.adaptor.create(LPAREN488);
+ this.adaptor.addChild(root_0, LPAREN488_tree);
+ }
+ // XQueryParser.g:1077:43: ( p_NCName | p_StringLiteral )?
+ var alt159=3;
+ var LA159_0 = this.input.LA(1);
+
+ if ( ((LA159_0>=ANCESTOR && LA159_0<=EXIT)||(LA159_0>=SEQUENTIAL && LA159_0<=MAINTAINED)||(LA159_0>=MUTABLE && LA159_0<=QUOT_ER)||LA159_0==L_NCName||LA159_0==EXPLICITLY) ) {
+ alt159=1;
+ }
+ else if ( ((LA159_0>=APOS && LA159_0<=QUOT)) ) {
+ alt159=2;
+ }
+ switch (alt159) {
+ case 1 :
+ // XQueryParser.g:1077:44: p_NCName
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_PITest9126);
+ p_NCName489=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName489.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1077:55: p_StringLiteral
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_PITest9130);
+ p_StringLiteral490=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral490.getTree());
+
+
+ break;
+
+ }
+
+ RPAREN491=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_PITest9134); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN491_tree = this.adaptor.create(RPAREN491);
+ this.adaptor.addChild(root_0, RPAREN491_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AttributeTest_return: (function() {
+ XQueryParser.p_AttributeTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AttributeTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1081:1: p_AttributeTest : ATTRIBUTE LPAREN ( p_AttribNameOrWildcard ( COMMA p_TypeName )? )? RPAREN ;
+ // $ANTLR start "p_AttributeTest"
+ p_AttributeTest: function() {
+ var retval = new XQueryParser.p_AttributeTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ATTRIBUTE492 = null;
+ var LPAREN493 = null;
+ var COMMA495 = null;
+ var RPAREN497 = null;
+ var p_AttribNameOrWildcard494 = null;
+ var p_TypeName496 = null;
+
+ var ATTRIBUTE492_tree=null;
+ var LPAREN493_tree=null;
+ var COMMA495_tree=null;
+ var RPAREN497_tree=null;
+
+ try {
+ // XQueryParser.g:1082:9: ( ATTRIBUTE LPAREN ( p_AttribNameOrWildcard ( COMMA p_TypeName )? )? RPAREN )
+ // XQueryParser.g:1082:13: ATTRIBUTE LPAREN ( p_AttribNameOrWildcard ( COMMA p_TypeName )? )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ ATTRIBUTE492=this.match(this.input,ATTRIBUTE,XQueryParser.FOLLOW_ATTRIBUTE_in_p_AttributeTest9162); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ATTRIBUTE492_tree = this.adaptor.create(ATTRIBUTE492);
+ this.adaptor.addChild(root_0, ATTRIBUTE492_tree);
+ }
+ LPAREN493=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_AttributeTest9164); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN493_tree = this.adaptor.create(LPAREN493);
+ this.adaptor.addChild(root_0, LPAREN493_tree);
+ }
+ // XQueryParser.g:1082:30: ( p_AttribNameOrWildcard ( COMMA p_TypeName )? )?
+ var alt161=2;
+ var LA161_0 = this.input.LA(1);
+
+ if ( ((LA161_0>=ANCESTOR && LA161_0<=EXIT)||(LA161_0>=SEQUENTIAL && LA161_0<=MAINTAINED)||(LA161_0>=MUTABLE && LA161_0<=QUOT_ER)||LA161_0==STAR||LA161_0==L_NCName||LA161_0==EXPLICITLY) ) {
+ alt161=1;
+ }
+ switch (alt161) {
+ case 1 :
+ // XQueryParser.g:1082:31: p_AttribNameOrWildcard ( COMMA p_TypeName )?
+ this.pushFollow(XQueryParser.FOLLOW_p_AttribNameOrWildcard_in_p_AttributeTest9167);
+ p_AttribNameOrWildcard494=this.p_AttribNameOrWildcard();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AttribNameOrWildcard494.getTree());
+ // XQueryParser.g:1082:54: ( COMMA p_TypeName )?
+ var alt160=2;
+ var LA160_0 = this.input.LA(1);
+
+ if ( (LA160_0==COMMA) ) {
+ alt160=1;
+ }
+ switch (alt160) {
+ case 1 :
+ // XQueryParser.g:1082:55: COMMA p_TypeName
+ COMMA495=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_AttributeTest9170); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA495_tree = this.adaptor.create(COMMA495);
+ this.adaptor.addChild(root_0, COMMA495_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeName_in_p_AttributeTest9172);
+ p_TypeName496=this.p_TypeName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeName496.getTree());
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+ RPAREN497=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_AttributeTest9178); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN497_tree = this.adaptor.create(RPAREN497);
+ this.adaptor.addChild(root_0, RPAREN497_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AttribNameOrWildcard_return: (function() {
+ XQueryParser.p_AttribNameOrWildcard_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AttribNameOrWildcard_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1086:1: p_AttribNameOrWildcard : ( p_QName | STAR );
+ // $ANTLR start "p_AttribNameOrWildcard"
+ p_AttribNameOrWildcard: function() {
+ var retval = new XQueryParser.p_AttribNameOrWildcard_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var STAR499 = null;
+ var p_QName498 = null;
+
+ var STAR499_tree=null;
+
+ try {
+ // XQueryParser.g:1087:9: ( p_QName | STAR )
+ var alt162=2;
+ var LA162_0 = this.input.LA(1);
+
+ if ( ((LA162_0>=ANCESTOR && LA162_0<=EXIT)||(LA162_0>=SEQUENTIAL && LA162_0<=MAINTAINED)||(LA162_0>=MUTABLE && LA162_0<=QUOT_ER)||LA162_0==L_NCName||LA162_0==EXPLICITLY) ) {
+ alt162=1;
+ }
+ else if ( (LA162_0==STAR) ) {
+ alt162=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 162, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt162) {
+ case 1 :
+ // XQueryParser.g:1087:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_AttribNameOrWildcard9208);
+ p_QName498=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName498.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1087:23: STAR
+ root_0 = this.adaptor.nil();
+
+ STAR499=this.match(this.input,STAR,XQueryParser.FOLLOW_STAR_in_p_AttribNameOrWildcard9212); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ STAR499_tree = this.adaptor.create(STAR499);
+ this.adaptor.addChild(root_0, STAR499_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SchemaAttributeTest_return: (function() {
+ XQueryParser.p_SchemaAttributeTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SchemaAttributeTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1091:1: p_SchemaAttributeTest : SCHEMA_ATTRIBUTE LPAREN p_AttributeDeclaration RPAREN ;
+ // $ANTLR start "p_SchemaAttributeTest"
+ p_SchemaAttributeTest: function() {
+ var retval = new XQueryParser.p_SchemaAttributeTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SCHEMA_ATTRIBUTE500 = null;
+ var LPAREN501 = null;
+ var RPAREN503 = null;
+ var p_AttributeDeclaration502 = null;
+
+ var SCHEMA_ATTRIBUTE500_tree=null;
+ var LPAREN501_tree=null;
+ var RPAREN503_tree=null;
+
+ try {
+ // XQueryParser.g:1092:9: ( SCHEMA_ATTRIBUTE LPAREN p_AttributeDeclaration RPAREN )
+ // XQueryParser.g:1092:13: SCHEMA_ATTRIBUTE LPAREN p_AttributeDeclaration RPAREN
+ root_0 = this.adaptor.nil();
+
+ SCHEMA_ATTRIBUTE500=this.match(this.input,SCHEMA_ATTRIBUTE,XQueryParser.FOLLOW_SCHEMA_ATTRIBUTE_in_p_SchemaAttributeTest9240); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SCHEMA_ATTRIBUTE500_tree = this.adaptor.create(SCHEMA_ATTRIBUTE500);
+ this.adaptor.addChild(root_0, SCHEMA_ATTRIBUTE500_tree);
+ }
+ LPAREN501=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_SchemaAttributeTest9242); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN501_tree = this.adaptor.create(LPAREN501);
+ this.adaptor.addChild(root_0, LPAREN501_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AttributeDeclaration_in_p_SchemaAttributeTest9244);
+ p_AttributeDeclaration502=this.p_AttributeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AttributeDeclaration502.getTree());
+ RPAREN503=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_SchemaAttributeTest9246); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN503_tree = this.adaptor.create(RPAREN503);
+ this.adaptor.addChild(root_0, RPAREN503_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AttributeDeclaration_return: (function() {
+ XQueryParser.p_AttributeDeclaration_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AttributeDeclaration_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1096:1: p_AttributeDeclaration : p_AttributeName ;
+ // $ANTLR start "p_AttributeDeclaration"
+ p_AttributeDeclaration: function() {
+ var retval = new XQueryParser.p_AttributeDeclaration_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_AttributeName504 = null;
+
+
+ try {
+ // XQueryParser.g:1097:9: ( p_AttributeName )
+ // XQueryParser.g:1097:11: p_AttributeName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_AttributeName_in_p_AttributeDeclaration9272);
+ p_AttributeName504=this.p_AttributeName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AttributeName504.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ElementTest_return: (function() {
+ XQueryParser.p_ElementTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ElementTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1101:1: p_ElementTest : ELEMENT LPAREN ( p_ElementNameOrWildcard ( COMMA p_TypeName ( QUESTION )? )? )? RPAREN ;
+ // $ANTLR start "p_ElementTest"
+ p_ElementTest: function() {
+ var retval = new XQueryParser.p_ElementTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ELEMENT505 = null;
+ var LPAREN506 = null;
+ var COMMA508 = null;
+ var QUESTION510 = null;
+ var RPAREN511 = null;
+ var p_ElementNameOrWildcard507 = null;
+ var p_TypeName509 = null;
+
+ var ELEMENT505_tree=null;
+ var LPAREN506_tree=null;
+ var COMMA508_tree=null;
+ var QUESTION510_tree=null;
+ var RPAREN511_tree=null;
+
+ try {
+ // XQueryParser.g:1102:9: ( ELEMENT LPAREN ( p_ElementNameOrWildcard ( COMMA p_TypeName ( QUESTION )? )? )? RPAREN )
+ // XQueryParser.g:1102:13: ELEMENT LPAREN ( p_ElementNameOrWildcard ( COMMA p_TypeName ( QUESTION )? )? )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ ELEMENT505=this.match(this.input,ELEMENT,XQueryParser.FOLLOW_ELEMENT_in_p_ElementTest9300); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ELEMENT505_tree = this.adaptor.create(ELEMENT505);
+ this.adaptor.addChild(root_0, ELEMENT505_tree);
+ }
+ LPAREN506=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_ElementTest9302); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN506_tree = this.adaptor.create(LPAREN506);
+ this.adaptor.addChild(root_0, LPAREN506_tree);
+ }
+ // XQueryParser.g:1102:28: ( p_ElementNameOrWildcard ( COMMA p_TypeName ( QUESTION )? )? )?
+ var alt165=2;
+ var LA165_0 = this.input.LA(1);
+
+ if ( ((LA165_0>=ANCESTOR && LA165_0<=EXIT)||(LA165_0>=SEQUENTIAL && LA165_0<=MAINTAINED)||(LA165_0>=MUTABLE && LA165_0<=QUOT_ER)||LA165_0==STAR||LA165_0==L_NCName||LA165_0==EXPLICITLY) ) {
+ alt165=1;
+ }
+ switch (alt165) {
+ case 1 :
+ // XQueryParser.g:1102:29: p_ElementNameOrWildcard ( COMMA p_TypeName ( QUESTION )? )?
+ this.pushFollow(XQueryParser.FOLLOW_p_ElementNameOrWildcard_in_p_ElementTest9305);
+ p_ElementNameOrWildcard507=this.p_ElementNameOrWildcard();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElementNameOrWildcard507.getTree());
+ // XQueryParser.g:1102:53: ( COMMA p_TypeName ( QUESTION )? )?
+ var alt164=2;
+ var LA164_0 = this.input.LA(1);
+
+ if ( (LA164_0==COMMA) ) {
+ alt164=1;
+ }
+ switch (alt164) {
+ case 1 :
+ // XQueryParser.g:1102:54: COMMA p_TypeName ( QUESTION )?
+ COMMA508=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_ElementTest9308); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA508_tree = this.adaptor.create(COMMA508);
+ this.adaptor.addChild(root_0, COMMA508_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeName_in_p_ElementTest9310);
+ p_TypeName509=this.p_TypeName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TypeName509.getTree());
+ // XQueryParser.g:1102:71: ( QUESTION )?
+ var alt163=2;
+ var LA163_0 = this.input.LA(1);
+
+ if ( (LA163_0==QUESTION) ) {
+ alt163=1;
+ }
+ switch (alt163) {
+ case 1 :
+ // XQueryParser.g:1102:71: QUESTION
+ QUESTION510=this.match(this.input,QUESTION,XQueryParser.FOLLOW_QUESTION_in_p_ElementTest9312); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ QUESTION510_tree = this.adaptor.create(QUESTION510);
+ this.adaptor.addChild(root_0, QUESTION510_tree);
+ }
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+ RPAREN511=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_ElementTest9319); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN511_tree = this.adaptor.create(RPAREN511);
+ this.adaptor.addChild(root_0, RPAREN511_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ElementNameOrWildcard_return: (function() {
+ XQueryParser.p_ElementNameOrWildcard_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ElementNameOrWildcard_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1106:1: p_ElementNameOrWildcard : ( p_QName | STAR );
+ // $ANTLR start "p_ElementNameOrWildcard"
+ p_ElementNameOrWildcard: function() {
+ var retval = new XQueryParser.p_ElementNameOrWildcard_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var STAR513 = null;
+ var p_QName512 = null;
+
+ var STAR513_tree=null;
+
+ try {
+ // XQueryParser.g:1107:9: ( p_QName | STAR )
+ var alt166=2;
+ var LA166_0 = this.input.LA(1);
+
+ if ( ((LA166_0>=ANCESTOR && LA166_0<=EXIT)||(LA166_0>=SEQUENTIAL && LA166_0<=MAINTAINED)||(LA166_0>=MUTABLE && LA166_0<=QUOT_ER)||LA166_0==L_NCName||LA166_0==EXPLICITLY) ) {
+ alt166=1;
+ }
+ else if ( (LA166_0==STAR) ) {
+ alt166=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 166, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt166) {
+ case 1 :
+ // XQueryParser.g:1107:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ElementNameOrWildcard9347);
+ p_QName512=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName512.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1107:23: STAR
+ root_0 = this.adaptor.nil();
+
+ STAR513=this.match(this.input,STAR,XQueryParser.FOLLOW_STAR_in_p_ElementNameOrWildcard9351); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ STAR513_tree = this.adaptor.create(STAR513);
+ this.adaptor.addChild(root_0, STAR513_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SchemaElementTest_return: (function() {
+ XQueryParser.p_SchemaElementTest_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SchemaElementTest_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1110:1: p_SchemaElementTest : SCHEMA_ELEMENT LPAREN p_ElementDeclaration RPAREN ;
+ // $ANTLR start "p_SchemaElementTest"
+ p_SchemaElementTest: function() {
+ var retval = new XQueryParser.p_SchemaElementTest_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SCHEMA_ELEMENT514 = null;
+ var LPAREN515 = null;
+ var RPAREN517 = null;
+ var p_ElementDeclaration516 = null;
+
+ var SCHEMA_ELEMENT514_tree=null;
+ var LPAREN515_tree=null;
+ var RPAREN517_tree=null;
+
+ try {
+ // XQueryParser.g:1111:9: ( SCHEMA_ELEMENT LPAREN p_ElementDeclaration RPAREN )
+ // XQueryParser.g:1111:13: SCHEMA_ELEMENT LPAREN p_ElementDeclaration RPAREN
+ root_0 = this.adaptor.nil();
+
+ SCHEMA_ELEMENT514=this.match(this.input,SCHEMA_ELEMENT,XQueryParser.FOLLOW_SCHEMA_ELEMENT_in_p_SchemaElementTest9371); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SCHEMA_ELEMENT514_tree = this.adaptor.create(SCHEMA_ELEMENT514);
+ this.adaptor.addChild(root_0, SCHEMA_ELEMENT514_tree);
+ }
+ LPAREN515=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_SchemaElementTest9373); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN515_tree = this.adaptor.create(LPAREN515);
+ this.adaptor.addChild(root_0, LPAREN515_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ElementDeclaration_in_p_SchemaElementTest9375);
+ p_ElementDeclaration516=this.p_ElementDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElementDeclaration516.getTree());
+ RPAREN517=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_SchemaElementTest9377); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN517_tree = this.adaptor.create(RPAREN517);
+ this.adaptor.addChild(root_0, RPAREN517_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ElementDeclaration_return: (function() {
+ XQueryParser.p_ElementDeclaration_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ElementDeclaration_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1115:1: p_ElementDeclaration : p_ElementName ;
+ // $ANTLR start "p_ElementDeclaration"
+ p_ElementDeclaration: function() {
+ var retval = new XQueryParser.p_ElementDeclaration_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ElementName518 = null;
+
+
+ try {
+ // XQueryParser.g:1116:9: ( p_ElementName )
+ // XQueryParser.g:1116:11: p_ElementName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ElementName_in_p_ElementDeclaration9403);
+ p_ElementName518=this.p_ElementName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ElementName518.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AttributeName_return: (function() {
+ XQueryParser.p_AttributeName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AttributeName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1120:1: p_AttributeName : p_QName ;
+ // $ANTLR start "p_AttributeName"
+ p_AttributeName: function() {
+ var retval = new XQueryParser.p_AttributeName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName519 = null;
+
+
+ try {
+ // XQueryParser.g:1121:9: ( p_QName )
+ // XQueryParser.g:1121:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_AttributeName9431);
+ p_QName519=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName519.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ElementName_return: (function() {
+ XQueryParser.p_ElementName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ElementName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1125:1: p_ElementName : p_QName ;
+ // $ANTLR start "p_ElementName"
+ p_ElementName: function() {
+ var retval = new XQueryParser.p_ElementName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName520 = null;
+
+
+ try {
+ // XQueryParser.g:1126:9: ( p_QName )
+ // XQueryParser.g:1126:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ElementName9459);
+ p_QName520=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName520.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TypeName_return: (function() {
+ XQueryParser.p_TypeName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TypeName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1130:1: p_TypeName : p_QName ;
+ // $ANTLR start "p_TypeName"
+ p_TypeName: function() {
+ var retval = new XQueryParser.p_TypeName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName521 = null;
+
+
+ try {
+ // XQueryParser.g:1131:9: ( p_QName )
+ // XQueryParser.g:1131:13: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_TypeName9487);
+ p_QName521=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName521.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TryCatchExpr_return: (function() {
+ XQueryParser.p_TryCatchExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TryCatchExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1141:1: p_TryCatchExpr : p_TryClause ( p_CatchClause )+ ;
+ // $ANTLR start "p_TryCatchExpr"
+ p_TryCatchExpr: function() {
+ var retval = new XQueryParser.p_TryCatchExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_TryClause522 = null;
+ var p_CatchClause523 = null;
+
+
+ try {
+ // XQueryParser.g:1142:9: ( p_TryClause ( p_CatchClause )+ )
+ // XQueryParser.g:1142:11: p_TryClause ( p_CatchClause )+
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TryClause_in_p_TryCatchExpr9519);
+ p_TryClause522=this.p_TryClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TryClause522.getTree());
+ // XQueryParser.g:1142:23: ( p_CatchClause )+
+ var cnt167=0;
+ loop167:
+ do {
+ var alt167=2;
+ var LA167_0 = this.input.LA(1);
+
+ if ( (LA167_0==CATCH) ) {
+ alt167=1;
+ }
+
+
+ switch (alt167) {
+ case 1 :
+ // XQueryParser.g:1142:23: p_CatchClause
+ this.pushFollow(XQueryParser.FOLLOW_p_CatchClause_in_p_TryCatchExpr9521);
+ p_CatchClause523=this.p_CatchClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CatchClause523.getTree());
+
+
+ break;
+
+ default :
+ if ( cnt167 >= 1 ) {
+ break loop167;
+ }
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var eee = new org.antlr.runtime.EarlyExitException(167, this.input);
+ throw eee;
+ }
+ cnt167++;
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TryClause_return: (function() {
+ XQueryParser.p_TryClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TryClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1146:1: p_TryClause : kc= TRY LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_TryClause"
+ p_TryClause: function() {
+ var retval = new XQueryParser.p_TryClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var LBRACKET524 = null;
+ var RBRACKET526 = null;
+ var pm_Expr525 = null;
+
+ var kc_tree=null;
+ var LBRACKET524_tree=null;
+ var RBRACKET526_tree=null;
+
+ try {
+ // XQueryParser.g:1147:9: (kc= TRY LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:1147:11: kc= TRY LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ kc=this.match(this.input,TRY,XQueryParser.FOLLOW_TRY_in_p_TryClause9550); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ LBRACKET524=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_TryClause9552); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET524_tree = this.adaptor.create(LBRACKET524);
+ this.adaptor.addChild(root_0, LBRACKET524_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_TryClause9554);
+ pm_Expr525=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr525.getTree());
+ RBRACKET526=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_TryClause9556); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET526_tree = this.adaptor.create(RBRACKET526);
+ this.adaptor.addChild(root_0, RBRACKET526_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CatchClause_return: (function() {
+ XQueryParser.p_CatchClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CatchClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1154:1: p_CatchClause : kc= CATCH p_CatchErrorList ( p_CatchVars )? LBRACKET pm_Expr RBRACKET ;
+ // $ANTLR start "p_CatchClause"
+ p_CatchClause: function() {
+ var retval = new XQueryParser.p_CatchClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var LBRACKET529 = null;
+ var RBRACKET531 = null;
+ var p_CatchErrorList527 = null;
+ var p_CatchVars528 = null;
+ var pm_Expr530 = null;
+
+ var kc_tree=null;
+ var LBRACKET529_tree=null;
+ var RBRACKET531_tree=null;
+
+ try {
+ // XQueryParser.g:1155:9: (kc= CATCH p_CatchErrorList ( p_CatchVars )? LBRACKET pm_Expr RBRACKET )
+ // XQueryParser.g:1155:11: kc= CATCH p_CatchErrorList ( p_CatchVars )? LBRACKET pm_Expr RBRACKET
+ root_0 = this.adaptor.nil();
+
+ kc=this.match(this.input,CATCH,XQueryParser.FOLLOW_CATCH_in_p_CatchClause9587); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_CatchErrorList_in_p_CatchClause9589);
+ p_CatchErrorList527=this.p_CatchErrorList();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CatchErrorList527.getTree());
+ // XQueryParser.g:1155:37: ( p_CatchVars )?
+ var alt168=2;
+ var LA168_0 = this.input.LA(1);
+
+ if ( (LA168_0==LPAREN) ) {
+ alt168=1;
+ }
+ switch (alt168) {
+ case 1 :
+ // XQueryParser.g:1155:37: p_CatchVars
+ this.pushFollow(XQueryParser.FOLLOW_p_CatchVars_in_p_CatchClause9591);
+ p_CatchVars528=this.p_CatchVars();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CatchVars528.getTree());
+
+
+ break;
+
+ }
+
+ LBRACKET529=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_CatchClause9594); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET529_tree = this.adaptor.create(LBRACKET529);
+ this.adaptor.addChild(root_0, LBRACKET529_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_CatchClause9596);
+ pm_Expr530=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr530.getTree());
+ RBRACKET531=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_CatchClause9598); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET531_tree = this.adaptor.create(RBRACKET531);
+ this.adaptor.addChild(root_0, RBRACKET531_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CatchErrorList_return: (function() {
+ XQueryParser.p_CatchErrorList_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CatchErrorList_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1159:1: p_CatchErrorList : ( p_NameTest ( VBAR p_NameTest )* | {...}? => () );
+ // $ANTLR start "p_CatchErrorList"
+ p_CatchErrorList: function() {
+ var retval = new XQueryParser.p_CatchErrorList_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var VBAR533 = null;
+ var p_NameTest532 = null;
+ var p_NameTest534 = null;
+
+ var VBAR533_tree=null;
+
+ try {
+ // XQueryParser.g:1160:9: ( p_NameTest ( VBAR p_NameTest )* | {...}? => () )
+ var alt170=2;
+ var LA170_0 = this.input.LA(1);
+
+ if ( ((LA170_0>=ANCESTOR && LA170_0<=EXIT)||(LA170_0>=SEQUENTIAL && LA170_0<=MAINTAINED)||(LA170_0>=MUTABLE && LA170_0<=QUOT_ER)||LA170_0==STAR||LA170_0==L_NCName||LA170_0==EXPLICITLY) ) {
+ alt170=1;
+ }
+ else if ( (LA170_0==LPAREN||LA170_0==LBRACKET) && ((false))) {
+ alt170=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 170, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt170) {
+ case 1 :
+ // XQueryParser.g:1160:11: p_NameTest ( VBAR p_NameTest )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NameTest_in_p_CatchErrorList9624);
+ p_NameTest532=this.p_NameTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NameTest532.getTree());
+ // XQueryParser.g:1160:22: ( VBAR p_NameTest )*
+ loop169:
+ do {
+ var alt169=2;
+ var LA169_0 = this.input.LA(1);
+
+ if ( (LA169_0==VBAR) ) {
+ alt169=1;
+ }
+
+
+ switch (alt169) {
+ case 1 :
+ // XQueryParser.g:1160:23: VBAR p_NameTest
+ VBAR533=this.match(this.input,VBAR,XQueryParser.FOLLOW_VBAR_in_p_CatchErrorList9627); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ VBAR533_tree = this.adaptor.create(VBAR533);
+ this.adaptor.addChild(root_0, VBAR533_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_NameTest_in_p_CatchErrorList9629);
+ p_NameTest534=this.p_NameTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NameTest534.getTree());
+
+
+ break;
+
+ default :
+ break loop169;
+ }
+ } while (true);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1161:11: {...}? => ()
+ root_0 = this.adaptor.nil();
+
+ if ( !((false)) ) {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ throw new org.antlr.runtime.FailedPredicateException(this.input, "p_CatchErrorList", "false");
+ }
+ // XQueryParser.g:1161:22: ()
+ // XQueryParser.g:1161:36:
+
+
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CatchVars_return: (function() {
+ XQueryParser.p_CatchVars_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CatchVars_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1165:2: p_CatchVars : LPAREN DOLLAR p_VarName ( COMMA DOLLAR p_VarName ( COMMA DOLLAR p_VarName )? )? RPAREN ;
+ // $ANTLR start "p_CatchVars"
+ p_CatchVars: function() {
+ var retval = new XQueryParser.p_CatchVars_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LPAREN535 = null;
+ var DOLLAR536 = null;
+ var COMMA538 = null;
+ var DOLLAR539 = null;
+ var COMMA541 = null;
+ var DOLLAR542 = null;
+ var RPAREN544 = null;
+ var p_VarName537 = null;
+ var p_VarName540 = null;
+ var p_VarName543 = null;
+
+ var LPAREN535_tree=null;
+ var DOLLAR536_tree=null;
+ var COMMA538_tree=null;
+ var DOLLAR539_tree=null;
+ var COMMA541_tree=null;
+ var DOLLAR542_tree=null;
+ var RPAREN544_tree=null;
+
+ try {
+ // XQueryParser.g:1166:9: ( LPAREN DOLLAR p_VarName ( COMMA DOLLAR p_VarName ( COMMA DOLLAR p_VarName )? )? RPAREN )
+ // XQueryParser.g:1166:11: LPAREN DOLLAR p_VarName ( COMMA DOLLAR p_VarName ( COMMA DOLLAR p_VarName )? )? RPAREN
+ root_0 = this.adaptor.nil();
+
+ LPAREN535=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_CatchVars9675); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN535_tree = this.adaptor.create(LPAREN535);
+ this.adaptor.addChild(root_0, LPAREN535_tree);
+ }
+ DOLLAR536=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_CatchVars9677); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR536_tree = this.adaptor.create(DOLLAR536);
+ this.adaptor.addChild(root_0, DOLLAR536_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_CatchVars9679);
+ p_VarName537=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName537.getTree());
+ // XQueryParser.g:1166:35: ( COMMA DOLLAR p_VarName ( COMMA DOLLAR p_VarName )? )?
+ var alt172=2;
+ var LA172_0 = this.input.LA(1);
+
+ if ( (LA172_0==COMMA) ) {
+ alt172=1;
+ }
+ switch (alt172) {
+ case 1 :
+ // XQueryParser.g:1166:36: COMMA DOLLAR p_VarName ( COMMA DOLLAR p_VarName )?
+ COMMA538=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_CatchVars9682); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA538_tree = this.adaptor.create(COMMA538);
+ this.adaptor.addChild(root_0, COMMA538_tree);
+ }
+ DOLLAR539=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_CatchVars9684); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR539_tree = this.adaptor.create(DOLLAR539);
+ this.adaptor.addChild(root_0, DOLLAR539_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_CatchVars9686);
+ p_VarName540=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName540.getTree());
+ // XQueryParser.g:1166:59: ( COMMA DOLLAR p_VarName )?
+ var alt171=2;
+ var LA171_0 = this.input.LA(1);
+
+ if ( (LA171_0==COMMA) ) {
+ alt171=1;
+ }
+ switch (alt171) {
+ case 1 :
+ // XQueryParser.g:1166:60: COMMA DOLLAR p_VarName
+ COMMA541=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_CatchVars9689); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA541_tree = this.adaptor.create(COMMA541);
+ this.adaptor.addChild(root_0, COMMA541_tree);
+ }
+ DOLLAR542=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_CatchVars9691); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR542_tree = this.adaptor.create(DOLLAR542);
+ this.adaptor.addChild(root_0, DOLLAR542_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_CatchVars9693);
+ p_VarName543=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName543.getTree());
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+ RPAREN544=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_CatchVars9699); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN544_tree = this.adaptor.create(RPAREN544);
+ this.adaptor.addChild(root_0, RPAREN544_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_StringLiteral_return: (function() {
+ XQueryParser.p_StringLiteral_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_StringLiteral_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1192:1: p_StringLiteral : ( QUOT p_QuotStringLiteralContent QUOT -> ^( StringLiteral ( p_QuotStringLiteralContent )* ) | APOS p_AposStringLiteralContent APOS -> ^( StringLiteral ( p_AposStringLiteralContent )* ) );
+ // $ANTLR start "p_StringLiteral"
+ p_StringLiteral: function() {
+ var retval = new XQueryParser.p_StringLiteral_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var QUOT545 = null;
+ var QUOT547 = null;
+ var APOS548 = null;
+ var APOS550 = null;
+ var p_QuotStringLiteralContent546 = null;
+ var p_AposStringLiteralContent549 = null;
+
+ var QUOT545_tree=null;
+ var QUOT547_tree=null;
+ var APOS548_tree=null;
+ var APOS550_tree=null;
+ var stream_APOS=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token APOS");
+ var stream_QUOT=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token QUOT");
+ var stream_p_AposStringLiteralContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_AposStringLiteralContent");
+ var stream_p_QuotStringLiteralContent=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_QuotStringLiteralContent");
+ try {
+ // XQueryParser.g:1193:9: ( QUOT p_QuotStringLiteralContent QUOT -> ^( StringLiteral ( p_QuotStringLiteralContent )* ) | APOS p_AposStringLiteralContent APOS -> ^( StringLiteral ( p_AposStringLiteralContent )* ) )
+ var alt173=2;
+ var LA173_0 = this.input.LA(1);
+
+ if ( (LA173_0==QUOT) ) {
+ alt173=1;
+ }
+ else if ( (LA173_0==APOS) ) {
+ alt173=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 173, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt173) {
+ case 1 :
+ // XQueryParser.g:1193:11: QUOT p_QuotStringLiteralContent QUOT
+ QUOT545=this.match(this.input,QUOT,XQueryParser.FOLLOW_QUOT_in_p_StringLiteral9748); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_QUOT.add(QUOT545);
+
+ if ( this.state.backtracking===0 ) {
+ //pushStringLexer(false);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QuotStringLiteralContent_in_p_StringLiteral9752);
+ p_QuotStringLiteralContent546=this.p_QuotStringLiteralContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_QuotStringLiteralContent.add(p_QuotStringLiteralContent546.getTree());
+ QUOT547=this.match(this.input,QUOT,XQueryParser.FOLLOW_QUOT_in_p_StringLiteral9754); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_QUOT.add(QUOT547);
+
+ if ( this.state.backtracking===0 ) {
+
+ }
+
+
+ // AST REWRITE
+ // elements: p_QuotStringLiteralContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1194:17: -> ^( StringLiteral ( p_QuotStringLiteralContent )* )
+ {
+ // XQueryParser.g:1194:20: ^( StringLiteral ( p_QuotStringLiteralContent )* )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(StringLiteral, "StringLiteral"), root_1);
+
+ // XQueryParser.g:1194:36: ( p_QuotStringLiteralContent )*
+ while ( stream_p_QuotStringLiteralContent.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_p_QuotStringLiteralContent.nextTree());
+
+ }
+ stream_p_QuotStringLiteralContent.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+ case 2 :
+ // XQueryParser.g:1195:13: APOS p_AposStringLiteralContent APOS
+ APOS548=this.match(this.input,APOS,XQueryParser.FOLLOW_APOS_in_p_StringLiteral9795); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_APOS.add(APOS548);
+
+ if ( this.state.backtracking===0 ) {
+ //pushStringLexer(true);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AposStringLiteralContent_in_p_StringLiteral9799);
+ p_AposStringLiteralContent549=this.p_AposStringLiteralContent();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_AposStringLiteralContent.add(p_AposStringLiteralContent549.getTree());
+ APOS550=this.match(this.input,APOS,XQueryParser.FOLLOW_APOS_in_p_StringLiteral9801); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_APOS.add(APOS550);
+
+ if ( this.state.backtracking===0 ) {
+
+ }
+
+
+ // AST REWRITE
+ // elements: p_AposStringLiteralContent
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1196:17: -> ^( StringLiteral ( p_AposStringLiteralContent )* )
+ {
+ // XQueryParser.g:1196:20: ^( StringLiteral ( p_AposStringLiteralContent )* )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(StringLiteral, "StringLiteral"), root_1);
+
+ // XQueryParser.g:1196:36: ( p_AposStringLiteralContent )*
+ while ( stream_p_AposStringLiteralContent.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_p_AposStringLiteralContent.nextTree());
+
+ }
+ stream_p_AposStringLiteralContent.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_QuotStringLiteralContent_return: (function() {
+ XQueryParser.p_QuotStringLiteralContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_QuotStringLiteralContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1203:1: p_QuotStringLiteralContent : ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( QUOT | AMP ) )* ;
+ // $ANTLR start "p_QuotStringLiteralContent"
+ p_QuotStringLiteralContent: function() {
+ var retval = new XQueryParser.p_QuotStringLiteralContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set551 = null;
+
+ var set551_tree=null;
+
+ try {
+ // XQueryParser.g:1204:9: ( ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( QUOT | AMP ) )* )
+ // XQueryParser.g:1204:11: ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( QUOT | AMP ) )*
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1204:11: ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( QUOT | AMP ) )*
+ loop174:
+ do {
+ var alt174=2;
+ var LA174_0 = this.input.LA(1);
+
+ if ( ((LA174_0>=L_QuotAttrContentChar && LA174_0<=NOTEQUAL)||(LA174_0>=COMMA && LA174_0<=APOS)||(LA174_0>=NCNameStartChar && LA174_0<=EXPLICITLY)) ) {
+ alt174=1;
+ }
+
+
+ switch (alt174) {
+ case 1 :
+ // XQueryParser.g:
+ set551=this.input.LT(1);
+ if ( (this.input.LA(1)>=L_QuotAttrContentChar && this.input.LA(1)<=NOTEQUAL)||(this.input.LA(1)>=COMMA && this.input.LA(1)<=APOS)||(this.input.LA(1)>=NCNameStartChar && this.input.LA(1)<=EXPLICITLY) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set551));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+ break;
+
+ default :
+ break loop174;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AposStringLiteralContent_return: (function() {
+ XQueryParser.p_AposStringLiteralContent_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AposStringLiteralContent_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1212:1: p_AposStringLiteralContent : ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( APOS | AMP ) )* ;
+ // $ANTLR start "p_AposStringLiteralContent"
+ p_AposStringLiteralContent: function() {
+ var retval = new XQueryParser.p_AposStringLiteralContent_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set552 = null;
+
+ var set552_tree=null;
+
+ try {
+ // XQueryParser.g:1213:9: ( ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( APOS | AMP ) )* )
+ // XQueryParser.g:1213:11: ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( APOS | AMP ) )*
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1213:11: ( ESCAPE_QUOT | L_CharRef | L_PredefinedEntityRef | ~ ( APOS | AMP ) )*
+ loop175:
+ do {
+ var alt175=2;
+ var LA175_0 = this.input.LA(1);
+
+ if ( ((LA175_0>=L_QuotAttrContentChar && LA175_0<=NOTEQUAL)||(LA175_0>=COMMA && LA175_0<=CHARREF_HEX)||(LA175_0>=QUOT && LA175_0<=EXPLICITLY)) ) {
+ alt175=1;
+ }
+
+
+ switch (alt175) {
+ case 1 :
+ // XQueryParser.g:
+ set552=this.input.LT(1);
+ if ( (this.input.LA(1)>=L_QuotAttrContentChar && this.input.LA(1)<=NOTEQUAL)||(this.input.LA(1)>=COMMA && this.input.LA(1)<=CHARREF_HEX)||(this.input.LA(1)>=QUOT && this.input.LA(1)<=EXPLICITLY) ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set552));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+ break;
+
+ default :
+ break loop175;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_QName_return: (function() {
+ XQueryParser.p_QName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_QName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1246:1: p_QName : p_NCName p_LocalNCName -> ^( QName p_NCName ( p_LocalNCName )? ) ;
+ // $ANTLR start "p_QName"
+ p_QName: function() {
+ var retval = new XQueryParser.p_QName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_NCName553 = null;
+ var p_LocalNCName554 = null;
+
+ var stream_p_LocalNCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_LocalNCName");
+ var stream_p_NCName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_NCName");
+ try {
+ // XQueryParser.g:1247:9: ( p_NCName p_LocalNCName -> ^( QName p_NCName ( p_LocalNCName )? ) )
+ // XQueryParser.g:1247:11: p_NCName p_LocalNCName
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_QName9994);
+ p_NCName553=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_NCName.add(p_NCName553.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_LocalNCName_in_p_QName9996);
+ p_LocalNCName554=this.p_LocalNCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_LocalNCName.add(p_LocalNCName554.getTree());
+
+
+ // AST REWRITE
+ // elements: p_NCName, p_LocalNCName
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1248:17: -> ^( QName p_NCName ( p_LocalNCName )? )
+ {
+ // XQueryParser.g:1248:20: ^( QName p_NCName ( p_LocalNCName )? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(QName, "QName"), root_1);
+
+ this.adaptor.addChild(root_1, stream_p_NCName.nextTree());
+ // XQueryParser.g:1248:37: ( p_LocalNCName )?
+ if ( stream_p_LocalNCName.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_p_LocalNCName.nextTree());
+
+ }
+ stream_p_LocalNCName.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_LocalNCName_return: (function() {
+ XQueryParser.p_LocalNCName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_LocalNCName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1253:1: p_LocalNCName : ( COLON p_NCName )? ;
+ // $ANTLR start "p_LocalNCName"
+ p_LocalNCName: function() {
+ var retval = new XQueryParser.p_LocalNCName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COLON555 = null;
+ var p_NCName556 = null;
+
+ var COLON555_tree=null;
+
+ try {
+ // XQueryParser.g:1254:9: ( ( COLON p_NCName )? )
+ // XQueryParser.g:1254:11: ( COLON p_NCName )?
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1254:11: ( COLON p_NCName )?
+ var alt176=2;
+ var LA176_0 = this.input.LA(1);
+
+ if ( (LA176_0==COLON) ) {
+ alt176=1;
+ }
+ switch (alt176) {
+ case 1 :
+ // XQueryParser.g:1254:12: COLON p_NCName
+ COLON555=this.match(this.input,COLON,XQueryParser.FOLLOW_COLON_in_p_LocalNCName10051); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON555_tree = this.adaptor.create(COLON555);
+ this.adaptor.addChild(root_0, COLON555_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_LocalNCName10053);
+ p_NCName556=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName556.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FQName_return: (function() {
+ XQueryParser.p_FQName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FQName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1260:1: p_FQName : p_FNCName p_LocalFNCName ;
+ // $ANTLR start "p_FQName"
+ p_FQName: function() {
+ var retval = new XQueryParser.p_FQName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_FNCName557 = null;
+ var p_LocalFNCName558 = null;
+
+
+ try {
+ // XQueryParser.g:1261:9: ( p_FNCName p_LocalFNCName )
+ // XQueryParser.g:1261:11: p_FNCName p_LocalFNCName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_FNCName_in_p_FQName10083);
+ p_FNCName557=this.p_FNCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_FNCName557.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_LocalFNCName_in_p_FQName10085);
+ p_LocalFNCName558=this.p_LocalFNCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_LocalFNCName558.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_LocalFNCName_return: (function() {
+ XQueryParser.p_LocalFNCName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_LocalFNCName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1266:1: p_LocalFNCName : ( COLON p_NCName )? ;
+ // $ANTLR start "p_LocalFNCName"
+ p_LocalFNCName: function() {
+ var retval = new XQueryParser.p_LocalFNCName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COLON559 = null;
+ var p_NCName560 = null;
+
+ var COLON559_tree=null;
+
+ try {
+ // XQueryParser.g:1267:9: ( ( COLON p_NCName )? )
+ // XQueryParser.g:1267:11: ( COLON p_NCName )?
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1267:11: ( COLON p_NCName )?
+ var alt177=2;
+ var LA177_0 = this.input.LA(1);
+
+ if ( (LA177_0==COLON) ) {
+ alt177=1;
+ }
+ switch (alt177) {
+ case 1 :
+ // XQueryParser.g:1267:12: COLON p_NCName
+ COLON559=this.match(this.input,COLON,XQueryParser.FOLLOW_COLON_in_p_LocalFNCName10113); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COLON559_tree = this.adaptor.create(COLON559);
+ this.adaptor.addChild(root_0, COLON559_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_NCName_in_p_LocalFNCName10115);
+ p_NCName560=this.p_NCName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NCName560.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NCName_return: (function() {
+ XQueryParser.p_NCName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NCName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1273:1: p_NCName : ( L_NCName | ANCESTOR | ANCESTOR_OR_SELF | AND | AS | ASCENDING | AT | ATTRIBUTE | BASE_URI | BOUNDARY_SPACE | BY | CASE | CAST | CASTABLE | CHILD | COLLATION | COMMENT | CONSTRUCTION | COPY_NAMESPACES | DECLARE | DEFAULT | DESCENDANT | DESCENDANT_OR_SELF | DESCENDING | DIV | DOCUMENT | DOCUMENT_NODE | ELEMENT | ELSE | EMPTY | EMPTY_SEQUENCE | ENCODING | EQ | EVERY | EXCEPT | EXTERNAL | FOLLOWING | FOLLOWING_SIBLING | FOR | FUNCTION | GE | GREATEST | GT | IDIV | IF | IMPORT | IN | INHERIT | INSTANCE | INTERSECT | IS | ITEM | LAX | LE | LEAST | LET | LT | MOD | MODULE | NAMESPACE | NE | NO_INHERIT | NO_PRESERVE | NODE | OF | OPTION | OR | ORDER | ORDERED | ORDERING | PARENT | PRECEDING | PRECEDING_SIBLING | PRESERVE | PROCESSING_INSTRUCTION | RETURN | SATISFIES | SCHEMA | SCHEMA_ATTRIBUTE | SCHEMA_ELEMENT | SELF | SOME | STABLE | STRICT | STRIP | TEXT | THEN | TO | TREAT | TYPESWITCH | UNION | UNORDERED | VALIDATE | VARIABLE | VERSION | WHERE | XQUERY | CATCH | CONTEXT | COUNT | DECIMAL_FORMAT | DECIMAL_SEPARATOR | DIGIT | END | GROUP | GROUPING_SEPARATOR | INFINITY | MINUS_SIGN | NAMESPACE_NODE | NAN | NEXT | ONLY | OUTER | PATTERN_SEPARATOR | PERCENT | PER_MILLE | PREVIOUS | SLIDING | START | TRY | TUMBLING | WHEN | WINDOW | ZERO_DIGIT | AFTER | BEFORE | COPY | DELETE | FIRST | INSERT | INTO | LAST | MODIFY | NODES | RENAME | REPLACE | REVALIDATION | SKIP | UPDATING | VALUE | WITH | BLOCK | CONSTANT | EXIT | SEQUENTIAL | SET | SIMPLE | WHILE | EVAL | USING | APPEND_ONLY | AUTOMATICALLY | CHECK | COLLECTION | CONSTRAINT | CONST | EQUALITY | EXPLICITLY | FOREACH | FOREIGN | FROM | INDEX | INTEGRITY | KEY | MAINTAINED | MUTABLE | NON | ON | QUEUE | RANGE | READ_ONLY | UNIQUE | BINARY | PRIVATE | AMP_ER | APOS_ER | QUOT_ER );
+ // $ANTLR start "p_NCName"
+ p_NCName: function() {
+ var retval = new XQueryParser.p_NCName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set561 = null;
+
+ var set561_tree=null;
+
+ try {
+ // XQueryParser.g:1274:9: ( L_NCName | ANCESTOR | ANCESTOR_OR_SELF | AND | AS | ASCENDING | AT | ATTRIBUTE | BASE_URI | BOUNDARY_SPACE | BY | CASE | CAST | CASTABLE | CHILD | COLLATION | COMMENT | CONSTRUCTION | COPY_NAMESPACES | DECLARE | DEFAULT | DESCENDANT | DESCENDANT_OR_SELF | DESCENDING | DIV | DOCUMENT | DOCUMENT_NODE | ELEMENT | ELSE | EMPTY | EMPTY_SEQUENCE | ENCODING | EQ | EVERY | EXCEPT | EXTERNAL | FOLLOWING | FOLLOWING_SIBLING | FOR | FUNCTION | GE | GREATEST | GT | IDIV | IF | IMPORT | IN | INHERIT | INSTANCE | INTERSECT | IS | ITEM | LAX | LE | LEAST | LET | LT | MOD | MODULE | NAMESPACE | NE | NO_INHERIT | NO_PRESERVE | NODE | OF | OPTION | OR | ORDER | ORDERED | ORDERING | PARENT | PRECEDING | PRECEDING_SIBLING | PRESERVE | PROCESSING_INSTRUCTION | RETURN | SATISFIES | SCHEMA | SCHEMA_ATTRIBUTE | SCHEMA_ELEMENT | SELF | SOME | STABLE | STRICT | STRIP | TEXT | THEN | TO | TREAT | TYPESWITCH | UNION | UNORDERED | VALIDATE | VARIABLE | VERSION | WHERE | XQUERY | CATCH | CONTEXT | COUNT | DECIMAL_FORMAT | DECIMAL_SEPARATOR | DIGIT | END | GROUP | GROUPING_SEPARATOR | INFINITY | MINUS_SIGN | NAMESPACE_NODE | NAN | NEXT | ONLY | OUTER | PATTERN_SEPARATOR | PERCENT | PER_MILLE | PREVIOUS | SLIDING | START | TRY | TUMBLING | WHEN | WINDOW | ZERO_DIGIT | AFTER | BEFORE | COPY | DELETE | FIRST | INSERT | INTO | LAST | MODIFY | NODES | RENAME | REPLACE | REVALIDATION | SKIP | UPDATING | VALUE | WITH | BLOCK | CONSTANT | EXIT | SEQUENTIAL | SET | SIMPLE | WHILE | EVAL | USING | APPEND_ONLY | AUTOMATICALLY | CHECK | COLLECTION | CONSTRAINT | CONST | EQUALITY | EXPLICITLY | FOREACH | FOREIGN | FROM | INDEX | INTEGRITY | KEY | MAINTAINED | MUTABLE | NON | ON | QUEUE | RANGE | READ_ONLY | UNIQUE | BINARY | PRIVATE | AMP_ER | APOS_ER | QUOT_ER )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set561=this.input.LT(1);
+ if ( (this.input.LA(1)>=ANCESTOR && this.input.LA(1)<=EXIT)||(this.input.LA(1)>=SEQUENTIAL && this.input.LA(1)<=MAINTAINED)||(this.input.LA(1)>=MUTABLE && this.input.LA(1)<=QUOT_ER)||this.input.LA(1)==L_NCName||this.input.LA(1)==EXPLICITLY ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set561));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_FNCName_return: (function() {
+ XQueryParser.p_FNCName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_FNCName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1292:1: p_FNCName : ( L_NCName | ANCESTOR | ANCESTOR_OR_SELF | AND | AS | ASCENDING | AT | BASE_URI | BOUNDARY_SPACE | BY | CASE | CAST | CASTABLE | CHILD | COLLATION | CONSTRUCTION | COPY_NAMESPACES | DECLARE | DEFAULT | DESCENDANT | DESCENDANT_OR_SELF | DESCENDING | DIV | DOCUMENT | ELSE | EMPTY | ENCODING | EQ | EVERY | EXCEPT | EXTERNAL | FOLLOWING | FOLLOWING_SIBLING | FOR | FUNCTION | GE | GREATEST | GT | IDIV | IMPORT | IN | INHERIT | INSTANCE | INTERSECT | IS | LAX | LE | LEAST | LET | LT | MOD | MODULE | NAMESPACE | NE | NO_INHERIT | NO_PRESERVE | OF | OPTION | OR | ORDER | ORDERED | ORDERING | PARENT | PRECEDING | PRECEDING_SIBLING | PRESERVE | RETURN | SATISFIES | SCHEMA | SELF | SOME | STABLE | STRICT | STRIP | THEN | TO | TREAT | UNION | UNORDERED | VALIDATE | VARIABLE | VERSION | WHERE | XQUERY | CATCH | CONTEXT | COUNT | DECIMAL_FORMAT | DECIMAL_SEPARATOR | DIGIT | END | GROUP | GROUPING_SEPARATOR | INFINITY | MINUS_SIGN | NAN | NEXT | ONLY | OUTER | PATTERN_SEPARATOR | PERCENT | PER_MILLE | PREVIOUS | SLIDING | START | TRY | TUMBLING | WHEN | WINDOW | ZERO_DIGIT | AFTER | BEFORE | COPY | DELETE | FIRST | INSERT | INTO | LAST | MODIFY | NODES | RENAME | REPLACE | REVALIDATION | SKIP | UPDATING | VALUE | WITH | BLOCK | CONSTANT | EXIT | SEQUENTIAL | SET | SIMPLE | EVAL | USING | APPEND_ONLY | AUTOMATICALLY | CHECK | COLLECTION | CONSTRAINT | CONST | EQUALITY | EXPLICITLY | FOREACH | FOREIGN | FROM | INDEX | INTEGRITY | KEY | MAINTAINED | MUTABLE | NON | ON | QUEUE | RANGE | READ_ONLY | UNIQUE | BINARY | PRIVATE | AMP_ER | APOS_ER | QUOT_ER );
+ // $ANTLR start "p_FNCName"
+ p_FNCName: function() {
+ var retval = new XQueryParser.p_FNCName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var set562 = null;
+
+ var set562_tree=null;
+
+ try {
+ // XQueryParser.g:1293:9: ( L_NCName | ANCESTOR | ANCESTOR_OR_SELF | AND | AS | ASCENDING | AT | BASE_URI | BOUNDARY_SPACE | BY | CASE | CAST | CASTABLE | CHILD | COLLATION | CONSTRUCTION | COPY_NAMESPACES | DECLARE | DEFAULT | DESCENDANT | DESCENDANT_OR_SELF | DESCENDING | DIV | DOCUMENT | ELSE | EMPTY | ENCODING | EQ | EVERY | EXCEPT | EXTERNAL | FOLLOWING | FOLLOWING_SIBLING | FOR | FUNCTION | GE | GREATEST | GT | IDIV | IMPORT | IN | INHERIT | INSTANCE | INTERSECT | IS | LAX | LE | LEAST | LET | LT | MOD | MODULE | NAMESPACE | NE | NO_INHERIT | NO_PRESERVE | OF | OPTION | OR | ORDER | ORDERED | ORDERING | PARENT | PRECEDING | PRECEDING_SIBLING | PRESERVE | RETURN | SATISFIES | SCHEMA | SELF | SOME | STABLE | STRICT | STRIP | THEN | TO | TREAT | UNION | UNORDERED | VALIDATE | VARIABLE | VERSION | WHERE | XQUERY | CATCH | CONTEXT | COUNT | DECIMAL_FORMAT | DECIMAL_SEPARATOR | DIGIT | END | GROUP | GROUPING_SEPARATOR | INFINITY | MINUS_SIGN | NAN | NEXT | ONLY | OUTER | PATTERN_SEPARATOR | PERCENT | PER_MILLE | PREVIOUS | SLIDING | START | TRY | TUMBLING | WHEN | WINDOW | ZERO_DIGIT | AFTER | BEFORE | COPY | DELETE | FIRST | INSERT | INTO | LAST | MODIFY | NODES | RENAME | REPLACE | REVALIDATION | SKIP | UPDATING | VALUE | WITH | BLOCK | CONSTANT | EXIT | SEQUENTIAL | SET | SIMPLE | EVAL | USING | APPEND_ONLY | AUTOMATICALLY | CHECK | COLLECTION | CONSTRAINT | CONST | EQUALITY | EXPLICITLY | FOREACH | FOREIGN | FROM | INDEX | INTEGRITY | KEY | MAINTAINED | MUTABLE | NON | ON | QUEUE | RANGE | READ_ONLY | UNIQUE | BINARY | PRIVATE | AMP_ER | APOS_ER | QUOT_ER )
+ // XQueryParser.g:
+ root_0 = this.adaptor.nil();
+
+ set562=this.input.LT(1);
+ if ( (this.input.LA(1)>=ANCESTOR && this.input.LA(1)<=AT)||(this.input.LA(1)>=BASE_URI && this.input.LA(1)<=COLLATION)||(this.input.LA(1)>=CONSTRUCTION && this.input.LA(1)<=DOCUMENT)||(this.input.LA(1)>=ELSE && this.input.LA(1)<=EMPTY)||(this.input.LA(1)>=ENCODING && this.input.LA(1)<=IDIV)||(this.input.LA(1)>=IMPORT && this.input.LA(1)<=IS)||(this.input.LA(1)>=LAX && this.input.LA(1)<=NO_PRESERVE)||(this.input.LA(1)>=OF && this.input.LA(1)<=PRESERVE)||(this.input.LA(1)>=RETURN && this.input.LA(1)<=SCHEMA)||(this.input.LA(1)>=SELF && this.input.LA(1)<=STRIP)||(this.input.LA(1)>=THEN && this.input.LA(1)<=TREAT)||(this.input.LA(1)>=UNION && this.input.LA(1)<=MINUS_SIGN)||(this.input.LA(1)>=NAN && this.input.LA(1)<=EXIT)||(this.input.LA(1)>=SEQUENTIAL && this.input.LA(1)<=SIMPLE)||(this.input.LA(1)>=EVAL && this.input.LA(1)<=MAINTAINED)||(this.input.LA(1)>=MUTABLE && this.input.LA(1)<=QUOT_ER)||this.input.LA(1)==L_NCName||this.input.LA(1)==EXPLICITLY ) {
+ this.input.consume();
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, this.adaptor.create(set562));
+ this.state.errorRecovery=false;this.state.failed=false;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var mse = new org.antlr.runtime.MismatchedSetException(null,this.input);
+ throw mse;
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_RevalidationDecl_return: (function() {
+ XQueryParser.pm_RevalidationDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_RevalidationDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1326:1: pm_RevalidationDecl : k+= DECLARE k+= REVALIDATION (k+= STRICT | k+= LAX | k+= SKIP ) ;
+ // $ANTLR start "pm_RevalidationDecl"
+ pm_RevalidationDecl: function() {
+ var retval = new XQueryParser.pm_RevalidationDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1327:9: (k+= DECLARE k+= REVALIDATION (k+= STRICT | k+= LAX | k+= SKIP ) )
+ // XQueryParser.g:1327:11: k+= DECLARE k+= REVALIDATION (k+= STRICT | k+= LAX | k+= SKIP )
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_RevalidationDecl11839); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,REVALIDATION,XQueryParser.FOLLOW_REVALIDATION_in_pm_RevalidationDecl11843); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:1327:38: (k+= STRICT | k+= LAX | k+= SKIP )
+ var alt178=3;
+ switch ( this.input.LA(1) ) {
+ case STRICT:
+ alt178=1;
+ break;
+ case LAX:
+ alt178=2;
+ break;
+ case SKIP:
+ alt178=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 178, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt178) {
+ case 1 :
+ // XQueryParser.g:1327:39: k+= STRICT
+ k=this.match(this.input,STRICT,XQueryParser.FOLLOW_STRICT_in_pm_RevalidationDecl11848); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1327:51: k+= LAX
+ k=this.match(this.input,LAX,XQueryParser.FOLLOW_LAX_in_pm_RevalidationDecl11854); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1327:60: k+= SKIP
+ k=this.match(this.input,SKIP,XQueryParser.FOLLOW_SKIP_in_pm_RevalidationDecl11860); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_InsertExprTargetChoice_return: (function() {
+ XQueryParser.p_InsertExprTargetChoice_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_InsertExprTargetChoice_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1331:1: p_InsertExprTargetChoice : ( ( (k+= AS (k+= FIRST | k+= LAST ) )? k+= INTO ) | ka= AFTER | kb= BEFORE );
+ // $ANTLR start "p_InsertExprTargetChoice"
+ p_InsertExprTargetChoice: function() {
+ var retval = new XQueryParser.p_InsertExprTargetChoice_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ka = null;
+ var kb = null;
+ var k = null;
+ var list_k=null;
+
+ var ka_tree=null;
+ var kb_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1332:9: ( ( (k+= AS (k+= FIRST | k+= LAST ) )? k+= INTO ) | ka= AFTER | kb= BEFORE )
+ var alt181=3;
+ switch ( this.input.LA(1) ) {
+ case AS:
+ case INTO:
+ alt181=1;
+ break;
+ case AFTER:
+ alt181=2;
+ break;
+ case BEFORE:
+ alt181=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 181, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt181) {
+ case 1 :
+ // XQueryParser.g:1332:11: ( (k+= AS (k+= FIRST | k+= LAST ) )? k+= INTO )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1332:11: ( (k+= AS (k+= FIRST | k+= LAST ) )? k+= INTO )
+ // XQueryParser.g:1332:12: (k+= AS (k+= FIRST | k+= LAST ) )? k+= INTO
+ // XQueryParser.g:1332:12: (k+= AS (k+= FIRST | k+= LAST ) )?
+ var alt180=2;
+ var LA180_0 = this.input.LA(1);
+
+ if ( (LA180_0==AS) ) {
+ alt180=1;
+ }
+ switch (alt180) {
+ case 1 :
+ // XQueryParser.g:1332:13: k+= AS (k+= FIRST | k+= LAST )
+ k=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_InsertExprTargetChoice11892); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:1332:19: (k+= FIRST | k+= LAST )
+ var alt179=2;
+ var LA179_0 = this.input.LA(1);
+
+ if ( (LA179_0==FIRST) ) {
+ alt179=1;
+ }
+ else if ( (LA179_0==LAST) ) {
+ alt179=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 179, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt179) {
+ case 1 :
+ // XQueryParser.g:1332:20: k+= FIRST
+ k=this.match(this.input,FIRST,XQueryParser.FOLLOW_FIRST_in_p_InsertExprTargetChoice11897); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1332:31: k+= LAST
+ k=this.match(this.input,LAST,XQueryParser.FOLLOW_LAST_in_p_InsertExprTargetChoice11903); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,INTO,XQueryParser.FOLLOW_INTO_in_p_InsertExprTargetChoice11910); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1333:11: ka= AFTER
+ root_0 = this.adaptor.nil();
+
+ ka=this.match(this.input,AFTER,XQueryParser.FOLLOW_AFTER_in_p_InsertExprTargetChoice11926); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1334:11: kb= BEFORE
+ root_0 = this.adaptor.nil();
+
+ kb=this.match(this.input,BEFORE,XQueryParser.FOLLOW_BEFORE_in_p_InsertExprTargetChoice11940); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kb_tree = this.adaptor.create(kb);
+ this.adaptor.addChild(root_0, kb_tree);
+ }
+
+
+ break;
+
+ }
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_InsertExpr_return: (function() {
+ XQueryParser.p_InsertExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_InsertExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1338:1: p_InsertExpr : k+= INSERT (k+= NODE | k+= NODES ) p_SourceExpr p_InsertExprTargetChoice p_TargetExpr ;
+ // $ANTLR start "p_InsertExpr"
+ p_InsertExpr: function() {
+ var retval = new XQueryParser.p_InsertExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_SourceExpr563 = null;
+ var p_InsertExprTargetChoice564 = null;
+ var p_TargetExpr565 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1339:9: (k+= INSERT (k+= NODE | k+= NODES ) p_SourceExpr p_InsertExprTargetChoice p_TargetExpr )
+ // XQueryParser.g:1339:11: k+= INSERT (k+= NODE | k+= NODES ) p_SourceExpr p_InsertExprTargetChoice p_TargetExpr
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,INSERT,XQueryParser.FOLLOW_INSERT_in_p_InsertExpr11968); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:1339:21: (k+= NODE | k+= NODES )
+ var alt182=2;
+ var LA182_0 = this.input.LA(1);
+
+ if ( (LA182_0==NODE) ) {
+ alt182=1;
+ }
+ else if ( (LA182_0==NODES) ) {
+ alt182=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 182, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt182) {
+ case 1 :
+ // XQueryParser.g:1339:22: k+= NODE
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_InsertExpr11973); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1339:32: k+= NODES
+ k=this.match(this.input,NODES,XQueryParser.FOLLOW_NODES_in_p_InsertExpr11979); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_SourceExpr_in_p_InsertExpr11982);
+ p_SourceExpr563=this.p_SourceExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_SourceExpr563.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_InsertExprTargetChoice_in_p_InsertExpr11984);
+ p_InsertExprTargetChoice564=this.p_InsertExprTargetChoice();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_InsertExprTargetChoice564.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_TargetExpr_in_p_InsertExpr11986);
+ p_TargetExpr565=this.p_TargetExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TargetExpr565.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_DeleteExpr_return: (function() {
+ XQueryParser.p_DeleteExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_DeleteExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1343:1: p_DeleteExpr : k+= DELETE (k+= NODE | k+= NODES ) p_TargetExpr ;
+ // $ANTLR start "p_DeleteExpr"
+ p_DeleteExpr: function() {
+ var retval = new XQueryParser.p_DeleteExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_TargetExpr566 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1344:9: (k+= DELETE (k+= NODE | k+= NODES ) p_TargetExpr )
+ // XQueryParser.g:1344:11: k+= DELETE (k+= NODE | k+= NODES ) p_TargetExpr
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DELETE,XQueryParser.FOLLOW_DELETE_in_p_DeleteExpr12015); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:1344:21: (k+= NODE | k+= NODES )
+ var alt183=2;
+ var LA183_0 = this.input.LA(1);
+
+ if ( (LA183_0==NODE) ) {
+ alt183=1;
+ }
+ else if ( (LA183_0==NODES) ) {
+ alt183=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 183, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt183) {
+ case 1 :
+ // XQueryParser.g:1344:22: k+= NODE
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_DeleteExpr12020); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1344:32: k+= NODES
+ k=this.match(this.input,NODES,XQueryParser.FOLLOW_NODES_in_p_DeleteExpr12026); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TargetExpr_in_p_DeleteExpr12029);
+ p_TargetExpr566=this.p_TargetExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TargetExpr566.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ReplaceExpr_return: (function() {
+ XQueryParser.p_ReplaceExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ReplaceExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1348:1: p_ReplaceExpr : k+= REPLACE (k+= VALUE k+= OF )? k+= NODE p_ExprSingle k+= WITH p_ExprSingle ;
+ // $ANTLR start "p_ReplaceExpr"
+ p_ReplaceExpr: function() {
+ var retval = new XQueryParser.p_ReplaceExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_ExprSingle567 = null;
+ var p_ExprSingle568 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1349:9: (k+= REPLACE (k+= VALUE k+= OF )? k+= NODE p_ExprSingle k+= WITH p_ExprSingle )
+ // XQueryParser.g:1349:11: k+= REPLACE (k+= VALUE k+= OF )? k+= NODE p_ExprSingle k+= WITH p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,REPLACE,XQueryParser.FOLLOW_REPLACE_in_p_ReplaceExpr12058); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ // XQueryParser.g:1349:22: (k+= VALUE k+= OF )?
+ var alt184=2;
+ var LA184_0 = this.input.LA(1);
+
+ if ( (LA184_0==VALUE) ) {
+ alt184=1;
+ }
+ switch (alt184) {
+ case 1 :
+ // XQueryParser.g:1349:23: k+= VALUE k+= OF
+ k=this.match(this.input,VALUE,XQueryParser.FOLLOW_VALUE_in_p_ReplaceExpr12063); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,OF,XQueryParser.FOLLOW_OF_in_p_ReplaceExpr12067); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_ReplaceExpr12073); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ReplaceExpr12075);
+ p_ExprSingle567=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle567.getTree());
+ k=this.match(this.input,WITH,XQueryParser.FOLLOW_WITH_in_p_ReplaceExpr12079); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ReplaceExpr12081);
+ p_ExprSingle568=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle568.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_RenameExpr_return: (function() {
+ XQueryParser.p_RenameExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_RenameExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1353:1: p_RenameExpr : k+= RENAME k+= NODE p_TargetExpr AS p_NewNameExpr ;
+ // $ANTLR start "p_RenameExpr"
+ p_RenameExpr: function() {
+ var retval = new XQueryParser.p_RenameExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var AS570 = null;
+ var k = null;
+ var list_k=null;
+ var p_TargetExpr569 = null;
+ var p_NewNameExpr571 = null;
+
+ var AS570_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1354:9: (k+= RENAME k+= NODE p_TargetExpr AS p_NewNameExpr )
+ // XQueryParser.g:1354:11: k+= RENAME k+= NODE p_TargetExpr AS p_NewNameExpr
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,RENAME,XQueryParser.FOLLOW_RENAME_in_p_RenameExpr12110); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_RenameExpr12114); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_TargetExpr_in_p_RenameExpr12116);
+ p_TargetExpr569=this.p_TargetExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_TargetExpr569.getTree());
+ AS570=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_RenameExpr12118); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ AS570_tree = this.adaptor.create(AS570);
+ this.adaptor.addChild(root_0, AS570_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_NewNameExpr_in_p_RenameExpr12120);
+ p_NewNameExpr571=this.p_NewNameExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NewNameExpr571.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_SourceExpr_return: (function() {
+ XQueryParser.p_SourceExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_SourceExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1358:1: p_SourceExpr : p_ExprSingle ;
+ // $ANTLR start "p_SourceExpr"
+ p_SourceExpr: function() {
+ var retval = new XQueryParser.p_SourceExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ExprSingle572 = null;
+
+
+ try {
+ // XQueryParser.g:1359:9: ( p_ExprSingle )
+ // XQueryParser.g:1359:11: p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_SourceExpr12147);
+ p_ExprSingle572=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle572.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TargetExpr_return: (function() {
+ XQueryParser.p_TargetExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TargetExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1363:1: p_TargetExpr : p_ExprSingle ;
+ // $ANTLR start "p_TargetExpr"
+ p_TargetExpr: function() {
+ var retval = new XQueryParser.p_TargetExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ExprSingle573 = null;
+
+
+ try {
+ // XQueryParser.g:1364:9: ( p_ExprSingle )
+ // XQueryParser.g:1364:11: p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TargetExpr12173);
+ p_ExprSingle573=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle573.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NewNameExpr_return: (function() {
+ XQueryParser.p_NewNameExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NewNameExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1368:1: p_NewNameExpr : p_ExprSingle ;
+ // $ANTLR start "p_NewNameExpr"
+ p_NewNameExpr: function() {
+ var retval = new XQueryParser.p_NewNameExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_ExprSingle574 = null;
+
+
+ try {
+ // XQueryParser.g:1369:9: ( p_ExprSingle )
+ // XQueryParser.g:1369:11: p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_NewNameExpr12199);
+ p_ExprSingle574=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle574.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_TransformExpr_return: (function() {
+ XQueryParser.p_TransformExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_TransformExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1373:1: p_TransformExpr : k+= COPY DOLLAR p_VarName BIND p_ExprSingle ( COMMA DOLLAR p_VarName BIND p_ExprSingle )* k+= MODIFY p_ExprSingle k+= RETURN p_ExprSingle ;
+ // $ANTLR start "p_TransformExpr"
+ p_TransformExpr: function() {
+ var retval = new XQueryParser.p_TransformExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR575 = null;
+ var BIND577 = null;
+ var COMMA579 = null;
+ var DOLLAR580 = null;
+ var BIND582 = null;
+ var k = null;
+ var list_k=null;
+ var p_VarName576 = null;
+ var p_ExprSingle578 = null;
+ var p_VarName581 = null;
+ var p_ExprSingle583 = null;
+ var p_ExprSingle584 = null;
+ var p_ExprSingle585 = null;
+
+ var DOLLAR575_tree=null;
+ var BIND577_tree=null;
+ var COMMA579_tree=null;
+ var DOLLAR580_tree=null;
+ var BIND582_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1374:9: (k+= COPY DOLLAR p_VarName BIND p_ExprSingle ( COMMA DOLLAR p_VarName BIND p_ExprSingle )* k+= MODIFY p_ExprSingle k+= RETURN p_ExprSingle )
+ // XQueryParser.g:1374:11: k+= COPY DOLLAR p_VarName BIND p_ExprSingle ( COMMA DOLLAR p_VarName BIND p_ExprSingle )* k+= MODIFY p_ExprSingle k+= RETURN p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,COPY,XQueryParser.FOLLOW_COPY_in_p_TransformExpr12227); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR575=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_TransformExpr12229); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR575_tree = this.adaptor.create(DOLLAR575);
+ this.adaptor.addChild(root_0, DOLLAR575_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_TransformExpr12231);
+ p_VarName576=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName576.getTree());
+ BIND577=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_p_TransformExpr12233); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND577_tree = this.adaptor.create(BIND577);
+ this.adaptor.addChild(root_0, BIND577_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TransformExpr12235);
+ p_ExprSingle578=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle578.getTree());
+ // XQueryParser.g:1374:54: ( COMMA DOLLAR p_VarName BIND p_ExprSingle )*
+ loop185:
+ do {
+ var alt185=2;
+ var LA185_0 = this.input.LA(1);
+
+ if ( (LA185_0==COMMA) ) {
+ alt185=1;
+ }
+
+
+ switch (alt185) {
+ case 1 :
+ // XQueryParser.g:1374:55: COMMA DOLLAR p_VarName BIND p_ExprSingle
+ COMMA579=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_TransformExpr12238); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA579_tree = this.adaptor.create(COMMA579);
+ this.adaptor.addChild(root_0, COMMA579_tree);
+ }
+ DOLLAR580=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_TransformExpr12240); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR580_tree = this.adaptor.create(DOLLAR580);
+ this.adaptor.addChild(root_0, DOLLAR580_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_TransformExpr12242);
+ p_VarName581=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName581.getTree());
+ BIND582=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_p_TransformExpr12244); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND582_tree = this.adaptor.create(BIND582);
+ this.adaptor.addChild(root_0, BIND582_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TransformExpr12246);
+ p_ExprSingle583=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle583.getTree());
+
+
+ break;
+
+ default :
+ break loop185;
+ }
+ } while (true);
+
+ k=this.match(this.input,MODIFY,XQueryParser.FOLLOW_MODIFY_in_p_TransformExpr12252); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TransformExpr12254);
+ p_ExprSingle584=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle584.getTree());
+ k=this.match(this.input,RETURN,XQueryParser.FOLLOW_RETURN_in_p_TransformExpr12258); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_TransformExpr12260);
+ p_ExprSingle585=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle585.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_ApplyExpr_return: (function() {
+ XQueryParser.pm_ApplyExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_ApplyExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1384:1: pm_ApplyExpr : p_ConcatExpr SEMICOLON ;
+ // $ANTLR start "pm_ApplyExpr"
+ pm_ApplyExpr: function() {
+ var retval = new XQueryParser.pm_ApplyExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON587 = null;
+ var p_ConcatExpr586 = null;
+
+ var SEMICOLON587_tree=null;
+
+ try {
+ // XQueryParser.g:1385:9: ( p_ConcatExpr SEMICOLON )
+ // XQueryParser.g:1385:11: p_ConcatExpr SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ConcatExpr_in_pm_ApplyExpr12294);
+ p_ConcatExpr586=this.p_ConcatExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ConcatExpr586.getTree());
+ SEMICOLON587=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_ApplyExpr12296); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON587_tree = this.adaptor.create(SEMICOLON587);
+ this.adaptor.addChild(root_0, SEMICOLON587_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ConcatExpr_return: (function() {
+ XQueryParser.p_ConcatExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ConcatExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1389:1: p_ConcatExpr : p_ExprSingle ( COMMA p_ExprSingle )* ;
+ // $ANTLR start "p_ConcatExpr"
+ p_ConcatExpr: function() {
+ var retval = new XQueryParser.p_ConcatExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA589 = null;
+ var p_ExprSingle588 = null;
+ var p_ExprSingle590 = null;
+
+ var COMMA589_tree=null;
+
+ try {
+ // XQueryParser.g:1390:9: ( p_ExprSingle ( COMMA p_ExprSingle )* )
+ // XQueryParser.g:1390:11: p_ExprSingle ( COMMA p_ExprSingle )*
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ConcatExpr12322);
+ p_ExprSingle588=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle588.getTree());
+ // XQueryParser.g:1390:24: ( COMMA p_ExprSingle )*
+ loop186:
+ do {
+ var alt186=2;
+ var LA186_0 = this.input.LA(1);
+
+ if ( (LA186_0==COMMA) ) {
+ alt186=1;
+ }
+
+
+ switch (alt186) {
+ case 1 :
+ // XQueryParser.g:1390:25: COMMA p_ExprSingle
+ COMMA589=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_ConcatExpr12325); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA589_tree = this.adaptor.create(COMMA589);
+ this.adaptor.addChild(root_0, COMMA589_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ConcatExpr12327);
+ p_ExprSingle590=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle590.getTree());
+
+
+ break;
+
+ default :
+ break loop186;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_BlockExpr_return: (function() {
+ XQueryParser.p_BlockExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_BlockExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1394:1: p_BlockExpr : kb= BLOCK p_Block ;
+ // $ANTLR start "p_BlockExpr"
+ p_BlockExpr: function() {
+ var retval = new XQueryParser.p_BlockExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kb = null;
+ var p_Block591 = null;
+
+ var kb_tree=null;
+
+ try {
+ // XQueryParser.g:1395:9: (kb= BLOCK p_Block )
+ // XQueryParser.g:1395:11: kb= BLOCK p_Block
+ root_0 = this.adaptor.nil();
+
+ kb=this.match(this.input,BLOCK,XQueryParser.FOLLOW_BLOCK_in_p_BlockExpr12357); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kb_tree = this.adaptor.create(kb);
+ this.adaptor.addChild(root_0, kb_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_Block_in_p_BlockExpr12359);
+ p_Block591=this.p_Block();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Block591.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_Block_return: (function() {
+ XQueryParser.p_Block_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_Block_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1399:1: p_Block : LBRACKET bd= pm_BlockDecls bb= p_BlockBody RBRACKET -> ^( Block $bd $bb) ;
+ // $ANTLR start "p_Block"
+ p_Block: function() {
+ var retval = new XQueryParser.p_Block_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var LBRACKET592 = null;
+ var RBRACKET593 = null;
+ var bd = null;
+ var bb = null;
+
+ var LBRACKET592_tree=null;
+ var RBRACKET593_tree=null;
+ var stream_LBRACKET=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token LBRACKET");
+ var stream_RBRACKET=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token RBRACKET");
+ var stream_p_BlockBody=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_BlockBody");
+ var stream_pm_BlockDecls=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_BlockDecls");
+ try {
+ // XQueryParser.g:1400:9: ( LBRACKET bd= pm_BlockDecls bb= p_BlockBody RBRACKET -> ^( Block $bd $bb) )
+ // XQueryParser.g:1400:11: LBRACKET bd= pm_BlockDecls bb= p_BlockBody RBRACKET
+ LBRACKET592=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_Block12385); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_LBRACKET.add(LBRACKET592);
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_BlockDecls_in_p_Block12389);
+ bd=this.pm_BlockDecls();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_BlockDecls.add(bd.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_BlockBody_in_p_Block12393);
+ bb=this.p_BlockBody();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_BlockBody.add(bb.getTree());
+ RBRACKET593=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_Block12395); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_RBRACKET.add(RBRACKET593);
+
+
+
+ // AST REWRITE
+ // elements: bd, bb
+ // token labels:
+ // rule labels: retval, bb, bd
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_bb=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token bb",bb!=null?bb.tree:null);
+ var stream_bd=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token bd",bd!=null?bd.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1401:17: -> ^( Block $bd $bb)
+ {
+ // XQueryParser.g:1401:20: ^( Block $bd $bb)
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(Block, "Block"), root_1);
+
+ this.adaptor.addChild(root_1, stream_bd.nextTree());
+ this.adaptor.addChild(root_1, stream_bb.nextTree());
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_BlockDecls_return: (function() {
+ XQueryParser.pm_BlockDecls_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_BlockDecls_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1405:1: pm_BlockDecls : (bvd+= pm_BlockVarDecl )* -> ^( BlockDecls ( $bvd)* ) ;
+ // $ANTLR start "pm_BlockDecls"
+ pm_BlockDecls: function() {
+ var retval = new XQueryParser.pm_BlockDecls_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var list_bvd=null;
+ var bvd = null;
+ var stream_pm_BlockVarDecl=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule pm_BlockVarDecl");
+ try {
+ // XQueryParser.g:1406:9: ( (bvd+= pm_BlockVarDecl )* -> ^( BlockDecls ( $bvd)* ) )
+ // XQueryParser.g:1406:11: (bvd+= pm_BlockVarDecl )*
+ // XQueryParser.g:1406:14: (bvd+= pm_BlockVarDecl )*
+ loop187:
+ do {
+ var alt187=2;
+ var LA187_0 = this.input.LA(1);
+
+ if ( (LA187_0==DECLARE) ) {
+ var LA187_2 = this.input.LA(2);
+
+ if ( (LA187_2==DOLLAR) ) {
+ alt187=1;
+ }
+
+
+ }
+
+
+ switch (alt187) {
+ case 1 :
+ // XQueryParser.g:1406:14: bvd+= pm_BlockVarDecl
+ this.pushFollow(XQueryParser.FOLLOW_pm_BlockVarDecl_in_pm_BlockDecls12451);
+ bvd=this.pm_BlockVarDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_pm_BlockVarDecl.add(bvd.getTree());
+ if (org.antlr.lang.isNull(list_bvd)) list_bvd = [];
+ list_bvd.push(bvd.getTree());
+
+
+
+ break;
+
+ default :
+ break loop187;
+ }
+ } while (true);
+
+
+
+ // AST REWRITE
+ // elements: bvd
+ // token labels:
+ // rule labels: retval
+ // token list labels:
+ // rule list labels: bvd
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_bvd=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token bvd",list_bvd);
+ root_0 = this.adaptor.nil();
+ // 1407:17: -> ^( BlockDecls ( $bvd)* )
+ {
+ // XQueryParser.g:1407:20: ^( BlockDecls ( $bvd)* )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(BlockDecls, "BlockDecls"), root_1);
+
+ // XQueryParser.g:1407:33: ( $bvd)*
+ while ( stream_bvd.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_bvd.nextTree());
+
+ }
+ stream_bvd.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ pm_BlockVarDecl_return: (function() {
+ XQueryParser.pm_BlockVarDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.pm_BlockVarDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1411:1: pm_BlockVarDecl : kd= DECLARE DOLLAR qn= p_VarName (td= p_TypeDeclaration )? ( BIND es= p_ExprSingle )? ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( BIND p_ExprSingle )? )* SEMICOLON -> ^( BlockVarDecl $qn ( $td)? ( $es)? ) ;
+ // $ANTLR start "pm_BlockVarDecl"
+ pm_BlockVarDecl: function() {
+ var retval = new XQueryParser.pm_BlockVarDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kd = null;
+ var DOLLAR594 = null;
+ var BIND595 = null;
+ var COMMA596 = null;
+ var DOLLAR597 = null;
+ var BIND600 = null;
+ var SEMICOLON602 = null;
+ var qn = null;
+ var td = null;
+ var es = null;
+ var p_VarName598 = null;
+ var p_TypeDeclaration599 = null;
+ var p_ExprSingle601 = null;
+
+ var kd_tree=null;
+ var DOLLAR594_tree=null;
+ var BIND595_tree=null;
+ var COMMA596_tree=null;
+ var DOLLAR597_tree=null;
+ var BIND600_tree=null;
+ var SEMICOLON602_tree=null;
+ var stream_DOLLAR=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DOLLAR");
+ var stream_DECLARE=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token DECLARE");
+ var stream_SEMICOLON=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token SEMICOLON");
+ var stream_COMMA=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token COMMA");
+ var stream_BIND=new org.antlr.runtime.tree.RewriteRuleTokenStream(this.adaptor,"token BIND");
+ var stream_p_VarName=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_VarName");
+ var stream_p_TypeDeclaration=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_TypeDeclaration");
+ var stream_p_ExprSingle=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"rule p_ExprSingle");
+ try {
+ // XQueryParser.g:1412:9: (kd= DECLARE DOLLAR qn= p_VarName (td= p_TypeDeclaration )? ( BIND es= p_ExprSingle )? ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( BIND p_ExprSingle )? )* SEMICOLON -> ^( BlockVarDecl $qn ( $td)? ( $es)? ) )
+ // XQueryParser.g:1412:11: kd= DECLARE DOLLAR qn= p_VarName (td= p_TypeDeclaration )? ( BIND es= p_ExprSingle )? ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( BIND p_ExprSingle )? )* SEMICOLON
+ kd=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_pm_BlockVarDecl12506); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DECLARE.add(kd);
+
+ DOLLAR594=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_pm_BlockVarDecl12508); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DOLLAR.add(DOLLAR594);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_pm_BlockVarDecl12512);
+ qn=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_VarName.add(qn.getTree());
+ // XQueryParser.g:1412:44: (td= p_TypeDeclaration )?
+ var alt188=2;
+ var LA188_0 = this.input.LA(1);
+
+ if ( (LA188_0==AS) ) {
+ alt188=1;
+ }
+ switch (alt188) {
+ case 1 :
+ // XQueryParser.g:1412:44: td= p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_pm_BlockVarDecl12516);
+ td=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(td.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:1412:64: ( BIND es= p_ExprSingle )?
+ var alt189=2;
+ var LA189_0 = this.input.LA(1);
+
+ if ( (LA189_0==BIND) ) {
+ alt189=1;
+ }
+ switch (alt189) {
+ case 1 :
+ // XQueryParser.g:1412:65: BIND es= p_ExprSingle
+ BIND595=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_BlockVarDecl12520); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BIND.add(BIND595);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_BlockVarDecl12524);
+ es=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ExprSingle.add(es.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:1412:88: ( COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( BIND p_ExprSingle )? )*
+ loop192:
+ do {
+ var alt192=2;
+ var LA192_0 = this.input.LA(1);
+
+ if ( (LA192_0==COMMA) ) {
+ alt192=1;
+ }
+
+
+ switch (alt192) {
+ case 1 :
+ // XQueryParser.g:1412:89: COMMA DOLLAR p_VarName ( p_TypeDeclaration )? ( BIND p_ExprSingle )?
+ COMMA596=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_pm_BlockVarDecl12529); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_COMMA.add(COMMA596);
+
+ DOLLAR597=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_pm_BlockVarDecl12531); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_DOLLAR.add(DOLLAR597);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_pm_BlockVarDecl12533);
+ p_VarName598=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_VarName.add(p_VarName598.getTree());
+ // XQueryParser.g:1412:112: ( p_TypeDeclaration )?
+ var alt190=2;
+ var LA190_0 = this.input.LA(1);
+
+ if ( (LA190_0==AS) ) {
+ alt190=1;
+ }
+ switch (alt190) {
+ case 1 :
+ // XQueryParser.g:1412:112: p_TypeDeclaration
+ this.pushFollow(XQueryParser.FOLLOW_p_TypeDeclaration_in_pm_BlockVarDecl12535);
+ p_TypeDeclaration599=this.p_TypeDeclaration();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_TypeDeclaration.add(p_TypeDeclaration599.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:1412:131: ( BIND p_ExprSingle )?
+ var alt191=2;
+ var LA191_0 = this.input.LA(1);
+
+ if ( (LA191_0==BIND) ) {
+ alt191=1;
+ }
+ switch (alt191) {
+ case 1 :
+ // XQueryParser.g:1412:132: BIND p_ExprSingle
+ BIND600=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_pm_BlockVarDecl12539); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_BIND.add(BIND600);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_pm_BlockVarDecl12541);
+ p_ExprSingle601=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_p_ExprSingle.add(p_ExprSingle601.getTree());
+
+
+ break;
+
+ }
+
+
+
+ break;
+
+ default :
+ break loop192;
+ }
+ } while (true);
+
+ SEMICOLON602=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_pm_BlockVarDecl12547); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) stream_SEMICOLON.add(SEMICOLON602);
+
+
+
+ // AST REWRITE
+ // elements: td, es, qn
+ // token labels:
+ // rule labels: qn, retval, td, es
+ // token list labels:
+ // rule list labels:
+ if ( this.state.backtracking===0 ) {
+ retval.tree = root_0;
+ var stream_qn=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token qn",qn!=null?qn.tree:null);
+ var stream_retval=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token retval",retval!=null?retval.tree:null);
+ var stream_td=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token td",td!=null?td.tree:null);
+ var stream_es=new org.antlr.runtime.tree.RewriteRuleSubtreeStream(this.adaptor,"token es",es!=null?es.tree:null);
+
+ root_0 = this.adaptor.nil();
+ // 1413:17: -> ^( BlockVarDecl $qn ( $td)? ( $es)? )
+ {
+ // XQueryParser.g:1413:21: ^( BlockVarDecl $qn ( $td)? ( $es)? )
+ {
+ var root_1 = this.adaptor.nil();
+ root_1 = this.adaptor.becomeRoot(this.adaptor.create(BlockVarDecl, "BlockVarDecl"), root_1);
+
+ this.adaptor.addChild(root_1, stream_qn.nextTree());
+ // XQueryParser.g:1413:40: ( $td)?
+ if ( stream_td.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_td.nextTree());
+
+ }
+ stream_td.reset();
+ // XQueryParser.g:1413:45: ( $es)?
+ if ( stream_es.hasNext() ) {
+ this.adaptor.addChild(root_1, stream_es.nextTree());
+
+ }
+ stream_es.reset();
+
+ this.adaptor.addChild(root_0, root_1);
+ }
+
+ }
+
+ retval.tree = root_0;}
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_BlockBody_return: (function() {
+ XQueryParser.p_BlockBody_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_BlockBody_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1417:1: p_BlockBody : pm_Expr ;
+ // $ANTLR start "p_BlockBody"
+ p_BlockBody: function() {
+ var retval = new XQueryParser.p_BlockBody_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var pm_Expr603 = null;
+
+
+ try {
+ // XQueryParser.g:1418:9: ( pm_Expr )
+ // XQueryParser.g:1418:11: pm_Expr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_pm_Expr_in_p_BlockBody12607);
+ pm_Expr603=this.pm_Expr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, pm_Expr603.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_AssignmentExpr_return: (function() {
+ XQueryParser.p_AssignmentExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_AssignmentExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1422:1: p_AssignmentExpr : ks= SET DOLLAR p_VarName BIND p_ExprSingle ;
+ // $ANTLR start "p_AssignmentExpr"
+ p_AssignmentExpr: function() {
+ var retval = new XQueryParser.p_AssignmentExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ks = null;
+ var DOLLAR604 = null;
+ var BIND606 = null;
+ var p_VarName605 = null;
+ var p_ExprSingle607 = null;
+
+ var ks_tree=null;
+ var DOLLAR604_tree=null;
+ var BIND606_tree=null;
+
+ try {
+ // XQueryParser.g:1423:9: (ks= SET DOLLAR p_VarName BIND p_ExprSingle )
+ // XQueryParser.g:1423:11: ks= SET DOLLAR p_VarName BIND p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ ks=this.match(this.input,SET,XQueryParser.FOLLOW_SET_in_p_AssignmentExpr12635); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ks_tree = this.adaptor.create(ks);
+ this.adaptor.addChild(root_0, ks_tree);
+ }
+ DOLLAR604=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_AssignmentExpr12637); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR604_tree = this.adaptor.create(DOLLAR604);
+ this.adaptor.addChild(root_0, DOLLAR604_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_AssignmentExpr12639);
+ p_VarName605=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName605.getTree());
+ BIND606=this.match(this.input,BIND,XQueryParser.FOLLOW_BIND_in_p_AssignmentExpr12641); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ BIND606_tree = this.adaptor.create(BIND606);
+ this.adaptor.addChild(root_0, BIND606_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_AssignmentExpr12643);
+ p_ExprSingle607=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle607.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ExitExpr_return: (function() {
+ XQueryParser.p_ExitExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ExitExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1427:1: p_ExitExpr : ke= EXIT kr= RETURNING p_ExprSingle ;
+ // $ANTLR start "p_ExitExpr"
+ p_ExitExpr: function() {
+ var retval = new XQueryParser.p_ExitExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ke = null;
+ var kr = null;
+ var p_ExprSingle608 = null;
+
+ var ke_tree=null;
+ var kr_tree=null;
+
+ try {
+ // XQueryParser.g:1428:9: (ke= EXIT kr= RETURNING p_ExprSingle )
+ // XQueryParser.g:1428:11: ke= EXIT kr= RETURNING p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ ke=this.match(this.input,EXIT,XQueryParser.FOLLOW_EXIT_in_p_ExitExpr12671); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ke_tree = this.adaptor.create(ke);
+ this.adaptor.addChild(root_0, ke_tree);
+ }
+ kr=this.match(this.input,RETURNING,XQueryParser.FOLLOW_RETURNING_in_p_ExitExpr12675); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kr_tree = this.adaptor.create(kr);
+ this.adaptor.addChild(root_0, kr_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ExitExpr12677);
+ p_ExprSingle608=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle608.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WhileExpr_return: (function() {
+ XQueryParser.p_WhileExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WhileExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1432:1: p_WhileExpr : kw= WHILE LPAREN p_ExprSingle RPAREN p_WhileBody ;
+ // $ANTLR start "p_WhileExpr"
+ p_WhileExpr: function() {
+ var retval = new XQueryParser.p_WhileExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kw = null;
+ var LPAREN609 = null;
+ var RPAREN611 = null;
+ var p_ExprSingle610 = null;
+ var p_WhileBody612 = null;
+
+ var kw_tree=null;
+ var LPAREN609_tree=null;
+ var RPAREN611_tree=null;
+
+ try {
+ // XQueryParser.g:1433:9: (kw= WHILE LPAREN p_ExprSingle RPAREN p_WhileBody )
+ // XQueryParser.g:1433:11: kw= WHILE LPAREN p_ExprSingle RPAREN p_WhileBody
+ root_0 = this.adaptor.nil();
+
+ kw=this.match(this.input,WHILE,XQueryParser.FOLLOW_WHILE_in_p_WhileExpr12705); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kw_tree = this.adaptor.create(kw);
+ this.adaptor.addChild(root_0, kw_tree);
+ }
+ LPAREN609=this.match(this.input,LPAREN,XQueryParser.FOLLOW_LPAREN_in_p_WhileExpr12707); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LPAREN609_tree = this.adaptor.create(LPAREN609);
+ this.adaptor.addChild(root_0, LPAREN609_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_WhileExpr12709);
+ p_ExprSingle610=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle610.getTree());
+ RPAREN611=this.match(this.input,RPAREN,XQueryParser.FOLLOW_RPAREN_in_p_WhileExpr12711); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RPAREN611_tree = this.adaptor.create(RPAREN611);
+ this.adaptor.addChild(root_0, RPAREN611_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_WhileBody_in_p_WhileExpr12713);
+ p_WhileBody612=this.p_WhileBody();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_WhileBody612.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_WhileBody_return: (function() {
+ XQueryParser.p_WhileBody_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_WhileBody_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1437:1: p_WhileBody : p_Block ;
+ // $ANTLR start "p_WhileBody"
+ p_WhileBody: function() {
+ var retval = new XQueryParser.p_WhileBody_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_Block613 = null;
+
+
+ try {
+ // XQueryParser.g:1438:9: ( p_Block )
+ // XQueryParser.g:1438:11: p_Block
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_Block_in_p_WhileBody12739);
+ p_Block613=this.p_Block();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_Block613.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_EvalExpr_return: (function() {
+ XQueryParser.p_EvalExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_EvalExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1446:1: p_EvalExpr : ( p_UsingClause )? ke= EVAL LBRACKET p_ExprSingle RBRACKET ;
+ // $ANTLR start "p_EvalExpr"
+ p_EvalExpr: function() {
+ var retval = new XQueryParser.p_EvalExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ke = null;
+ var LBRACKET615 = null;
+ var RBRACKET617 = null;
+ var p_UsingClause614 = null;
+ var p_ExprSingle616 = null;
+
+ var ke_tree=null;
+ var LBRACKET615_tree=null;
+ var RBRACKET617_tree=null;
+
+ try {
+ // XQueryParser.g:1447:9: ( ( p_UsingClause )? ke= EVAL LBRACKET p_ExprSingle RBRACKET )
+ // XQueryParser.g:1447:11: ( p_UsingClause )? ke= EVAL LBRACKET p_ExprSingle RBRACKET
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1447:11: ( p_UsingClause )?
+ var alt193=2;
+ var LA193_0 = this.input.LA(1);
+
+ if ( (LA193_0==USING) ) {
+ alt193=1;
+ }
+ switch (alt193) {
+ case 1 :
+ // XQueryParser.g:1447:11: p_UsingClause
+ this.pushFollow(XQueryParser.FOLLOW_p_UsingClause_in_p_EvalExpr12769);
+ p_UsingClause614=this.p_UsingClause();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_UsingClause614.getTree());
+
+
+ break;
+
+ }
+
+ ke=this.match(this.input,EVAL,XQueryParser.FOLLOW_EVAL_in_p_EvalExpr12774); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ke_tree = this.adaptor.create(ke);
+ this.adaptor.addChild(root_0, ke_tree);
+ }
+ LBRACKET615=this.match(this.input,LBRACKET,XQueryParser.FOLLOW_LBRACKET_in_p_EvalExpr12776); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ LBRACKET615_tree = this.adaptor.create(LBRACKET615);
+ this.adaptor.addChild(root_0, LBRACKET615_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_EvalExpr12778);
+ p_ExprSingle616=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle616.getTree());
+ RBRACKET617=this.match(this.input,RBRACKET,XQueryParser.FOLLOW_RBRACKET_in_p_EvalExpr12780); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ RBRACKET617_tree = this.adaptor.create(RBRACKET617);
+ this.adaptor.addChild(root_0, RBRACKET617_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_UsingClause_return: (function() {
+ XQueryParser.p_UsingClause_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_UsingClause_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1450:1: p_UsingClause : ku= USING DOLLAR p_VarName ( COMMA DOLLAR p_VarName )* ;
+ // $ANTLR start "p_UsingClause"
+ p_UsingClause: function() {
+ var retval = new XQueryParser.p_UsingClause_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ku = null;
+ var DOLLAR618 = null;
+ var COMMA620 = null;
+ var DOLLAR621 = null;
+ var p_VarName619 = null;
+ var p_VarName622 = null;
+
+ var ku_tree=null;
+ var DOLLAR618_tree=null;
+ var COMMA620_tree=null;
+ var DOLLAR621_tree=null;
+
+ try {
+ // XQueryParser.g:1451:9: (ku= USING DOLLAR p_VarName ( COMMA DOLLAR p_VarName )* )
+ // XQueryParser.g:1451:11: ku= USING DOLLAR p_VarName ( COMMA DOLLAR p_VarName )*
+ root_0 = this.adaptor.nil();
+
+ ku=this.match(this.input,USING,XQueryParser.FOLLOW_USING_in_p_UsingClause12807); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ku_tree = this.adaptor.create(ku);
+ this.adaptor.addChild(root_0, ku_tree);
+ }
+ DOLLAR618=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_UsingClause12809); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR618_tree = this.adaptor.create(DOLLAR618);
+ this.adaptor.addChild(root_0, DOLLAR618_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_UsingClause12811);
+ p_VarName619=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName619.getTree());
+ // XQueryParser.g:1451:37: ( COMMA DOLLAR p_VarName )*
+ loop194:
+ do {
+ var alt194=2;
+ var LA194_0 = this.input.LA(1);
+
+ if ( (LA194_0==COMMA) ) {
+ alt194=1;
+ }
+
+
+ switch (alt194) {
+ case 1 :
+ // XQueryParser.g:1451:38: COMMA DOLLAR p_VarName
+ COMMA620=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_UsingClause12814); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA620_tree = this.adaptor.create(COMMA620);
+ this.adaptor.addChild(root_0, COMMA620_tree);
+ }
+ DOLLAR621=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_UsingClause12816); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR621_tree = this.adaptor.create(DOLLAR621);
+ this.adaptor.addChild(root_0, DOLLAR621_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_VarName_in_p_UsingClause12818);
+ p_VarName622=this.p_VarName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_VarName622.getTree());
+
+
+ break;
+
+ default :
+ break loop194;
+ }
+ } while (true);
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CollectionDecl_return: (function() {
+ XQueryParser.p_CollectionDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CollectionDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1460:1: p_CollectionDecl : k+= DECLARE p_CollProperties k+= COLLECTION p_QName ( p_CollectionTypeDecl )? (k+= WITH p_NodeModifier k+= NODES )? SEMICOLON ;
+ // $ANTLR start "p_CollectionDecl"
+ p_CollectionDecl: function() {
+ var retval = new XQueryParser.p_CollectionDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON627 = null;
+ var k = null;
+ var list_k=null;
+ var p_CollProperties623 = null;
+ var p_QName624 = null;
+ var p_CollectionTypeDecl625 = null;
+ var p_NodeModifier626 = null;
+
+ var SEMICOLON627_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1461:9: (k+= DECLARE p_CollProperties k+= COLLECTION p_QName ( p_CollectionTypeDecl )? (k+= WITH p_NodeModifier k+= NODES )? SEMICOLON )
+ // XQueryParser.g:1461:11: k+= DECLARE p_CollProperties k+= COLLECTION p_QName ( p_CollectionTypeDecl )? (k+= WITH p_NodeModifier k+= NODES )? SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_p_CollectionDecl12853); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_CollProperties_in_p_CollectionDecl12855);
+ p_CollProperties623=this.p_CollProperties();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CollProperties623.getTree());
+ k=this.match(this.input,COLLECTION,XQueryParser.FOLLOW_COLLECTION_in_p_CollectionDecl12859); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_CollectionDecl12861);
+ p_QName624=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName624.getTree());
+ // XQueryParser.g:1461:61: ( p_CollectionTypeDecl )?
+ var alt195=2;
+ var LA195_0 = this.input.LA(1);
+
+ if ( (LA195_0==AS) ) {
+ alt195=1;
+ }
+ switch (alt195) {
+ case 1 :
+ // XQueryParser.g:1461:61: p_CollectionTypeDecl
+ this.pushFollow(XQueryParser.FOLLOW_p_CollectionTypeDecl_in_p_CollectionDecl12863);
+ p_CollectionTypeDecl625=this.p_CollectionTypeDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_CollectionTypeDecl625.getTree());
+
+
+ break;
+
+ }
+
+ // XQueryParser.g:1461:83: (k+= WITH p_NodeModifier k+= NODES )?
+ var alt196=2;
+ var LA196_0 = this.input.LA(1);
+
+ if ( (LA196_0==WITH) ) {
+ alt196=1;
+ }
+ switch (alt196) {
+ case 1 :
+ // XQueryParser.g:1461:84: k+= WITH p_NodeModifier k+= NODES
+ k=this.match(this.input,WITH,XQueryParser.FOLLOW_WITH_in_p_CollectionDecl12869); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_NodeModifier_in_p_CollectionDecl12871);
+ p_NodeModifier626=this.p_NodeModifier();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_NodeModifier626.getTree());
+ k=this.match(this.input,NODES,XQueryParser.FOLLOW_NODES_in_p_CollectionDecl12875); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+ SEMICOLON627=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_CollectionDecl12879); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON627_tree = this.adaptor.create(SEMICOLON627);
+ this.adaptor.addChild(root_0, SEMICOLON627_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CollProperties_return: (function() {
+ XQueryParser.p_CollProperties_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CollProperties_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1464:1: p_CollProperties : ( (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )* ) ;
+ // $ANTLR start "p_CollProperties"
+ p_CollProperties: function() {
+ var retval = new XQueryParser.p_CollProperties_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1465:9: ( ( (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )* ) )
+ // XQueryParser.g:1465:11: ( (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )* )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1465:11: ( (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )* )
+ // XQueryParser.g:1465:12: (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )*
+ // XQueryParser.g:1465:12: (k+= CONST | k+= MUTABLE | k+= APPEND_ONLY | k+= QUEUE | k+= ORDERED | k+= UNORDERED )*
+ loop197:
+ do {
+ var alt197=7;
+ switch ( this.input.LA(1) ) {
+ case CONST:
+ alt197=1;
+ break;
+ case MUTABLE:
+ alt197=2;
+ break;
+ case APPEND_ONLY:
+ alt197=3;
+ break;
+ case QUEUE:
+ alt197=4;
+ break;
+ case ORDERED:
+ alt197=5;
+ break;
+ case UNORDERED:
+ alt197=6;
+ break;
+
+ }
+
+ switch (alt197) {
+ case 1 :
+ // XQueryParser.g:1465:13: k+= CONST
+ k=this.match(this.input,CONST,XQueryParser.FOLLOW_CONST_in_p_CollProperties12909); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1465:24: k+= MUTABLE
+ k=this.match(this.input,MUTABLE,XQueryParser.FOLLOW_MUTABLE_in_p_CollProperties12915); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1466:11: k+= APPEND_ONLY
+ k=this.match(this.input,APPEND_ONLY,XQueryParser.FOLLOW_APPEND_ONLY_in_p_CollProperties12929); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:1466:28: k+= QUEUE
+ k=this.match(this.input,QUEUE,XQueryParser.FOLLOW_QUEUE_in_p_CollProperties12935); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:1467:11: k+= ORDERED
+ k=this.match(this.input,ORDERED,XQueryParser.FOLLOW_ORDERED_in_p_CollProperties12949); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:1467:24: k+= UNORDERED
+ k=this.match(this.input,UNORDERED,XQueryParser.FOLLOW_UNORDERED_in_p_CollProperties12955); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ default :
+ break loop197;
+ }
+ } while (true);
+
+
+
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_CollectionTypeDecl_return: (function() {
+ XQueryParser.p_CollectionTypeDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_CollectionTypeDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1470:1: p_CollectionTypeDecl : (ka= AS p_KindTest ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )? ) ;
+ // $ANTLR start "p_CollectionTypeDecl"
+ p_CollectionTypeDecl: function() {
+ var retval = new XQueryParser.p_CollectionTypeDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ka = null;
+ var p_KindTest628 = null;
+ var p_OccurrenceIndicator629 = null;
+
+ var ka_tree=null;
+
+ try {
+ // XQueryParser.g:1471:9: ( (ka= AS p_KindTest ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )? ) )
+ // XQueryParser.g:1471:11: (ka= AS p_KindTest ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )? )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1471:11: (ka= AS p_KindTest ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )? )
+ // XQueryParser.g:1471:12: ka= AS p_KindTest ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )?
+ ka=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_CollectionTypeDecl12987); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_KindTest_in_p_CollectionTypeDecl12989);
+ p_KindTest628=this.p_KindTest();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_KindTest628.getTree());
+ // XQueryParser.g:1471:29: ( ( p_OccurrenceIndicator )=> p_OccurrenceIndicator )?
+ var alt198=2;
+ var LA198_0 = this.input.LA(1);
+
+ if ( ((LA198_0>=QUESTION && LA198_0<=PLUS)) && (this.synpred3_XQueryParser())) {
+ alt198=1;
+ }
+ switch (alt198) {
+ case 1 :
+ // XQueryParser.g:1471:30: ( p_OccurrenceIndicator )=> p_OccurrenceIndicator
+ this.pushFollow(XQueryParser.FOLLOW_p_OccurrenceIndicator_in_p_CollectionTypeDecl12998);
+ p_OccurrenceIndicator629=this.p_OccurrenceIndicator();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_OccurrenceIndicator629.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_NodeModifier_return: (function() {
+ XQueryParser.p_NodeModifier_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_NodeModifier_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1474:1: p_NodeModifier : (k+= READ_ONLY | k+= MUTABLE ) ;
+ // $ANTLR start "p_NodeModifier"
+ p_NodeModifier: function() {
+ var retval = new XQueryParser.p_NodeModifier_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1475:9: ( (k+= READ_ONLY | k+= MUTABLE ) )
+ // XQueryParser.g:1475:11: (k+= READ_ONLY | k+= MUTABLE )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1475:11: (k+= READ_ONLY | k+= MUTABLE )
+ var alt199=2;
+ var LA199_0 = this.input.LA(1);
+
+ if ( (LA199_0==READ_ONLY) ) {
+ alt199=1;
+ }
+ else if ( (LA199_0==MUTABLE) ) {
+ alt199=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 199, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt199) {
+ case 1 :
+ // XQueryParser.g:1475:12: k+= READ_ONLY
+ k=this.match(this.input,READ_ONLY,XQueryParser.FOLLOW_READ_ONLY_in_p_NodeModifier13029); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1475:27: k+= MUTABLE
+ k=this.match(this.input,MUTABLE,XQueryParser.FOLLOW_MUTABLE_in_p_NodeModifier13035); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexDecl_return: (function() {
+ XQueryParser.p_IndexDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1478:1: p_IndexDecl : k+= DECLARE p_IndexProperties k+= INDEX p_IndexName k+= ON k+= NODES p_IndexDomainExpr k+= BY p_IndexKeySpec ( COMMA p_IndexKeySpec )* SEMICOLON ;
+ // $ANTLR start "p_IndexDecl"
+ p_IndexDecl: function() {
+ var retval = new XQueryParser.p_IndexDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var COMMA634 = null;
+ var SEMICOLON636 = null;
+ var k = null;
+ var list_k=null;
+ var p_IndexProperties630 = null;
+ var p_IndexName631 = null;
+ var p_IndexDomainExpr632 = null;
+ var p_IndexKeySpec633 = null;
+ var p_IndexKeySpec635 = null;
+
+ var COMMA634_tree=null;
+ var SEMICOLON636_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1479:9: (k+= DECLARE p_IndexProperties k+= INDEX p_IndexName k+= ON k+= NODES p_IndexDomainExpr k+= BY p_IndexKeySpec ( COMMA p_IndexKeySpec )* SEMICOLON )
+ // XQueryParser.g:1479:11: k+= DECLARE p_IndexProperties k+= INDEX p_IndexName k+= ON k+= NODES p_IndexDomainExpr k+= BY p_IndexKeySpec ( COMMA p_IndexKeySpec )* SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_p_IndexDecl13064); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexProperties_in_p_IndexDecl13066);
+ p_IndexProperties630=this.p_IndexProperties();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexProperties630.getTree());
+ k=this.match(this.input,INDEX,XQueryParser.FOLLOW_INDEX_in_p_IndexDecl13070); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexName_in_p_IndexDecl13072);
+ p_IndexName631=this.p_IndexName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexName631.getTree());
+ k=this.match(this.input,ON,XQueryParser.FOLLOW_ON_in_p_IndexDecl13076); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NODES,XQueryParser.FOLLOW_NODES_in_p_IndexDecl13080); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexDomainExpr_in_p_IndexDecl13082);
+ p_IndexDomainExpr632=this.p_IndexDomainExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexDomainExpr632.getTree());
+ k=this.match(this.input,BY,XQueryParser.FOLLOW_BY_in_p_IndexDecl13086); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexKeySpec_in_p_IndexDecl13088);
+ p_IndexKeySpec633=this.p_IndexKeySpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexKeySpec633.getTree());
+ // XQueryParser.g:1479:115: ( COMMA p_IndexKeySpec )*
+ loop200:
+ do {
+ var alt200=2;
+ var LA200_0 = this.input.LA(1);
+
+ if ( (LA200_0==COMMA) ) {
+ alt200=1;
+ }
+
+
+ switch (alt200) {
+ case 1 :
+ // XQueryParser.g:1479:116: COMMA p_IndexKeySpec
+ COMMA634=this.match(this.input,COMMA,XQueryParser.FOLLOW_COMMA_in_p_IndexDecl13091); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ COMMA634_tree = this.adaptor.create(COMMA634);
+ this.adaptor.addChild(root_0, COMMA634_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexKeySpec_in_p_IndexDecl13093);
+ p_IndexKeySpec635=this.p_IndexKeySpec();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexKeySpec635.getTree());
+
+
+ break;
+
+ default :
+ break loop200;
+ }
+ } while (true);
+
+ SEMICOLON636=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_IndexDecl13097); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON636_tree = this.adaptor.create(SEMICOLON636);
+ this.adaptor.addChild(root_0, SEMICOLON636_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexName_return: (function() {
+ XQueryParser.p_IndexName_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexName_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1482:1: p_IndexName : p_QName ;
+ // $ANTLR start "p_IndexName"
+ p_IndexName: function() {
+ var retval = new XQueryParser.p_IndexName_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_QName637 = null;
+
+
+ try {
+ // XQueryParser.g:1483:9: ( p_QName )
+ // XQueryParser.g:1483:11: p_QName
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_IndexName13123);
+ p_QName637=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName637.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexProperties_return: (function() {
+ XQueryParser.p_IndexProperties_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexProperties_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1486:1: p_IndexProperties : ( (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )* ) ;
+ // $ANTLR start "p_IndexProperties"
+ p_IndexProperties: function() {
+ var retval = new XQueryParser.p_IndexProperties_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1487:9: ( ( (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )* ) )
+ // XQueryParser.g:1487:11: ( (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )* )
+ root_0 = this.adaptor.nil();
+
+ // XQueryParser.g:1487:11: ( (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )* )
+ // XQueryParser.g:1487:12: (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )*
+ // XQueryParser.g:1487:12: (k+= UNIQUE | k+= NON k+= UNIQUE | k+= VALUE k+= RANGE | k+= VALUE k+= EQUALITY | k+= AUTOMATICALLY k+= MAINTAINED | k+= MANUALLY k+= MAINTAINED )*
+ loop201:
+ do {
+ var alt201=7;
+ switch ( this.input.LA(1) ) {
+ case UNIQUE:
+ alt201=1;
+ break;
+ case NON:
+ alt201=2;
+ break;
+ case VALUE:
+ var LA201_4 = this.input.LA(2);
+
+ if ( (LA201_4==RANGE) ) {
+ alt201=3;
+ }
+ else if ( (LA201_4==EQUALITY) ) {
+ alt201=4;
+ }
+
+
+ break;
+ case AUTOMATICALLY:
+ alt201=5;
+ break;
+ case MANUALLY:
+ alt201=6;
+ break;
+
+ }
+
+ switch (alt201) {
+ case 1 :
+ // XQueryParser.g:1487:13: k+= UNIQUE
+ k=this.match(this.input,UNIQUE,XQueryParser.FOLLOW_UNIQUE_in_p_IndexProperties13152); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1487:25: k+= NON k+= UNIQUE
+ k=this.match(this.input,NON,XQueryParser.FOLLOW_NON_in_p_IndexProperties13158); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,UNIQUE,XQueryParser.FOLLOW_UNIQUE_in_p_IndexProperties13162); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1488:11: k+= VALUE k+= RANGE
+ k=this.match(this.input,VALUE,XQueryParser.FOLLOW_VALUE_in_p_IndexProperties13176); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,RANGE,XQueryParser.FOLLOW_RANGE_in_p_IndexProperties13180); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 4 :
+ // XQueryParser.g:1488:31: k+= VALUE k+= EQUALITY
+ k=this.match(this.input,VALUE,XQueryParser.FOLLOW_VALUE_in_p_IndexProperties13186); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,EQUALITY,XQueryParser.FOLLOW_EQUALITY_in_p_IndexProperties13190); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 5 :
+ // XQueryParser.g:1489:11: k+= AUTOMATICALLY k+= MAINTAINED
+ k=this.match(this.input,AUTOMATICALLY,XQueryParser.FOLLOW_AUTOMATICALLY_in_p_IndexProperties13204); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,MAINTAINED,XQueryParser.FOLLOW_MAINTAINED_in_p_IndexProperties13208); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+ case 6 :
+ // XQueryParser.g:1489:44: k+= MANUALLY k+= MAINTAINED
+ k=this.match(this.input,MANUALLY,XQueryParser.FOLLOW_MANUALLY_in_p_IndexProperties13214); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,MAINTAINED,XQueryParser.FOLLOW_MAINTAINED_in_p_IndexProperties13218); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+
+
+ break;
+
+ default :
+ break loop201;
+ }
+ } while (true);
+
+
+
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexDomainExpr_return: (function() {
+ XQueryParser.p_IndexDomainExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexDomainExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1492:1: p_IndexDomainExpr : p_PathExpr ;
+ // $ANTLR start "p_IndexDomainExpr"
+ p_IndexDomainExpr: function() {
+ var retval = new XQueryParser.p_IndexDomainExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_PathExpr638 = null;
+
+
+ try {
+ // XQueryParser.g:1493:9: ( p_PathExpr )
+ // XQueryParser.g:1493:11: p_PathExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PathExpr_in_p_IndexDomainExpr13247);
+ p_PathExpr638=this.p_PathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PathExpr638.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexKeySpec_return: (function() {
+ XQueryParser.p_IndexKeySpec_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexKeySpec_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1496:1: p_IndexKeySpec : p_IndexKeyExpr p_IndexKeyTypeDecl ( p_IndexKeyCollation )? ;
+ // $ANTLR start "p_IndexKeySpec"
+ p_IndexKeySpec: function() {
+ var retval = new XQueryParser.p_IndexKeySpec_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_IndexKeyExpr639 = null;
+ var p_IndexKeyTypeDecl640 = null;
+ var p_IndexKeyCollation641 = null;
+
+
+ try {
+ // XQueryParser.g:1497:9: ( p_IndexKeyExpr p_IndexKeyTypeDecl ( p_IndexKeyCollation )? )
+ // XQueryParser.g:1497:11: p_IndexKeyExpr p_IndexKeyTypeDecl ( p_IndexKeyCollation )?
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexKeyExpr_in_p_IndexKeySpec13272);
+ p_IndexKeyExpr639=this.p_IndexKeyExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexKeyExpr639.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexKeyTypeDecl_in_p_IndexKeySpec13274);
+ p_IndexKeyTypeDecl640=this.p_IndexKeyTypeDecl();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexKeyTypeDecl640.getTree());
+ // XQueryParser.g:1497:45: ( p_IndexKeyCollation )?
+ var alt202=2;
+ var LA202_0 = this.input.LA(1);
+
+ if ( (LA202_0==COLLATION) ) {
+ alt202=1;
+ }
+ switch (alt202) {
+ case 1 :
+ // XQueryParser.g:1497:45: p_IndexKeyCollation
+ this.pushFollow(XQueryParser.FOLLOW_p_IndexKeyCollation_in_p_IndexKeySpec13276);
+ p_IndexKeyCollation641=this.p_IndexKeyCollation();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_IndexKeyCollation641.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexKeyExpr_return: (function() {
+ XQueryParser.p_IndexKeyExpr_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexKeyExpr_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1500:1: p_IndexKeyExpr : p_PathExpr ;
+ // $ANTLR start "p_IndexKeyExpr"
+ p_IndexKeyExpr: function() {
+ var retval = new XQueryParser.p_IndexKeyExpr_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var p_PathExpr642 = null;
+
+
+ try {
+ // XQueryParser.g:1501:9: ( p_PathExpr )
+ // XQueryParser.g:1501:11: p_PathExpr
+ root_0 = this.adaptor.nil();
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PathExpr_in_p_IndexKeyExpr13302);
+ p_PathExpr642=this.p_PathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PathExpr642.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexKeyTypeDecl_return: (function() {
+ XQueryParser.p_IndexKeyTypeDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexKeyTypeDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1504:1: p_IndexKeyTypeDecl : ka= AS p_AtomicType ;
+ // $ANTLR start "p_IndexKeyTypeDecl"
+ p_IndexKeyTypeDecl: function() {
+ var retval = new XQueryParser.p_IndexKeyTypeDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var ka = null;
+ var p_AtomicType643 = null;
+
+ var ka_tree=null;
+
+ try {
+ // XQueryParser.g:1505:9: (ka= AS p_AtomicType )
+ // XQueryParser.g:1505:11: ka= AS p_AtomicType
+ root_0 = this.adaptor.nil();
+
+ ka=this.match(this.input,AS,XQueryParser.FOLLOW_AS_in_p_IndexKeyTypeDecl13329); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ ka_tree = this.adaptor.create(ka);
+ this.adaptor.addChild(root_0, ka_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_AtomicType_in_p_IndexKeyTypeDecl13331);
+ p_AtomicType643=this.p_AtomicType();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_AtomicType643.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_IndexKeyCollation_return: (function() {
+ XQueryParser.p_IndexKeyCollation_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_IndexKeyCollation_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1508:1: p_IndexKeyCollation : kc= COLLATION p_StringLiteral ;
+ // $ANTLR start "p_IndexKeyCollation"
+ p_IndexKeyCollation: function() {
+ var retval = new XQueryParser.p_IndexKeyCollation_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var p_StringLiteral644 = null;
+
+ var kc_tree=null;
+
+ try {
+ // XQueryParser.g:1509:9: (kc= COLLATION p_StringLiteral )
+ // XQueryParser.g:1509:11: kc= COLLATION p_StringLiteral
+ root_0 = this.adaptor.nil();
+
+ kc=this.match(this.input,COLLATION,XQueryParser.FOLLOW_COLLATION_in_p_IndexKeyCollation13358); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_StringLiteral_in_p_IndexKeyCollation13360);
+ p_StringLiteral644=this.p_StringLiteral();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_StringLiteral644.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICDecl_return: (function() {
+ XQueryParser.p_ICDecl_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICDecl_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1512:1: p_ICDecl : k+= DECLARE k+= INTEGRITY k+= CONSTRAINT p_QName ( p_ICCollection | p_ICForeignKey ) SEMICOLON ;
+ // $ANTLR start "p_ICDecl"
+ p_ICDecl: function() {
+ var retval = new XQueryParser.p_ICDecl_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var SEMICOLON648 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName645 = null;
+ var p_ICCollection646 = null;
+ var p_ICForeignKey647 = null;
+
+ var SEMICOLON648_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1513:9: (k+= DECLARE k+= INTEGRITY k+= CONSTRAINT p_QName ( p_ICCollection | p_ICForeignKey ) SEMICOLON )
+ // XQueryParser.g:1513:11: k+= DECLARE k+= INTEGRITY k+= CONSTRAINT p_QName ( p_ICCollection | p_ICForeignKey ) SEMICOLON
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,DECLARE,XQueryParser.FOLLOW_DECLARE_in_p_ICDecl13387); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,INTEGRITY,XQueryParser.FOLLOW_INTEGRITY_in_p_ICDecl13391); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,CONSTRAINT,XQueryParser.FOLLOW_CONSTRAINT_in_p_ICDecl13395); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICDecl13398);
+ p_QName645=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName645.getTree());
+ // XQueryParser.g:1513:58: ( p_ICCollection | p_ICForeignKey )
+ var alt203=2;
+ var LA203_0 = this.input.LA(1);
+
+ if ( (LA203_0==ON) ) {
+ alt203=1;
+ }
+ else if ( (LA203_0==FOREIGN) ) {
+ alt203=2;
+ }
+ else {
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 203, 0, this.input);
+
+ throw nvae;
+ }
+ switch (alt203) {
+ case 1 :
+ // XQueryParser.g:1513:59: p_ICCollection
+ this.pushFollow(XQueryParser.FOLLOW_p_ICCollection_in_p_ICDecl13401);
+ p_ICCollection646=this.p_ICCollection();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICCollection646.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1513:76: p_ICForeignKey
+ this.pushFollow(XQueryParser.FOLLOW_p_ICForeignKey_in_p_ICDecl13405);
+ p_ICForeignKey647=this.p_ICForeignKey();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICForeignKey647.getTree());
+
+
+ break;
+
+ }
+
+ SEMICOLON648=this.match(this.input,SEMICOLON,XQueryParser.FOLLOW_SEMICOLON_in_p_ICDecl13408); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ SEMICOLON648_tree = this.adaptor.create(SEMICOLON648);
+ this.adaptor.addChild(root_0, SEMICOLON648_tree);
+ }
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICCollection_return: (function() {
+ XQueryParser.p_ICCollection_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICCollection_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1516:1: p_ICCollection : k+= ON k+= COLLECTION p_QName ( p_ICCollSequence | p_ICCollSequenceUnique | p_ICCollNode ) ;
+ // $ANTLR start "p_ICCollection"
+ p_ICCollection: function() {
+ var retval = new XQueryParser.p_ICCollection_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_QName649 = null;
+ var p_ICCollSequence650 = null;
+ var p_ICCollSequenceUnique651 = null;
+ var p_ICCollNode652 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1517:9: (k+= ON k+= COLLECTION p_QName ( p_ICCollSequence | p_ICCollSequenceUnique | p_ICCollNode ) )
+ // XQueryParser.g:1517:11: k+= ON k+= COLLECTION p_QName ( p_ICCollSequence | p_ICCollSequenceUnique | p_ICCollNode )
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,ON,XQueryParser.FOLLOW_ON_in_p_ICCollection13435); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,COLLECTION,XQueryParser.FOLLOW_COLLECTION_in_p_ICCollection13439); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICCollection13442);
+ p_QName649=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName649.getTree());
+ // XQueryParser.g:1517:40: ( p_ICCollSequence | p_ICCollSequenceUnique | p_ICCollNode )
+ var alt204=3;
+ switch ( this.input.LA(1) ) {
+ case DOLLAR:
+ alt204=1;
+ break;
+ case NODE:
+ alt204=2;
+ break;
+ case FOREACH:
+ alt204=3;
+ break;
+ default:
+ if (this.state.backtracking>0) {this.state.failed=true; return retval;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException("", 204, 0, this.input);
+
+ throw nvae;
+ }
+
+ switch (alt204) {
+ case 1 :
+ // XQueryParser.g:1517:41: p_ICCollSequence
+ this.pushFollow(XQueryParser.FOLLOW_p_ICCollSequence_in_p_ICCollection13445);
+ p_ICCollSequence650=this.p_ICCollSequence();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICCollSequence650.getTree());
+
+
+ break;
+ case 2 :
+ // XQueryParser.g:1517:60: p_ICCollSequenceUnique
+ this.pushFollow(XQueryParser.FOLLOW_p_ICCollSequenceUnique_in_p_ICCollection13449);
+ p_ICCollSequenceUnique651=this.p_ICCollSequenceUnique();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICCollSequenceUnique651.getTree());
+
+
+ break;
+ case 3 :
+ // XQueryParser.g:1517:85: p_ICCollNode
+ this.pushFollow(XQueryParser.FOLLOW_p_ICCollNode_in_p_ICCollection13453);
+ p_ICCollNode652=this.p_ICCollNode();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICCollNode652.getTree());
+
+
+ break;
+
+ }
+
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICCollSequence_return: (function() {
+ XQueryParser.p_ICCollSequence_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICCollSequence_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1520:1: p_ICCollSequence : DOLLAR p_QName kc= CHECK p_ExprSingle ;
+ // $ANTLR start "p_ICCollSequence"
+ p_ICCollSequence: function() {
+ var retval = new XQueryParser.p_ICCollSequence_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kc = null;
+ var DOLLAR653 = null;
+ var p_QName654 = null;
+ var p_ExprSingle655 = null;
+
+ var kc_tree=null;
+ var DOLLAR653_tree=null;
+
+ try {
+ // XQueryParser.g:1521:9: ( DOLLAR p_QName kc= CHECK p_ExprSingle )
+ // XQueryParser.g:1521:11: DOLLAR p_QName kc= CHECK p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ DOLLAR653=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ICCollSequence13479); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR653_tree = this.adaptor.create(DOLLAR653);
+ this.adaptor.addChild(root_0, DOLLAR653_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICCollSequence13481);
+ p_QName654=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName654.getTree());
+ kc=this.match(this.input,CHECK,XQueryParser.FOLLOW_CHECK_in_p_ICCollSequence13485); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kc_tree = this.adaptor.create(kc);
+ this.adaptor.addChild(root_0, kc_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ICCollSequence13487);
+ p_ExprSingle655=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle655.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICCollSequenceUnique_return: (function() {
+ XQueryParser.p_ICCollSequenceUnique_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICCollSequenceUnique_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1524:1: p_ICCollSequenceUnique : k+= NODE k+= DOLLAR p_QName k+= CHECK k+= UNIQUE k+= KEY p_PathExpr ;
+ // $ANTLR start "p_ICCollSequenceUnique"
+ p_ICCollSequenceUnique: function() {
+ var retval = new XQueryParser.p_ICCollSequenceUnique_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_QName656 = null;
+ var p_PathExpr657 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1525:9: (k+= NODE k+= DOLLAR p_QName k+= CHECK k+= UNIQUE k+= KEY p_PathExpr )
+ // XQueryParser.g:1525:11: k+= NODE k+= DOLLAR p_QName k+= CHECK k+= UNIQUE k+= KEY p_PathExpr
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_ICCollSequenceUnique13514); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ICCollSequenceUnique13518); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICCollSequenceUnique13520);
+ p_QName656=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName656.getTree());
+ k=this.match(this.input,CHECK,XQueryParser.FOLLOW_CHECK_in_p_ICCollSequenceUnique13524); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,UNIQUE,XQueryParser.FOLLOW_UNIQUE_in_p_ICCollSequenceUnique13528); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,KEY,XQueryParser.FOLLOW_KEY_in_p_ICCollSequenceUnique13532); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PathExpr_in_p_ICCollSequenceUnique13534);
+ p_PathExpr657=this.p_PathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PathExpr657.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICCollNode_return: (function() {
+ XQueryParser.p_ICCollNode_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICCollNode_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1528:1: p_ICCollNode : k+= FOREACH k+= NODE DOLLAR p_QName k+= CHECK p_ExprSingle ;
+ // $ANTLR start "p_ICCollNode"
+ p_ICCollNode: function() {
+ var retval = new XQueryParser.p_ICCollNode_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR658 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName659 = null;
+ var p_ExprSingle660 = null;
+
+ var DOLLAR658_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1529:9: (k+= FOREACH k+= NODE DOLLAR p_QName k+= CHECK p_ExprSingle )
+ // XQueryParser.g:1529:11: k+= FOREACH k+= NODE DOLLAR p_QName k+= CHECK p_ExprSingle
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,FOREACH,XQueryParser.FOLLOW_FOREACH_in_p_ICCollNode13562); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_ICCollNode13566); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR658=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ICCollNode13568); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR658_tree = this.adaptor.create(DOLLAR658);
+ this.adaptor.addChild(root_0, DOLLAR658_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICCollNode13570);
+ p_QName659=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName659.getTree());
+ k=this.match(this.input,CHECK,XQueryParser.FOLLOW_CHECK_in_p_ICCollNode13574); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ExprSingle_in_p_ICCollNode13576);
+ p_ExprSingle660=this.p_ExprSingle();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ExprSingle660.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICForeignKey_return: (function() {
+ XQueryParser.p_ICForeignKey_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICForeignKey_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1532:1: p_ICForeignKey : k+= FOREIGN k+= KEY p_ICForeignKeySource p_ICForeignKeyTarget ;
+ // $ANTLR start "p_ICForeignKey"
+ p_ICForeignKey: function() {
+ var retval = new XQueryParser.p_ICForeignKey_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var k = null;
+ var list_k=null;
+ var p_ICForeignKeySource661 = null;
+ var p_ICForeignKeyTarget662 = null;
+
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1533:9: (k+= FOREIGN k+= KEY p_ICForeignKeySource p_ICForeignKeyTarget )
+ // XQueryParser.g:1533:11: k+= FOREIGN k+= KEY p_ICForeignKeySource p_ICForeignKeyTarget
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,FOREIGN,XQueryParser.FOLLOW_FOREIGN_in_p_ICForeignKey13604); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ k=this.match(this.input,KEY,XQueryParser.FOLLOW_KEY_in_p_ICForeignKey13608); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_ICForeignKeySource_in_p_ICForeignKey13610);
+ p_ICForeignKeySource661=this.p_ICForeignKeySource();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICForeignKeySource661.getTree());
+ this.pushFollow(XQueryParser.FOLLOW_p_ICForeignKeyTarget_in_p_ICForeignKey13612);
+ p_ICForeignKeyTarget662=this.p_ICForeignKeyTarget();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICForeignKeyTarget662.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICForeignKeySource_return: (function() {
+ XQueryParser.p_ICForeignKeySource_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICForeignKeySource_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1536:1: p_ICForeignKeySource : kf= FROM p_ICForeignKeyValues ;
+ // $ANTLR start "p_ICForeignKeySource"
+ p_ICForeignKeySource: function() {
+ var retval = new XQueryParser.p_ICForeignKeySource_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kf = null;
+ var p_ICForeignKeyValues663 = null;
+
+ var kf_tree=null;
+
+ try {
+ // XQueryParser.g:1537:9: (kf= FROM p_ICForeignKeyValues )
+ // XQueryParser.g:1537:11: kf= FROM p_ICForeignKeyValues
+ root_0 = this.adaptor.nil();
+
+ kf=this.match(this.input,FROM,XQueryParser.FOLLOW_FROM_in_p_ICForeignKeySource13640); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kf_tree = this.adaptor.create(kf);
+ this.adaptor.addChild(root_0, kf_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ICForeignKeyValues_in_p_ICForeignKeySource13642);
+ p_ICForeignKeyValues663=this.p_ICForeignKeyValues();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICForeignKeyValues663.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICForeignKeyTarget_return: (function() {
+ XQueryParser.p_ICForeignKeyTarget_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICForeignKeyTarget_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1540:1: p_ICForeignKeyTarget : kt= TO p_ICForeignKeyValues ;
+ // $ANTLR start "p_ICForeignKeyTarget"
+ p_ICForeignKeyTarget: function() {
+ var retval = new XQueryParser.p_ICForeignKeyTarget_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var kt = null;
+ var p_ICForeignKeyValues664 = null;
+
+ var kt_tree=null;
+
+ try {
+ // XQueryParser.g:1541:9: (kt= TO p_ICForeignKeyValues )
+ // XQueryParser.g:1541:11: kt= TO p_ICForeignKeyValues
+ root_0 = this.adaptor.nil();
+
+ kt=this.match(this.input,TO,XQueryParser.FOLLOW_TO_in_p_ICForeignKeyTarget13669); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ kt_tree = this.adaptor.create(kt);
+ this.adaptor.addChild(root_0, kt_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_ICForeignKeyValues_in_p_ICForeignKeyTarget13671);
+ p_ICForeignKeyValues664=this.p_ICForeignKeyValues();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_ICForeignKeyValues664.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // inline static return class
+ p_ICForeignKeyValues_return: (function() {
+ XQueryParser.p_ICForeignKeyValues_return = function(){};
+ org.antlr.lang.extend(XQueryParser.p_ICForeignKeyValues_return,
+ org.antlr.runtime.ParserRuleReturnScope,
+ {
+ getTree: function() { return this.tree; }
+ });
+ return;
+ })(),
+
+ // XQueryParser.g:1544:1: p_ICForeignKeyValues : k+= COLLECTION p_QName k+= NODE DOLLAR p_QName k+= KEY p_PathExpr ;
+ // $ANTLR start "p_ICForeignKeyValues"
+ p_ICForeignKeyValues: function() {
+ var retval = new XQueryParser.p_ICForeignKeyValues_return();
+ retval.start = this.input.LT(1);
+
+ var root_0 = null;
+
+ var DOLLAR666 = null;
+ var k = null;
+ var list_k=null;
+ var p_QName665 = null;
+ var p_QName667 = null;
+ var p_PathExpr668 = null;
+
+ var DOLLAR666_tree=null;
+ var k_tree=null;
+
+ try {
+ // XQueryParser.g:1545:9: (k+= COLLECTION p_QName k+= NODE DOLLAR p_QName k+= KEY p_PathExpr )
+ // XQueryParser.g:1545:11: k+= COLLECTION p_QName k+= NODE DOLLAR p_QName k+= KEY p_PathExpr
+ root_0 = this.adaptor.nil();
+
+ k=this.match(this.input,COLLECTION,XQueryParser.FOLLOW_COLLECTION_in_p_ICForeignKeyValues13698); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICForeignKeyValues13700);
+ p_QName665=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName665.getTree());
+ k=this.match(this.input,NODE,XQueryParser.FOLLOW_NODE_in_p_ICForeignKeyValues13704); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ DOLLAR666=this.match(this.input,DOLLAR,XQueryParser.FOLLOW_DOLLAR_in_p_ICForeignKeyValues13706); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ DOLLAR666_tree = this.adaptor.create(DOLLAR666);
+ this.adaptor.addChild(root_0, DOLLAR666_tree);
+ }
+ this.pushFollow(XQueryParser.FOLLOW_p_QName_in_p_ICForeignKeyValues13708);
+ p_QName667=this.p_QName();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_QName667.getTree());
+ k=this.match(this.input,KEY,XQueryParser.FOLLOW_KEY_in_p_ICForeignKeyValues13712); if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) {
+ k_tree = this.adaptor.create(k);
+ this.adaptor.addChild(root_0, k_tree);
+ }
+ if (org.antlr.lang.isNull(list_k)) list_k = [];
+ list_k.push(k);
+
+ this.pushFollow(XQueryParser.FOLLOW_p_PathExpr_in_p_ICForeignKeyValues13714);
+ p_PathExpr668=this.p_PathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return retval;
+ if ( this.state.backtracking===0 ) this.adaptor.addChild(root_0, p_PathExpr668.getTree());
+
+
+
+ retval.stop = this.input.LT(-1);
+
+ if ( this.state.backtracking===0 ) {
+
+ retval.tree = this.adaptor.rulePostProcessing(root_0);
+ this.adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
+ }
+ }
+ catch (re) {
+ if (re instanceof org.antlr.runtime.RecognitionException) {
+ this.reportError(re);
+ this.recover(this.input,re);
+ retval.tree = this.adaptor.errorNode(this.input, retval.start, this.input.LT(-1), re);
+ } else {
+ throw re;
+ }
+ }
+ finally {
+ }
+ return retval;
+ },
+
+ // $ANTLR start "synpred1_XQueryParser"
+ synpred1_XQueryParser_fragment: function() {
+ // XQueryParser.g:657:11: ( SLASH p_RelativePathExpr )
+ // XQueryParser.g:657:12: SLASH p_RelativePathExpr
+ this.match(this.input,SLASH,XQueryParser.FOLLOW_SLASH_in_synpred1_XQueryParser5860); if (this.state.failed) return ;
+ this.pushFollow(XQueryParser.FOLLOW_p_RelativePathExpr_in_synpred1_XQueryParser5862);
+ this.p_RelativePathExpr();
+
+ this.state._fsp--;
+ if (this.state.failed) return ;
+
+
+ },
+ // $ANTLR end "synpred1_XQueryParser",
+
+ // $ANTLR start "synpred2_XQueryParser"
+ synpred2_XQueryParser_fragment: function() {
+ // XQueryParser.g:1011:26: ( p_OccurrenceIndicator )
+ // XQueryParser.g:1011:27: p_OccurrenceIndicator
+ this.pushFollow(XQueryParser.FOLLOW_p_OccurrenceIndicator_in_synpred2_XQueryParser8510);
+ this.p_OccurrenceIndicator();
+
+ this.state._fsp--;
+ if (this.state.failed) return ;
+
+
+ },
+ // $ANTLR end "synpred2_XQueryParser",
+
+ // $ANTLR start "synpred3_XQueryParser"
+ synpred3_XQueryParser_fragment: function() {
+ // XQueryParser.g:1471:30: ( p_OccurrenceIndicator )
+ // XQueryParser.g:1471:31: p_OccurrenceIndicator
+ this.pushFollow(XQueryParser.FOLLOW_p_OccurrenceIndicator_in_synpred3_XQueryParser12993);
+ this.p_OccurrenceIndicator();
+
+ this.state._fsp--;
+ if (this.state.failed) return ;
+
+
+ },
+ // $ANTLR end "synpred3_XQueryParser"
+
+ // Delegated rules
+
+
+
+ synpred3_XQueryParser: function() {
+ this.state.backtracking++;
+ var start = this.input.mark();
+ try {
+ this.synpred3_XQueryParser_fragment(); // can never throw exception
+ } catch (re) {
+ alert("impossible: "+re.toString());
+ }
+ var success = !this.state.failed;
+ this.input.rewind(start);
+ this.state.backtracking--;
+ this.state.failed=false;
+ return success;
+ },
+ synpred1_XQueryParser: function() {
+ this.state.backtracking++;
+ var start = this.input.mark();
+ try {
+ this.synpred1_XQueryParser_fragment(); // can never throw exception
+ } catch (re) {
+ alert("impossible: "+re.toString());
+ }
+ var success = !this.state.failed;
+ this.input.rewind(start);
+ this.state.backtracking--;
+ this.state.failed=false;
+ return success;
+ },
+ synpred2_XQueryParser: function() {
+ this.state.backtracking++;
+ var start = this.input.mark();
+ try {
+ this.synpred2_XQueryParser_fragment(); // can never throw exception
+ } catch (re) {
+ alert("impossible: "+re.toString());
+ }
+ var success = !this.state.failed;
+ this.input.rewind(start);
+ this.state.backtracking--;
+ this.state.failed=false;
+ return success;
+ }
+
+}, true); // important to pass true to overwrite default implementations
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA6_eotS:
+ "\u000d\uffff",
+ DFA6_eofS:
+ "\u0001\u0002\u0001\u000c\u0001\uffff\u0001\u000c\u0009\uffff",
+ DFA6_minS:
+ "\u0001\u0010\u0001\u0012\u0001\uffff\u0001\u0012\u0009\uffff",
+ DFA6_maxS:
+ "\u0001\u0137\u0001\u00e0\u0001\uffff\u0001\u00e0\u0009\uffff",
+ DFA6_acceptS:
+ "\u0002\uffff\u0001\u0002\u0001\uffff\u0003\u0002\u0003\u0001\u0003"+
+ "\u0002",
+ DFA6_specialS:
+ "\u0001\uffff\u0001\u0000\u000b\uffff}>",
+ DFA6_transitionS: [
+ "\u0012\u0002\u0001\u0001\u0019\u0002\u0001\u0003\u0062\u0002"+
+ "\u0001\uffff\u0014\u0002\u0001\uffff\u000d\u0002\u0001\uffff"+
+ "\u0001\u0002\u000a\uffff\u0004\u0002\u0005\uffff\u0004\u0002"+
+ "\u000c\uffff\u0001\u0002\u0002\uffff\u0002\u0002\u0002\uffff"+
+ "\u0001\u0002\u0006\uffff\u0006\u0002\u003b\uffff\u0002\u0002",
+ "\u0001\u000c\u0004\uffff\u0002\u0007\u0002\uffff\u0002\u000c"+
+ "\u0003\uffff\u0001\u0007\u0001\u0009\u0001\uffff\u0001\u0007"+
+ "\u0003\uffff\u0001\u000c\u0007\uffff\u0001\u000c\u0001\uffff"+
+ "\u0001\u000c\u0004\uffff\u0001\u000a\u0001\u000c\u0001\uffff"+
+ "\u0002\u000c\u0004\uffff\u0003\u000c\u0002\uffff\u0001\u000c"+
+ "\u0002\uffff\u0002\u000c\u0001\uffff\u0001\u0009\u0001\u000c"+
+ "\u0004\uffff\u0001\u0005\u0001\u000c\u0001\uffff\u0001\u000b"+
+ "\u0001\u0007\u0011\uffff\u0002\u000c\u0001\uffff\u0001\u000c"+
+ "\u0001\u000b\u0001\uffff\u0001\u000a\u0004\uffff\u0001\u0002"+
+ "\u0025\uffff\u0001\u0008\u0001\uffff\u0001\u000a\u0001\u000b"+
+ "\u0002\uffff\u0001\u000a\u0002\uffff\u0001\u0004\u0001\uffff"+
+ "\u0001\u000a\u0003\uffff\u0002\u000b\u0001\uffff\u0001\u000b"+
+ "\u0001\uffff\u0001\u000b\u0004\uffff\u0001\u000b\u0001\u0006"+
+ "\u0002\uffff\u0003\u000b\u0001\uffff\u0001\u000b\u0002\uffff"+
+ "\u0001\u000b\u0001\uffff\u0001\u000a\u0003\uffff\u0001\u000c"+
+ "\u0004\uffff\u0001\u000c\u0001\uffff\u0001\u000c\u0001\uffff"+
+ "\u0001\u000c\u0001\uffff\u0001\u000c\u0001\uffff\u000b\u000c"+
+ "\u0002\uffff\u0001\u000c\u0003\uffff\u0002\u000c",
+ "",
+ "\u0001\u000c\u0008\uffff\u0002\u000c\u000a\uffff\u0001\u000c"+
+ "\u0007\uffff\u0001\u000c\u0001\uffff\u0001\u000c\u0005\uffff"+
+ "\u0001\u000c\u0001\uffff\u0002\u000c\u0004\uffff\u0003\u000c"+
+ "\u0002\uffff\u0001\u000c\u0002\uffff\u0002\u000c\u0001\u0009"+
+ "\u0001\uffff\u0001\u000c\u0005\uffff\u0001\u000c\u000a\uffff"+
+ "\u0001\u0009\u0009\uffff\u0002\u000c\u0001\uffff\u0001\u000c"+
+ "\u0057\uffff\u0001\u000c\u0004\uffff\u0001\u000c\u0001\uffff"+
+ "\u0001\u000c\u0001\uffff\u0001\u000c\u0001\uffff\u0001\u000c"+
+ "\u0001\uffff\u000b\u000c\u0002\uffff\u0001\u000c\u0003\uffff"+
+ "\u0002\u000c",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA6_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA6_eotS),
+ DFA6_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA6_eofS),
+ DFA6_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA6_minS),
+ DFA6_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA6_maxS),
+ DFA6_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA6_acceptS),
+ DFA6_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA6_specialS),
+ DFA6_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA6_transitionS.length;
+ for (i=0; i=BASE_URI && LA6_1<=BOUNDARY_SPACE)||LA6_1==CONSTRUCTION||LA6_1==DEFAULT||LA6_1==ORDERING) ) {s = 7;}
+
+ else if ( (LA6_1==REVALIDATION) && ((true))) {s = 8;}
+
+ else if ( (LA6_1==COPY_NAMESPACES||LA6_1==NAMESPACE) ) {s = 9;}
+
+ else if ( (LA6_1==FUNCTION||LA6_1==VARIABLE||LA6_1==UPDATING||LA6_1==CONSTANT||LA6_1==SIMPLE||LA6_1==PRIVATE) ) {s = 10;}
+
+ else if ( (LA6_1==ORDERED||LA6_1==UNORDERED||LA6_1==VALUE||(LA6_1>=APPEND_ONLY && LA6_1<=AUTOMATICALLY)||LA6_1==COLLECTION||LA6_1==CONST||LA6_1==INDEX||(LA6_1>=MANUALLY && LA6_1<=NON)||LA6_1==QUEUE||LA6_1==UNIQUE) && ((true))) {s = 11;}
+
+ else if ( (LA6_1==EOF||LA6_1==AND||(LA6_1>=CAST && LA6_1<=CASTABLE)||LA6_1==DIV||LA6_1==EQ||LA6_1==EXCEPT||LA6_1==GE||(LA6_1>=GT && LA6_1<=IDIV)||(LA6_1>=INSTANCE && LA6_1<=IS)||LA6_1==LE||(LA6_1>=LT && LA6_1<=MOD)||LA6_1==NE||LA6_1==OR||(LA6_1>=TO && LA6_1<=TREAT)||LA6_1==UNION||LA6_1==LPAREN||LA6_1==LSQUARE||LA6_1==EQUAL||LA6_1==NOTEQUAL||LA6_1==COMMA||(LA6_1>=STAR && LA6_1<=SLASH_SLASH)||LA6_1==COLON||(LA6_1>=SEMICOLON && LA6_1<=VBAR)) ) {s = 12;}
+
+
+ input.seek(index6_1);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 6, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA7_eotS:
+ "\u000c\uffff",
+ DFA7_eofS:
+ "\u0001\u0001\u0001\uffff\u0001\u0001\u0009\uffff",
+ DFA7_minS:
+ "\u0001\u0010\u0001\uffff\u0001\u0012\u0004\uffff\u0001\u0036\u0004"+
+ "\uffff",
+ DFA7_maxS:
+ "\u0001\u0137\u0001\uffff\u0001\u00e0\u0004\uffff\u0001\u00a2\u0004"+
+ "\uffff",
+ DFA7_acceptS:
+ "\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0002\u0001\u0003\u0001"+
+ "\u0004\u0001\u0007\u0001\uffff\u0001\u0001\u0001\u0003\u0001\u0005\u0001"+
+ "\u0006",
+ DFA7_specialS:
+ "\u0002\uffff\u0001\u0000\u0009\uffff}>",
+ DFA7_transitionS: [
+ "\u0012\u0001\u0001\u0002\u007c\u0001\u0001\uffff\u0014\u0001"+
+ "\u0001\uffff\u000d\u0001\u0001\uffff\u0001\u0001\u000a\uffff"+
+ "\u0004\u0001\u0005\uffff\u0004\u0001\u000c\uffff\u0001\u0001"+
+ "\u0002\uffff\u0002\u0001\u0002\uffff\u0001\u0001\u0006\uffff"+
+ "\u0006\u0001\u003b\uffff\u0002\u0001",
+ "",
+ "\u0001\u0001\u0008\uffff\u0002\u0001\u000a\uffff\u0001\u0001"+
+ "\u0007\uffff\u0001\u0001\u0001\uffff\u0001\u0001\u0004\uffff"+
+ "\u0001\u0009\u0001\u0001\u0001\uffff\u0002\u0001\u0004\uffff"+
+ "\u0003\u0001\u0002\uffff\u0001\u0001\u0002\uffff\u0002\u0001"+
+ "\u0002\uffff\u0001\u0001\u0004\uffff\u0001\u0005\u0001\u0001"+
+ "\u0001\uffff\u0001\u000a\u0012\uffff\u0002\u0001\u0001\uffff"+
+ "\u0001\u0001\u0001\u000a\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0003\u0027\uffff\u0001\u0009\u0001\u000b\u0002\uffff"+
+ "\u0001\u0008\u0002\uffff\u0001\u0004\u0001\uffff\u0001\u0009"+
+ "\u0003\uffff\u0001\u000a\u0001\u000b\u0001\uffff\u0001\u000a"+
+ "\u0001\uffff\u0001\u000a\u0004\uffff\u0001\u000b\u0001\u0006"+
+ "\u0002\uffff\u0001\u000b\u0001\u000a\u0001\u000b\u0001\uffff"+
+ "\u0001\u000a\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u0007"+
+ "\u0003\uffff\u0001\u0001\u0004\uffff\u0001\u0001\u0001\uffff"+
+ "\u0001\u0001\u0001\uffff\u0001\u0001\u0001\uffff\u0001\u0001"+
+ "\u0001\uffff\u000b\u0001\u0002\uffff\u0001\u0001\u0003\uffff"+
+ "\u0002\u0001",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u0009\u0035\uffff\u0001\u0008\u002c\uffff\u0001\u0009"+
+ "\u0003\uffff\u0001\u0008\u0004\uffff\u0001\u0009",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA7_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA7_eotS),
+ DFA7_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA7_eofS),
+ DFA7_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA7_minS),
+ DFA7_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA7_maxS),
+ DFA7_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA7_acceptS),
+ DFA7_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA7_specialS),
+ DFA7_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA7_transitionS.length;
+ for (i=0; i p_CollectionDecl | {...}? => p_IndexDecl | {...}? => p_ICDecl )*";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA7_2 = input.LA(1);
+
+
+ var index7_2 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA7_2==CONTEXT) ) {s = 3;}
+
+ else if ( (LA7_2==SEQUENTIAL) && ((true))) {s = 4;}
+
+ else if ( (LA7_2==OPTION) ) {s = 5;}
+
+ else if ( (LA7_2==INTEGRITY) && ((true))) {s = 6;}
+
+ else if ( (LA7_2==EOF||LA7_2==AND||(LA7_2>=CAST && LA7_2<=CASTABLE)||LA7_2==DIV||LA7_2==EQ||LA7_2==EXCEPT||LA7_2==GE||(LA7_2>=GT && LA7_2<=IDIV)||(LA7_2>=INSTANCE && LA7_2<=IS)||LA7_2==LE||(LA7_2>=LT && LA7_2<=MOD)||LA7_2==NE||LA7_2==OR||(LA7_2>=TO && LA7_2<=TREAT)||LA7_2==UNION||LA7_2==LPAREN||LA7_2==LSQUARE||LA7_2==EQUAL||LA7_2==NOTEQUAL||LA7_2==COMMA||(LA7_2>=STAR && LA7_2<=SLASH_SLASH)||LA7_2==COLON||(LA7_2>=SEMICOLON && LA7_2<=VBAR)) ) {s = 1;}
+
+ else if ( (LA7_2==PRIVATE) ) {s = 7;}
+
+ else if ( (LA7_2==VARIABLE||LA7_2==CONSTANT) ) {s = 8;}
+
+ else if ( (LA7_2==FUNCTION||LA7_2==UPDATING||LA7_2==SIMPLE) ) {s = 9;}
+
+ else if ( (LA7_2==ORDERED||LA7_2==UNORDERED||LA7_2==APPEND_ONLY||LA7_2==COLLECTION||LA7_2==CONST||LA7_2==MUTABLE||LA7_2==QUEUE) && ((true))) {s = 10;}
+
+ else if ( (LA7_2==VALUE||LA7_2==AUTOMATICALLY||LA7_2==INDEX||LA7_2==MANUALLY||LA7_2==NON||LA7_2==UNIQUE) && ((true))) {s = 11;}
+
+
+ input.seek(index7_2);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 7, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA8_eotS:
+ "\u000b\uffff",
+ DFA8_eofS:
+ "\u000b\uffff",
+ DFA8_minS:
+ "\u0001\u0022\u0001\u0017\u0001\uffff\u0001\u001e\u0007\uffff",
+ DFA8_maxS:
+ "\u0001\u0022\u0001\u0097\u0001\uffff\u0001\u0052\u0007\uffff",
+ DFA8_acceptS:
+ "\u0002\uffff\u0001\u0001\u0001\uffff\u0001\u0003\u0001\u0004\u0001"+
+ "\u0005\u0001\u0007\u0001\u0008\u0001\u0002\u0001\u0006",
+ DFA8_specialS:
+ "\u0001\uffff\u0001\u0000\u0009\uffff}>",
+ DFA8_transitionS: [
+ "\u0001\u0001",
+ "\u0001\u0004\u0001\u0002\u0007\uffff\u0001\u0005\u0001\u0008"+
+ "\u0001\uffff\u0001\u0003\u0030\uffff\u0001\u0006\u0042\uffff"+
+ "\u0001\u0007",
+ "",
+ "\u0001\u0009\u0033\uffff\u0001\u000a",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA8_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA8_eotS),
+ DFA8_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA8_eofS),
+ DFA8_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA8_minS),
+ DFA8_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA8_maxS),
+ DFA8_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA8_acceptS),
+ DFA8_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA8_specialS),
+ DFA8_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA8_transitionS.length;
+ for (i=0; i pm_RevalidationDecl | pm_CopyNamespacesDecl );";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA8_1 = input.LA(1);
+
+
+ var index8_1 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA8_1==BOUNDARY_SPACE) ) {s = 2;}
+
+ else if ( (LA8_1==DEFAULT) ) {s = 3;}
+
+ else if ( (LA8_1==BASE_URI) ) {s = 4;}
+
+ else if ( (LA8_1==CONSTRUCTION) ) {s = 5;}
+
+ else if ( (LA8_1==ORDERING) ) {s = 6;}
+
+ else if ( (LA8_1==REVALIDATION) && ((true))) {s = 7;}
+
+ else if ( (LA8_1==COPY_NAMESPACES) ) {s = 8;}
+
+
+ input.seek(index8_1);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 8, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA49_eotS:
+ "\u0022\uffff",
+ DFA49_eofS:
+ "\u0001\uffff\u0001\u0013\u0001\uffff\u0010\u0013\u000f\uffff",
+ DFA49_minS:
+ "\u0001\u0010\u0001\u0012\u0001\uffff\u0010\u0012\u000f\uffff",
+ DFA49_maxS:
+ "\u0001\u0137\u0001\u0136\u0001\uffff\u0010\u0136\u000f\uffff",
+ DFA49_acceptS:
+ "\u0002\uffff\u0001\u0001\u0010\uffff\u0001\u0010\u0001\u0002\u0001"+
+ "\u0003\u0001\u0004\u0001\u0005\u0001\u0006\u0001\u0007\u0001\u0008\u0001"+
+ "\u0009\u0001\u000a\u0001\u000b\u0001\u000c\u0001\u000d\u0001\u000e\u0001"+
+ "\u000f",
+ DFA49_specialS:
+ "\u0008\uffff\u0001\u0000\u0001\u0003\u0001\u000a\u0001\u0001\u0001"+
+ "\u0007\u0001\u0009\u0001\u0002\u0001\u0005\u0001\u0004\u0001\u0006\u0001"+
+ "\u0008\u000f\uffff}>",
+ DFA49_transitionS: [
+ "\u0020\u0013\u0001\u0004\u0004\u0013\u0001\u0001\u0005\u0013"+
+ "\u0001\u0006\u0024\u0013\u0001\u0003\u0007\u0013\u0001\u0005"+
+ "\u001d\u0013\u0001\u0007\u0006\u0013\u0001\u000e\u0001\u000b"+
+ "\u0001\u0013\u0001\u000a\u0004\u0013\u0001\u000c\u0001\u000d"+
+ "\u0005\u0013\u0001\u000f\u0001\u0013\u0001\u0011\u0001\uffff"+
+ "\u0001\u0013\u0001\u0010\u0001\u0013\u0001\u0012\u0001\u0009"+
+ "\u0001\u0008\u000e\u0013\u0001\uffff\u000d\u0013\u0001\uffff"+
+ "\u0001\u0013\u000a\uffff\u0004\u0013\u0005\uffff\u0004\u0013"+
+ "\u000c\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0002\uffff"+
+ "\u0001\u0013\u0006\uffff\u0006\u0013\u003b\uffff\u0001\u0002"+
+ "\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0005\uffff\u0001\u0002\u0001\u0013"+
+ "\u0001\uffff\u0001\u0002\u0003\uffff\u0002\u0013\u0004\uffff"+
+ "\u0001\u0013\u0001\uffff\u0001\u0013\u0007\uffff\u0001\u0013"+
+ "\u0025\uffff\u0002\u0013\u0001\u0002\u0001\uffff\u0004\u0013"+
+ "\u0001\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u000b\u0013\u0002\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0055\uffff\u0001\u0013",
+ "",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\u0014"+
+ "\u0001\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\u0014"+
+ "\u0001\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0001\u0015\u0001\u0013"+
+ "\u0002\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0001\u0016\u0001\u0013"+
+ "\u0002\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0017\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\u0018"+
+ "\u0001\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0018\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0002\uffff"+
+ "\u0001\u0019\u0002\uffff\u0002\u0013\u0007\uffff\u0002\u0013"+
+ "\u0005\uffff\u0001\u0013\u0004\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0013\u0004\uffff\u0001\u0013\u0003\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0006\uffff\u0001\u0013\u0006\uffff"+
+ "\u0001\u0013\u0005\uffff\u0002\u0013\u0004\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0001\u0019\u0006\uffff\u0001\u0013"+
+ "\u0025\uffff\u0002\u0013\u0002\uffff\u0004\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff\u000b\u0013"+
+ "\u0002\uffff\u0001\u0013\u0003\uffff\u0002\u0013\u0055\uffff"+
+ "\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0002\uffff"+
+ "\u0001\u001a\u0002\uffff\u0002\u0013\u0007\uffff\u0002\u0013"+
+ "\u0005\uffff\u0001\u0013\u0004\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0013\u0004\uffff\u0001\u0013\u0003\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0006\uffff\u0001\u0013\u0006\uffff"+
+ "\u0001\u0013\u0005\uffff\u0002\u0013\u0004\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0001\u001a\u0006\uffff\u0001\u0013"+
+ "\u0025\uffff\u0002\u0013\u0002\uffff\u0004\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff\u000b\u0013"+
+ "\u0002\uffff\u0001\u0013\u0003\uffff\u0002\u0013\u0055\uffff"+
+ "\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0002\uffff"+
+ "\u0001\u001b\u0002\uffff\u0002\u0013\u0007\uffff\u0002\u0013"+
+ "\u0005\uffff\u0001\u0013\u0004\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0013\u0004\uffff\u0001\u0013\u0003\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0006\uffff\u0001\u0013\u0006\uffff"+
+ "\u0001\u0013\u0005\uffff\u0002\u0013\u0004\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0007\uffff\u0001\u0013\u0025\uffff"+
+ "\u0002\u0013\u0002\uffff\u0004\u0013\u0001\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff"+
+ "\u0001\u0013\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0002\uffff"+
+ "\u0001\u001c\u0002\uffff\u0002\u0013\u0007\uffff\u0002\u0013"+
+ "\u0005\uffff\u0001\u0013\u0004\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u0013\u0004\uffff\u0001\u0013\u0003\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0006\uffff\u0001\u0013\u0006\uffff"+
+ "\u0001\u0013\u0005\uffff\u0002\u0013\u0004\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0006\uffff\u0001\u001c\u0001\u0013"+
+ "\u0025\uffff\u0002\u0013\u0002\uffff\u0004\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff\u000b\u0013"+
+ "\u0002\uffff\u0001\u0013\u0003\uffff\u0002\u0013\u0055\uffff"+
+ "\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\u001d"+
+ "\u0001\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\uffff"+
+ "\u0001\u001e\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0002\u0013\u0001\u001f"+
+ "\u0001\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0003\uffff\u0001\u0020\u0021\uffff"+
+ "\u0002\u0013\u0002\uffff\u0004\u0013\u0001\uffff\u0001\u0013"+
+ "\u0001\uffff\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff"+
+ "\u0001\u0013\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "\u0003\u0013\u0005\uffff\u0003\u0013\u0001\uffff\u0001\u0013"+
+ "\u0004\uffff\u0001\u0013\u0002\uffff\u0002\u0013\u0003\uffff"+
+ "\u0002\u0013\u0002\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0003\uffff\u0001\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0002\u0013\u0004\uffff\u0003\u0013\u0002\uffff\u0001\u0013"+
+ "\u0002\uffff\u0002\u0013\u0002\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0007\uffff\u0002\u0013\u0005\uffff\u0001\u0013"+
+ "\u0004\uffff\u0002\u0013\u0001\uffff\u0001\u0013\u0004\uffff"+
+ "\u0001\u0013\u0003\uffff\u0001\u0013\u0003\uffff\u0002\u0013"+
+ "\u0006\uffff\u0001\u0013\u0006\uffff\u0001\u0013\u0005\uffff"+
+ "\u0002\u0013\u0004\uffff\u0001\u0013\u0001\uffff\u0001\u0013"+
+ "\u0007\uffff\u0001\u0013\u0025\uffff\u0001\u0021\u0001\u0013"+
+ "\u0002\uffff\u0004\u0013\u0001\uffff\u0001\u0013\u0001\uffff"+
+ "\u0001\u0013\u0001\uffff\u000b\u0013\u0002\uffff\u0001\u0013"+
+ "\u0003\uffff\u0002\u0013\u0055\uffff\u0001\u0013",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA49_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA49_eotS),
+ DFA49_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA49_eofS),
+ DFA49_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA49_minS),
+ DFA49_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA49_maxS),
+ DFA49_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA49_acceptS),
+ DFA49_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA49_specialS),
+ DFA49_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA49_transitionS.length;
+ for (i=0; i p_EvalExpr | {...}? => p_InsertExpr | {...}? => p_DeleteExpr | {...}? => p_RenameExpr | {...}? => p_ReplaceExpr | {...}? => p_TransformExpr | {...}? => p_BlockExpr | {...}? => p_AssignmentExpr | {...}? => p_ExitExpr | {...}? => p_WhileExpr | p_OrExpr );";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA49_8 = input.LA(1);
+
+
+ var index49_8 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_8==DOLLAR) && ((true))) {s = 24;}
+
+ else if ( (LA49_8==EOF||(LA49_8>=AND && LA49_8<=ASCENDING)||(LA49_8>=CASE && LA49_8<=CASTABLE)||LA49_8==COLLATION||LA49_8==DEFAULT||(LA49_8>=DESCENDING && LA49_8<=DIV)||(LA49_8>=ELSE && LA49_8<=EMPTY)||LA49_8==EQ||LA49_8==EXCEPT||LA49_8==FOR||LA49_8==GE||(LA49_8>=GT && LA49_8<=IDIV)||(LA49_8>=INSTANCE && LA49_8<=IS)||LA49_8==LE||(LA49_8>=LT && LA49_8<=MOD)||LA49_8==NE||(LA49_8>=OR && LA49_8<=ORDER)||(LA49_8>=RETURN && LA49_8<=SATISFIES)||LA49_8==STABLE||(LA49_8>=TO && LA49_8<=TREAT)||LA49_8==UNION||LA49_8==WHERE||LA49_8==COUNT||(LA49_8>=END && LA49_8<=GROUP)||LA49_8==ONLY||LA49_8==START||(LA49_8>=AFTER && LA49_8<=BEFORE)||LA49_8==INTO||LA49_8==MODIFY||LA49_8==WITH||(LA49_8>=LPAREN && LA49_8<=RPAREN)||(LA49_8>=RBRACKET && LA49_8<=EQUAL)||LA49_8==NOTEQUAL||LA49_8==COMMA||(LA49_8>=STAR && LA49_8<=SLASH_SLASH)||LA49_8==COLON||(LA49_8>=SEMICOLON && LA49_8<=VBAR)||LA49_8==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_8);
+ if ( s>=0 ) return s;
+ break;
+ case 1 :
+ var LA49_11 = input.LA(1);
+
+
+ var index49_11 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_11==NODE||LA49_11==NODES) && ((true))) {s = 26;}
+
+ else if ( (LA49_11==EOF||(LA49_11>=AND && LA49_11<=ASCENDING)||(LA49_11>=CASE && LA49_11<=CASTABLE)||LA49_11==COLLATION||LA49_11==DEFAULT||(LA49_11>=DESCENDING && LA49_11<=DIV)||(LA49_11>=ELSE && LA49_11<=EMPTY)||LA49_11==EQ||LA49_11==EXCEPT||LA49_11==FOR||LA49_11==GE||(LA49_11>=GT && LA49_11<=IDIV)||(LA49_11>=INSTANCE && LA49_11<=IS)||LA49_11==LE||(LA49_11>=LT && LA49_11<=MOD)||LA49_11==NE||(LA49_11>=OR && LA49_11<=ORDER)||(LA49_11>=RETURN && LA49_11<=SATISFIES)||LA49_11==STABLE||(LA49_11>=TO && LA49_11<=TREAT)||LA49_11==UNION||LA49_11==WHERE||LA49_11==COUNT||(LA49_11>=END && LA49_11<=GROUP)||LA49_11==ONLY||LA49_11==START||(LA49_11>=AFTER && LA49_11<=BEFORE)||LA49_11==INTO||LA49_11==MODIFY||LA49_11==WITH||(LA49_11>=LPAREN && LA49_11<=RPAREN)||(LA49_11>=RBRACKET && LA49_11<=EQUAL)||LA49_11==NOTEQUAL||LA49_11==COMMA||(LA49_11>=STAR && LA49_11<=SLASH_SLASH)||LA49_11==COLON||(LA49_11>=SEMICOLON && LA49_11<=VBAR)||LA49_11==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_11);
+ if ( s>=0 ) return s;
+ break;
+ case 2 :
+ var LA49_14 = input.LA(1);
+
+
+ var index49_14 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_14==DOLLAR) && ((true))) {s = 29;}
+
+ else if ( (LA49_14==EOF||(LA49_14>=AND && LA49_14<=ASCENDING)||(LA49_14>=CASE && LA49_14<=CASTABLE)||LA49_14==COLLATION||LA49_14==DEFAULT||(LA49_14>=DESCENDING && LA49_14<=DIV)||(LA49_14>=ELSE && LA49_14<=EMPTY)||LA49_14==EQ||LA49_14==EXCEPT||LA49_14==FOR||LA49_14==GE||(LA49_14>=GT && LA49_14<=IDIV)||(LA49_14>=INSTANCE && LA49_14<=IS)||LA49_14==LE||(LA49_14>=LT && LA49_14<=MOD)||LA49_14==NE||(LA49_14>=OR && LA49_14<=ORDER)||(LA49_14>=RETURN && LA49_14<=SATISFIES)||LA49_14==STABLE||(LA49_14>=TO && LA49_14<=TREAT)||LA49_14==UNION||LA49_14==WHERE||LA49_14==COUNT||(LA49_14>=END && LA49_14<=GROUP)||LA49_14==ONLY||LA49_14==START||(LA49_14>=AFTER && LA49_14<=BEFORE)||LA49_14==INTO||LA49_14==MODIFY||LA49_14==WITH||(LA49_14>=LPAREN && LA49_14<=RPAREN)||(LA49_14>=RBRACKET && LA49_14<=EQUAL)||LA49_14==NOTEQUAL||LA49_14==COMMA||(LA49_14>=STAR && LA49_14<=SLASH_SLASH)||LA49_14==COLON||(LA49_14>=SEMICOLON && LA49_14<=VBAR)||LA49_14==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_14);
+ if ( s>=0 ) return s;
+ break;
+ case 3 :
+ var LA49_9 = input.LA(1);
+
+
+ var index49_9 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_9==LBRACKET) && ((true))) {s = 24;}
+
+ else if ( (LA49_9==EOF||(LA49_9>=AND && LA49_9<=ASCENDING)||(LA49_9>=CASE && LA49_9<=CASTABLE)||LA49_9==COLLATION||LA49_9==DEFAULT||(LA49_9>=DESCENDING && LA49_9<=DIV)||(LA49_9>=ELSE && LA49_9<=EMPTY)||LA49_9==EQ||LA49_9==EXCEPT||LA49_9==FOR||LA49_9==GE||(LA49_9>=GT && LA49_9<=IDIV)||(LA49_9>=INSTANCE && LA49_9<=IS)||LA49_9==LE||(LA49_9>=LT && LA49_9<=MOD)||LA49_9==NE||(LA49_9>=OR && LA49_9<=ORDER)||(LA49_9>=RETURN && LA49_9<=SATISFIES)||LA49_9==STABLE||(LA49_9>=TO && LA49_9<=TREAT)||LA49_9==UNION||LA49_9==WHERE||LA49_9==COUNT||(LA49_9>=END && LA49_9<=GROUP)||LA49_9==ONLY||LA49_9==START||(LA49_9>=AFTER && LA49_9<=BEFORE)||LA49_9==INTO||LA49_9==MODIFY||LA49_9==WITH||(LA49_9>=LPAREN && LA49_9<=RPAREN)||(LA49_9>=RBRACKET && LA49_9<=EQUAL)||LA49_9==NOTEQUAL||LA49_9==COMMA||(LA49_9>=STAR && LA49_9<=SLASH_SLASH)||LA49_9==COLON||(LA49_9>=SEMICOLON && LA49_9<=VBAR)||LA49_9==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_9);
+ if ( s>=0 ) return s;
+ break;
+ case 4 :
+ var LA49_16 = input.LA(1);
+
+
+ var index49_16 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_16==DOLLAR) && ((true))) {s = 31;}
+
+ else if ( (LA49_16==EOF||(LA49_16>=AND && LA49_16<=ASCENDING)||(LA49_16>=CASE && LA49_16<=CASTABLE)||LA49_16==COLLATION||LA49_16==DEFAULT||(LA49_16>=DESCENDING && LA49_16<=DIV)||(LA49_16>=ELSE && LA49_16<=EMPTY)||LA49_16==EQ||LA49_16==EXCEPT||LA49_16==FOR||LA49_16==GE||(LA49_16>=GT && LA49_16<=IDIV)||(LA49_16>=INSTANCE && LA49_16<=IS)||LA49_16==LE||(LA49_16>=LT && LA49_16<=MOD)||LA49_16==NE||(LA49_16>=OR && LA49_16<=ORDER)||(LA49_16>=RETURN && LA49_16<=SATISFIES)||LA49_16==STABLE||(LA49_16>=TO && LA49_16<=TREAT)||LA49_16==UNION||LA49_16==WHERE||LA49_16==COUNT||(LA49_16>=END && LA49_16<=GROUP)||LA49_16==ONLY||LA49_16==START||(LA49_16>=AFTER && LA49_16<=BEFORE)||LA49_16==INTO||LA49_16==MODIFY||LA49_16==WITH||(LA49_16>=LPAREN && LA49_16<=RPAREN)||(LA49_16>=RBRACKET && LA49_16<=EQUAL)||LA49_16==NOTEQUAL||LA49_16==COMMA||(LA49_16>=STAR && LA49_16<=SLASH_SLASH)||LA49_16==COLON||(LA49_16>=SEMICOLON && LA49_16<=VBAR)||LA49_16==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_16);
+ if ( s>=0 ) return s;
+ break;
+ case 5 :
+ var LA49_15 = input.LA(1);
+
+
+ var index49_15 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_15==LBRACKET) && ((true))) {s = 30;}
+
+ else if ( (LA49_15==EOF||(LA49_15>=AND && LA49_15<=ASCENDING)||(LA49_15>=CASE && LA49_15<=CASTABLE)||LA49_15==COLLATION||LA49_15==DEFAULT||(LA49_15>=DESCENDING && LA49_15<=DIV)||(LA49_15>=ELSE && LA49_15<=EMPTY)||LA49_15==EQ||LA49_15==EXCEPT||LA49_15==FOR||LA49_15==GE||(LA49_15>=GT && LA49_15<=IDIV)||(LA49_15>=INSTANCE && LA49_15<=IS)||LA49_15==LE||(LA49_15>=LT && LA49_15<=MOD)||LA49_15==NE||(LA49_15>=OR && LA49_15<=ORDER)||(LA49_15>=RETURN && LA49_15<=SATISFIES)||LA49_15==STABLE||(LA49_15>=TO && LA49_15<=TREAT)||LA49_15==UNION||LA49_15==WHERE||LA49_15==COUNT||(LA49_15>=END && LA49_15<=GROUP)||LA49_15==ONLY||LA49_15==START||(LA49_15>=AFTER && LA49_15<=BEFORE)||LA49_15==INTO||LA49_15==MODIFY||LA49_15==WITH||(LA49_15>=LPAREN && LA49_15<=RPAREN)||(LA49_15>=RBRACKET && LA49_15<=EQUAL)||LA49_15==NOTEQUAL||LA49_15==COMMA||(LA49_15>=STAR && LA49_15<=SLASH_SLASH)||LA49_15==COLON||(LA49_15>=SEMICOLON && LA49_15<=VBAR)||LA49_15==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_15);
+ if ( s>=0 ) return s;
+ break;
+ case 6 :
+ var LA49_17 = input.LA(1);
+
+
+ var index49_17 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_17==RETURNING) && ((true))) {s = 32;}
+
+ else if ( (LA49_17==EOF||(LA49_17>=AND && LA49_17<=ASCENDING)||(LA49_17>=CASE && LA49_17<=CASTABLE)||LA49_17==COLLATION||LA49_17==DEFAULT||(LA49_17>=DESCENDING && LA49_17<=DIV)||(LA49_17>=ELSE && LA49_17<=EMPTY)||LA49_17==EQ||LA49_17==EXCEPT||LA49_17==FOR||LA49_17==GE||(LA49_17>=GT && LA49_17<=IDIV)||(LA49_17>=INSTANCE && LA49_17<=IS)||LA49_17==LE||(LA49_17>=LT && LA49_17<=MOD)||LA49_17==NE||(LA49_17>=OR && LA49_17<=ORDER)||(LA49_17>=RETURN && LA49_17<=SATISFIES)||LA49_17==STABLE||(LA49_17>=TO && LA49_17<=TREAT)||LA49_17==UNION||LA49_17==WHERE||LA49_17==COUNT||(LA49_17>=END && LA49_17<=GROUP)||LA49_17==ONLY||LA49_17==START||(LA49_17>=AFTER && LA49_17<=BEFORE)||LA49_17==INTO||LA49_17==MODIFY||LA49_17==WITH||(LA49_17>=LPAREN && LA49_17<=RPAREN)||(LA49_17>=RBRACKET && LA49_17<=EQUAL)||LA49_17==NOTEQUAL||LA49_17==COMMA||(LA49_17>=STAR && LA49_17<=SLASH_SLASH)||LA49_17==COLON||(LA49_17>=SEMICOLON && LA49_17<=VBAR)||LA49_17==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_17);
+ if ( s>=0 ) return s;
+ break;
+ case 7 :
+ var LA49_12 = input.LA(1);
+
+
+ var index49_12 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_12==NODE) && ((true))) {s = 27;}
+
+ else if ( (LA49_12==EOF||(LA49_12>=AND && LA49_12<=ASCENDING)||(LA49_12>=CASE && LA49_12<=CASTABLE)||LA49_12==COLLATION||LA49_12==DEFAULT||(LA49_12>=DESCENDING && LA49_12<=DIV)||(LA49_12>=ELSE && LA49_12<=EMPTY)||LA49_12==EQ||LA49_12==EXCEPT||LA49_12==FOR||LA49_12==GE||(LA49_12>=GT && LA49_12<=IDIV)||(LA49_12>=INSTANCE && LA49_12<=IS)||LA49_12==LE||(LA49_12>=LT && LA49_12<=MOD)||LA49_12==NE||(LA49_12>=OR && LA49_12<=ORDER)||(LA49_12>=RETURN && LA49_12<=SATISFIES)||LA49_12==STABLE||(LA49_12>=TO && LA49_12<=TREAT)||LA49_12==UNION||LA49_12==WHERE||LA49_12==COUNT||(LA49_12>=END && LA49_12<=GROUP)||LA49_12==ONLY||LA49_12==START||(LA49_12>=AFTER && LA49_12<=BEFORE)||LA49_12==INTO||LA49_12==MODIFY||LA49_12==WITH||(LA49_12>=LPAREN && LA49_12<=RPAREN)||(LA49_12>=RBRACKET && LA49_12<=EQUAL)||LA49_12==NOTEQUAL||LA49_12==COMMA||(LA49_12>=STAR && LA49_12<=SLASH_SLASH)||LA49_12==COLON||(LA49_12>=SEMICOLON && LA49_12<=VBAR)||LA49_12==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_12);
+ if ( s>=0 ) return s;
+ break;
+ case 8 :
+ var LA49_18 = input.LA(1);
+
+
+ var index49_18 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_18==LPAREN) && ((true))) {s = 33;}
+
+ else if ( (LA49_18==EOF||(LA49_18>=AND && LA49_18<=ASCENDING)||(LA49_18>=CASE && LA49_18<=CASTABLE)||LA49_18==COLLATION||LA49_18==DEFAULT||(LA49_18>=DESCENDING && LA49_18<=DIV)||(LA49_18>=ELSE && LA49_18<=EMPTY)||LA49_18==EQ||LA49_18==EXCEPT||LA49_18==FOR||LA49_18==GE||(LA49_18>=GT && LA49_18<=IDIV)||(LA49_18>=INSTANCE && LA49_18<=IS)||LA49_18==LE||(LA49_18>=LT && LA49_18<=MOD)||LA49_18==NE||(LA49_18>=OR && LA49_18<=ORDER)||(LA49_18>=RETURN && LA49_18<=SATISFIES)||LA49_18==STABLE||(LA49_18>=TO && LA49_18<=TREAT)||LA49_18==UNION||LA49_18==WHERE||LA49_18==COUNT||(LA49_18>=END && LA49_18<=GROUP)||LA49_18==ONLY||LA49_18==START||(LA49_18>=AFTER && LA49_18<=BEFORE)||LA49_18==INTO||LA49_18==MODIFY||LA49_18==WITH||LA49_18==RPAREN||(LA49_18>=RBRACKET && LA49_18<=EQUAL)||LA49_18==NOTEQUAL||LA49_18==COMMA||(LA49_18>=STAR && LA49_18<=SLASH_SLASH)||LA49_18==COLON||(LA49_18>=SEMICOLON && LA49_18<=VBAR)||LA49_18==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_18);
+ if ( s>=0 ) return s;
+ break;
+ case 9 :
+ var LA49_13 = input.LA(1);
+
+
+ var index49_13 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_13==NODE||LA49_13==VALUE) && ((true))) {s = 28;}
+
+ else if ( (LA49_13==EOF||(LA49_13>=AND && LA49_13<=ASCENDING)||(LA49_13>=CASE && LA49_13<=CASTABLE)||LA49_13==COLLATION||LA49_13==DEFAULT||(LA49_13>=DESCENDING && LA49_13<=DIV)||(LA49_13>=ELSE && LA49_13<=EMPTY)||LA49_13==EQ||LA49_13==EXCEPT||LA49_13==FOR||LA49_13==GE||(LA49_13>=GT && LA49_13<=IDIV)||(LA49_13>=INSTANCE && LA49_13<=IS)||LA49_13==LE||(LA49_13>=LT && LA49_13<=MOD)||LA49_13==NE||(LA49_13>=OR && LA49_13<=ORDER)||(LA49_13>=RETURN && LA49_13<=SATISFIES)||LA49_13==STABLE||(LA49_13>=TO && LA49_13<=TREAT)||LA49_13==UNION||LA49_13==WHERE||LA49_13==COUNT||(LA49_13>=END && LA49_13<=GROUP)||LA49_13==ONLY||LA49_13==START||(LA49_13>=AFTER && LA49_13<=BEFORE)||LA49_13==INTO||LA49_13==MODIFY||LA49_13==WITH||(LA49_13>=LPAREN && LA49_13<=RPAREN)||(LA49_13>=RBRACKET && LA49_13<=EQUAL)||LA49_13==NOTEQUAL||LA49_13==COMMA||(LA49_13>=STAR && LA49_13<=SLASH_SLASH)||LA49_13==COLON||(LA49_13>=SEMICOLON && LA49_13<=VBAR)||LA49_13==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_13);
+ if ( s>=0 ) return s;
+ break;
+ case 10 :
+ var LA49_10 = input.LA(1);
+
+
+ var index49_10 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA49_10==NODE||LA49_10==NODES) && ((true))) {s = 25;}
+
+ else if ( (LA49_10==EOF||(LA49_10>=AND && LA49_10<=ASCENDING)||(LA49_10>=CASE && LA49_10<=CASTABLE)||LA49_10==COLLATION||LA49_10==DEFAULT||(LA49_10>=DESCENDING && LA49_10<=DIV)||(LA49_10>=ELSE && LA49_10<=EMPTY)||LA49_10==EQ||LA49_10==EXCEPT||LA49_10==FOR||LA49_10==GE||(LA49_10>=GT && LA49_10<=IDIV)||(LA49_10>=INSTANCE && LA49_10<=IS)||LA49_10==LE||(LA49_10>=LT && LA49_10<=MOD)||LA49_10==NE||(LA49_10>=OR && LA49_10<=ORDER)||(LA49_10>=RETURN && LA49_10<=SATISFIES)||LA49_10==STABLE||(LA49_10>=TO && LA49_10<=TREAT)||LA49_10==UNION||LA49_10==WHERE||LA49_10==COUNT||(LA49_10>=END && LA49_10<=GROUP)||LA49_10==ONLY||LA49_10==START||(LA49_10>=AFTER && LA49_10<=BEFORE)||LA49_10==INTO||LA49_10==MODIFY||LA49_10==WITH||(LA49_10>=LPAREN && LA49_10<=RPAREN)||(LA49_10>=RBRACKET && LA49_10<=EQUAL)||LA49_10==NOTEQUAL||LA49_10==COMMA||(LA49_10>=STAR && LA49_10<=SLASH_SLASH)||LA49_10==COLON||(LA49_10>=SEMICOLON && LA49_10<=VBAR)||LA49_10==LETDOLLAR) ) {s = 19;}
+
+
+ input.seek(index49_10);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 49, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA103_eotS:
+ "\u002d\uffff",
+ DFA103_eofS:
+ "\u002d\uffff",
+ DFA103_minS:
+ "\u0001\u0010\u002c\uffff",
+ DFA103_maxS:
+ "\u0001\u0137\u002c\uffff",
+ DFA103_acceptS:
+ "\u0001\uffff\u0001\u0001\u0001\u0002\u0029\uffff\u0001\u0003",
+ DFA103_specialS:
+ "\u002d\uffff}>",
+ DFA103_transitionS: [
+ "\u005b\u0002\u0001\u0001\u0033\u0002\u0001\uffff\u0014\u0002"+
+ "\u0001\uffff\u000d\u0002\u0001\uffff\u0001\u0002\u000a\uffff"+
+ "\u0001\u0002\u0002\uffff\u0001\u0002\u0005\uffff\u0004\u0002"+
+ "\u000c\uffff\u0001\u0002\u0002\uffff\u0002\u0002\u0002\uffff"+
+ "\u0001\u0002\u0006\uffff\u0001\u002c\u0005\u0002\u003c\uffff"+
+ "\u0001\u0002",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA103_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA103_eotS),
+ DFA103_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA103_eofS),
+ DFA103_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA103_minS),
+ DFA103_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA103_maxS),
+ DFA103_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA103_acceptS),
+ DFA103_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA103_specialS),
+ DFA103_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA103_transitionS.length;
+ for (i=0; i",
+ DFA110_transitionS: [
+ "\u008f\u0003\u0001\uffff\u0014\u0003\u0001\uffff\u000d\u0003"+
+ "\u0001\uffff\u0001\u0003\u000a\uffff\u0001\u0003\u0002\uffff"+
+ "\u0001\u0003\u0005\uffff\u0001\u0001\u0001\u0002\u0002\u0003"+
+ "\u000c\uffff\u0001\u0003\u0002\uffff\u0002\u0003\u0002\uffff"+
+ "\u0001\u0003\u0007\uffff\u0005\u0003\u003c\uffff\u0001\u0003",
+ "\u0001\uffff",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA110_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA110_eotS),
+ DFA110_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA110_eofS),
+ DFA110_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA110_minS),
+ DFA110_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA110_maxS),
+ DFA110_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA110_acceptS),
+ DFA110_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA110_specialS),
+ DFA110_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA110_transitionS.length;
+ for (i=0; i ( SLASH p_RelativePathExpr ) | SLASH | SLASH_SLASH p_RelativePathExpr | p_RelativePathExpr );";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA110_1 = input.LA(1);
+
+
+ var index110_1 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (this.synpred1_XQueryParser()) ) {s = 43;}
+
+ else if ( (true) ) {s = 44;}
+
+
+ input.seek(index110_1);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 110, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA112_eotS:
+ "\u00d1\uffff",
+ DFA112_eofS:
+ "\u0001\uffff\u0005\u0006\u0001\uffff\u000c\u0006\u0001\uffff\u0005"+
+ "\u0006\u00b7\uffff\u0001\u0006",
+ DFA112_minS:
+ "\u0001\u0010\u0005\u0012\u0001\uffff\u0002\u0012\u0001\u0010\u0004"+
+ "\u0012\u0002\u0010\u0003\u0012\u0001\uffff\u0002\u0012\u0001\u0010\u0002"+
+ "\u0012\u0001\u0010\u0003\u0013\u0001\u004f\u0010\u0010\u0001\u0084\u0001"+
+ "\u0010\u0002\u0019\u0001\u0052\u0001\u00c3\u0001\u0010\u0001\u0015\u0001"+
+ "\u0076\u0001\u0015\u0002\u001e\u0001\u0038\u0001\u00c4\u0001\u0010\u0001"+
+ "\u005a\u0009\u0010\u0003\u0013\u0001\u004f\u0010\u0010\u0001\u0084\u0001"+
+ "\u0010\u0002\u0019\u0001\u0052\u0001\u00c3\u0001\u0010\u0001\u0015\u0001"+
+ "\u0076\u0001\u0015\u0002\u001e\u0001\u0038\u0001\u00c4\u0001\u0010\u0001"+
+ "\u005a\u0009\u0010\u0003\u0013\u0001\u004f\u0010\u0010\u0001\u0084\u0001"+
+ "\u0010\u0002\u0019\u0001\u0052\u0001\u00c3\u0001\u0010\u0001\u0015\u0001"+
+ "\u0076\u0001\u0015\u0002\u001e\u0001\u0038\u0001\u00c4\u0001\u0010\u0001"+
+ "\u005a\u0009\u0010\u0003\u0013\u0001\u004f\u0010\u0010\u0001\u0084\u0001"+
+ "\u0010\u0002\u0019\u0001\u0052\u0001\u00c3\u0001\u0010\u0001\u0015\u0001"+
+ "\u0076\u0001\u0015\u0002\u001e\u0001\u0038\u0001\u00c4\u0001\u0010\u0001"+
+ "\u005a\u0009\u0010\u0002\uffff\u0001\u0012",
+ DFA112_maxS:
+ "\u0001\u0137\u0005\u0136\u0001\uffff\u0002\u0136\u0001\u0137\u0004"+
+ "\u0136\u0002\u0137\u0003\u0136\u0001\uffff\u0002\u0136\u0001\u0137\u0002"+
+ "\u0136\u0001\u0137\u0004\u00db\u0010\u0137\u0001\u00db\u0001\u0137\u0004"+
+ "\u00db\u0001\u0137\u0003\u00db\u0002\u0136\u0001\u00db\u0001\u00eb\u0001"+
+ "\u0137\u0001\u00db\u0009\u0137\u0004\u00db\u0010\u0137\u0001\u00db\u0001"+
+ "\u0137\u0004\u00db\u0001\u0137\u0003\u00db\u0002\u0136\u0001\u00db\u0001"+
+ "\u00eb\u0001\u0137\u0001\u00db\u0009\u0137\u0004\u00c4\u0010\u0137\u0001"+
+ "\u00c4\u0001\u0137\u0004\u00c4\u0001\u0137\u0003\u00c4\u0002\u0136\u0001"+
+ "\u00c4\u0001\u00eb\u0001\u0137\u0001\u00c4\u0009\u0137\u0004\u00c4\u0010"+
+ "\u0137\u0001\u00c4\u0001\u0137\u0004\u00c4\u0001\u0137\u0003\u00c4\u0002"+
+ "\u0136\u0001\u00c4\u0001\u00eb\u0001\u0137\u0001\u00c4\u0009\u0137\u0002"+
+ "\uffff\u0001\u0136",
+ DFA112_acceptS:
+ "\u0006\uffff\u0001\u0001\u000c\uffff\u0001\u0002\u00ba\uffff\u0002"+
+ "\u0002\u0001\uffff",
+ DFA112_specialS:
+ "\u0017\uffff\u0001\u0000\u00b9\uffff}>",
+ DFA112_transitionS: [
+ "\u0001\u0002\u0001\u0005\u0004\u0018\u0001\u0009\u0006\u0018"+
+ "\u0001\u0007\u0001\u0018\u0001\u0010\u0004\u0018\u0001\u0008"+
+ "\u0001\u000b\u0002\u0018\u0001\u0015\u0001\u0006\u0001\u000e"+
+ "\u0002\u0018\u0001\u0006\u0005\u0018\u0001\u000d\u0001\u000c"+
+ "\u0006\u0018\u0001\u0006\u0006\u0018\u0001\u0006\u0007\u0018"+
+ "\u0001\u0016\u0003\u0018\u0001\u0006\u0004\u0018\u0001\u0012"+
+ "\u0001\u0018\u0001\u0001\u0001\u0004\u0001\u0003\u0001\u0018"+
+ "\u0001\u000f\u0003\u0018\u0002\u0006\u0001\u000a\u0004\u0018"+
+ "\u0001\u0011\u0003\u0018\u0001\u0006\u0001\u0018\u0001\u0014"+
+ "\u0010\u0018\u0001\u0006\u0023\u0018\u0001\uffff\u0003\u0018"+
+ "\u0001\u0006\u0010\u0018\u0001\uffff\u0007\u0018\u0001\u0017"+
+ "\u0004\u0018\u0001\u0013\u0001\uffff\u0001\u0013\u000a\uffff"+
+ "\u0001\u0006\u0002\uffff\u0001\u0013\u0007\uffff\u0001\u0013"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0002\uffff\u0002\u0013"+
+ "\u0002\uffff\u0001\u0018\u0007\uffff\u0005\u0013\u003c\uffff"+
+ "\u0001\u0018",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0002\u0013\u0001\u002c\u0001\u0041\u0001\u0038\u0004\u0013"+
+ "\u0001\u0046\u0001\u003e\u0001\u001a\u0001\u001b\u0001\u0013"+
+ "\u0001\u003b\u0004\u0013\u0001\u003d\u0002\u0013\u0001\u0039"+
+ "\u0001\u0021\u0003\u0013\u0001\u003f\u0001\u003a\u0002\u0013"+
+ "\u0001\u0025\u0001\u0013\u0001\u001f\u0003\u0013\u0001\u002e"+
+ "\u0001\u0013\u0001\u002a\u0001\u0013\u0001\u0029\u0001\u0022"+
+ "\u0004\u0013\u0001\u001d\u0001\u001e\u0001\u002b\u0002\u0013"+
+ "\u0001\u0028\u0002\u0013\u0001\u0027\u0001\u0023\u0002\u0013"+
+ "\u0001\u0026\u0005\u0013\u0001\u002d\u0001\u0031\u0007\u0013"+
+ "\u0001\u0034\u0001\u003c\u0005\u0013\u0001\u0032\u0004\u0013"+
+ "\u0001\u0024\u0001\u001c\u0001\u0013\u0001\u0020\u0004\u0013"+
+ "\u0001\u002f\u0003\u0013\u0001\u0033\u0003\u0013\u0001\u0037"+
+ "\u0001\u0030\u0006\u0013\u0001\u0036\u0006\u0013\u0001\u0035"+
+ "\u0005\u0013\u0001\u0043\u0001\u0044\u0004\u0013\u0001\u0042"+
+ "\u0001\u0013\u0001\u0045\u0007\u0013\u0001\u0040\u0003\u0013"+
+ "\u0001\uffff\u0014\u0013\u0001\uffff\u000c\u0013\u0002\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0002\u0006\u000d\uffff\u0001\u0013"+
+ "\u0047\uffff\u0001\u0006\u0001\u0013",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0002\u0013\u0001\u0059\u0001\u006e\u0001\u0065\u0004\u0013"+
+ "\u0001\u0073\u0001\u006b\u0001\u0047\u0001\u0048\u0001\u0013"+
+ "\u0001\u0068\u0004\u0013\u0001\u006a\u0002\u0013\u0001\u0066"+
+ "\u0001\u004e\u0003\u0013\u0001\u006c\u0001\u0067\u0002\u0013"+
+ "\u0001\u0052\u0001\u0013\u0001\u004c\u0003\u0013\u0001\u005b"+
+ "\u0001\u0013\u0001\u0057\u0001\u0013\u0001\u0056\u0001\u004f"+
+ "\u0004\u0013\u0001\u004a\u0001\u004b\u0001\u0058\u0002\u0013"+
+ "\u0001\u0055\u0002\u0013\u0001\u0054\u0001\u0050\u0002\u0013"+
+ "\u0001\u0053\u0005\u0013\u0001\u005a\u0001\u005e\u0007\u0013"+
+ "\u0001\u0061\u0001\u0069\u0005\u0013\u0001\u005f\u0004\u0013"+
+ "\u0001\u0051\u0001\u0049\u0001\u0013\u0001\u004d\u0004\u0013"+
+ "\u0001\u005c\u0003\u0013\u0001\u0060\u0003\u0013\u0001\u0064"+
+ "\u0001\u005d\u0006\u0013\u0001\u0063\u0006\u0013\u0001\u0062"+
+ "\u0005\u0013\u0001\u0070\u0001\u0071\u0004\u0013\u0001\u006f"+
+ "\u0001\u0013\u0001\u0072\u0007\u0013\u0001\u006d\u0003\u0013"+
+ "\u0001\uffff\u0014\u0013\u0001\uffff\u000c\u0013\u0002\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0006\u0003\uffff\u0002\u0006\u000d\uffff\u0001\u0013"+
+ "\u0047\uffff\u0001\u0006\u0001\u0013",
+ "\u0002\u0013\u0001\u0086\u0001\u009b\u0001\u0092\u0004\u0013"+
+ "\u0001\u00a0\u0001\u0098\u0001\u0074\u0001\u0075\u0001\u0013"+
+ "\u0001\u0095\u0004\u0013\u0001\u0097\u0002\u0013\u0001\u0093"+
+ "\u0001\u007b\u0003\u0013\u0001\u0099\u0001\u0094\u0002\u0013"+
+ "\u0001\u007f\u0001\u0013\u0001\u0079\u0003\u0013\u0001\u0088"+
+ "\u0001\u0013\u0001\u0084\u0001\u0013\u0001\u0083\u0001\u007c"+
+ "\u0004\u0013\u0001\u0077\u0001\u0078\u0001\u0085\u0002\u0013"+
+ "\u0001\u0082\u0002\u0013\u0001\u0081\u0001\u007d\u0002\u0013"+
+ "\u0001\u0080\u0005\u0013\u0001\u0087\u0001\u008b\u0007\u0013"+
+ "\u0001\u008e\u0001\u0096\u0005\u0013\u0001\u008c\u0004\u0013"+
+ "\u0001\u007e\u0001\u0076\u0001\u0013\u0001\u007a\u0004\u0013"+
+ "\u0001\u0089\u0003\u0013\u0001\u008d\u0003\u0013\u0001\u0091"+
+ "\u0001\u008a\u0006\u0013\u0001\u0090\u0006\u0013\u0001\u008f"+
+ "\u0005\u0013\u0001\u009d\u0001\u009e\u0004\u0013\u0001\u009c"+
+ "\u0001\u0013\u0001\u009f\u0007\u0013\u0001\u009a\u0003\u0013"+
+ "\u0001\uffff\u0014\u0013\u0001\uffff\u000c\u0013\u0002\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0006\u0003\uffff\u0002\u0006\u000d\uffff\u0001\u0013"+
+ "\u0047\uffff\u0001\u0006\u0001\u0013",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0002\u0006\u0001\uffff"+
+ "\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0006"+
+ "\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0002\u0006\u0001\uffff"+
+ "\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0006"+
+ "\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0019\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0019\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u0013\u0001\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0019\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0002\u0013\u0001\u00b3\u0001\u00c8\u0001\u00bf\u0004\u0013"+
+ "\u0001\u00cd\u0001\u00c5\u0001\u00a1\u0001\u00a2\u0001\u0013"+
+ "\u0001\u00c2\u0004\u0013\u0001\u00c4\u0002\u0013\u0001\u00c0"+
+ "\u0001\u00a8\u0003\u0013\u0001\u00c6\u0001\u00c1\u0002\u0013"+
+ "\u0001\u00ac\u0001\u0013\u0001\u00a6\u0003\u0013\u0001\u00b5"+
+ "\u0001\u0013\u0001\u00b1\u0001\u0013\u0001\u00b0\u0001\u00a9"+
+ "\u0004\u0013\u0001\u00a4\u0001\u00a5\u0001\u00b2\u0002\u0013"+
+ "\u0001\u00af\u0002\u0013\u0001\u00ae\u0001\u00aa\u0002\u0013"+
+ "\u0001\u00ad\u0005\u0013\u0001\u00b4\u0001\u00b8\u0007\u0013"+
+ "\u0001\u00bb\u0001\u00c3\u0005\u0013\u0001\u00b9\u0004\u0013"+
+ "\u0001\u00ab\u0001\u00a3\u0001\u0013\u0001\u00a7\u0004\u0013"+
+ "\u0001\u00b6\u0003\u0013\u0001\u00ba\u0003\u0013\u0001\u00be"+
+ "\u0001\u00b7\u0006\u0013\u0001\u00bd\u0006\u0013\u0001\u00bc"+
+ "\u0005\u0013\u0001\u00ca\u0001\u00cb\u0004\u0013\u0001\u00c9"+
+ "\u0001\u0013\u0001\u00cc\u0007\u0013\u0001\u00c7\u0003\u0013"+
+ "\u0001\uffff\u0014\u0013\u0001\uffff\u000d\u0013\u0001\u0006"+
+ "\u0001\uffff\u0001\u0013\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0019\u0003\uffff\u0002\u0006\u000d\uffff\u0001\u0013"+
+ "\u0047\uffff\u0001\u0006\u0001\u0013",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u00cf\u0001\u0006"+
+ "\u0001\uffff\u0001\u00ce\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff"+
+ "\u0001\u0019\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u00cf\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0002\uffff\u0001\u0019"+
+ "\u0003\uffff\u0002\u0006\u0055\uffff\u0001\u0006",
+ "\u008f\u00d0\u0001\uffff\u0014\u00d0\u0001\uffff\u000c\u00d0"+
+ "\u000d\uffff\u0001\u0006\u001f\uffff\u0001\u00d0\u0048\uffff"+
+ "\u0001\u00d0",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0074\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u0002\uffff\u0001\u0006\u003b\uffff\u0001\u0006"+
+ "\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0071\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u004d\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u000e\uffff\u0001\u00cf\u005a\uffff\u0001\u0006",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u000e\uffff\u0001\u00cf\u005a\uffff\u0001\u0006",
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u007e\uffff\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u00cf\u0016\uffff\u0001\u00cf\u000e\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0068\uffff\u0001\u0006\u0001\u00cf\u0016\uffff"+
+ "\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000c\u0006"+
+ "\u0002\uffff\u0001\u0006\u0001\u00cf\u0016\uffff\u0001\u00cf"+
+ "\u0012\uffff\u0001\u0006\u0048\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0001\u0006"+
+ "\u0002\uffff\u0001\u0006\u0005\uffff\u0004\u0006\u0001\u00cf"+
+ "\u000b\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0002\uffff"+
+ "\u0001\u0006\u0007\uffff\u0005\u0006\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0074\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u0002\uffff\u0001\u0006\u003b\uffff\u0001\u0006"+
+ "\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0071\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u004d\uffff\u0001\u00cf\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u000e\uffff\u0001\u00cf\u005a\uffff\u0001\u0006",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u000e\uffff\u0001\u00cf\u005a\uffff\u0001\u0006",
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u007e\uffff\u0001\u00cf"+
+ "\u0016\uffff\u0001\u00cf",
+ "\u0001\u00cf\u0016\uffff\u0001\u00cf\u000e\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0068\uffff\u0001\u0006\u0001\u00cf\u0016\uffff"+
+ "\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000c\u0006"+
+ "\u0002\uffff\u0001\u0006\u0001\u00cf\u0016\uffff\u0001\u00cf"+
+ "\u0012\uffff\u0001\u0006\u0048\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u0001\u00cf\u000b\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff"+
+ "\u0006\u0006\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0001\u0006"+
+ "\u0002\uffff\u0001\u0006\u0005\uffff\u0004\u0006\u0001\u00cf"+
+ "\u000b\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0002\uffff"+
+ "\u0001\u0006\u0007\uffff\u0005\u0006\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u0074\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u0002\uffff\u0001\u0006\u003b\uffff\u0001\u0006"+
+ "\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf",
+ "\u0001\u0006\u0071\uffff\u0001\u00cf",
+ "\u0001\u0006\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf",
+ "\u0001\u0006\u004d\uffff\u0001\u00cf",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u0069\uffff\u0001\u0006",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u0069\uffff\u0001\u0006",
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u007e\uffff\u0001\u00cf",
+ "\u0001\u00cf\u0025\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0068\uffff\u0001\u0006\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000c\u0006"+
+ "\u0002\uffff\u0001\u0006\u0001\u00cf\u0029\uffff\u0001\u0006"+
+ "\u0048\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0001\u0006"+
+ "\u0002\uffff\u0001\u0006\u0005\uffff\u0004\u0006\u000c\uffff"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006"+
+ "\u0007\uffff\u0005\u0006\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u00b0\uffff\u0001\u00cf",
+ "\u0001\u0006\u0074\uffff\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003c\uffff\u0001\u0006",
+ "\u0001\u0006\u0002\uffff\u0001\u0006\u003b\uffff\u0001\u0006"+
+ "\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf",
+ "\u0001\u0006\u00aa\uffff\u0001\u00cf",
+ "\u0001\u0006\u0071\uffff\u0001\u00cf",
+ "\u0001\u0006\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf",
+ "\u0001\u0006\u004d\uffff\u0001\u00cf",
+ "\u0001\u0006\u0067\uffff\u0001\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u003a\uffff\u0001\u0006\u0001\u00cf",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u0069\uffff\u0001\u0006",
+ "\u0001\u0006\u000d\uffff\u0001\u0006\u0008\uffff\u0001\u0006"+
+ "\u001c\uffff\u0001\u0006\u0007\uffff\u0001\u0006\u0006\uffff"+
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u0003\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u004c\uffff\u0001\u00cf\u0007\uffff"+
+ "\u0001\u0006\u0069\uffff\u0001\u0006",
+ "\u0001\u0006\u000c\uffff\u0001\u0006\u007e\uffff\u0001\u00cf",
+ "\u0001\u00cf\u0025\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u0001\u0006\u0068\uffff\u0001\u0006\u0001\u00cf",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000c\u0006"+
+ "\u0002\uffff\u0001\u0006\u0001\u00cf\u0029\uffff\u0001\u0006"+
+ "\u0048\uffff\u0001\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0004\u0006"+
+ "\u0005\uffff\u0004\u0006\u000c\uffff\u0001\u0006\u0002\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0006\uffff\u0006\u0006"+
+ "\u003b\uffff\u0002\u0006",
+ "\u008f\u0006\u0001\uffff\u0014\u0006\u0001\uffff\u000d\u0006"+
+ "\u0001\uffff\u0001\u0006\u0001\u00cf\u0009\uffff\u0001\u0006"+
+ "\u0002\uffff\u0001\u0006\u0005\uffff\u0004\u0006\u000c\uffff"+
+ "\u0001\u0006\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006"+
+ "\u0007\uffff\u0005\u0006\u003c\uffff\u0001\u0006",
+ "",
+ "",
+ "\u0003\u0006\u0004\uffff\u0004\u0006\u0001\uffff\u0001\u0006"+
+ "\u0004\uffff\u0001\u0006\u0002\uffff\u0002\u0006\u0003\uffff"+
+ "\u0002\u0006\u0002\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0003\uffff\u0001\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0002\u0006\u0004\uffff\u0003\u0006\u0002\uffff\u0001\u0006"+
+ "\u0002\uffff\u0002\u0006\u0002\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0007\uffff\u0002\u0006\u0005\uffff\u0001\u0006"+
+ "\u0004\uffff\u0002\u0006\u0001\uffff\u0001\u0006\u0004\uffff"+
+ "\u0001\u0006\u0003\uffff\u0001\u0006\u0003\uffff\u0002\u0006"+
+ "\u0006\uffff\u0001\u0006\u0006\uffff\u0001\u0006\u0005\uffff"+
+ "\u0002\u0006\u0004\uffff\u0001\u0006\u0001\uffff\u0001\u0006"+
+ "\u0007\uffff\u0001\u0006\u0025\uffff\u0001\u00cf\u0001\u0006"+
+ "\u0002\uffff\u0004\u0006\u0001\uffff\u0001\u0006\u0001\uffff"+
+ "\u0001\u0006\u0001\uffff\u000b\u0006\u0006\uffff\u0002\u0006"+
+ "\u0055\uffff\u0001\u0006"
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA112_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA112_eotS),
+ DFA112_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA112_eofS),
+ DFA112_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA112_minS),
+ DFA112_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA112_maxS),
+ DFA112_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA112_acceptS),
+ DFA112_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA112_specialS),
+ DFA112_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA112_transitionS.length;
+ for (i=0; i=AND && LA112_23<=ASCENDING)||(LA112_23>=BY && LA112_23<=CASTABLE)||LA112_23==COLLATION||LA112_23==DEFAULT||(LA112_23>=DESCENDING && LA112_23<=DIV)||(LA112_23>=ELSE && LA112_23<=EMPTY)||LA112_23==EQ||LA112_23==EXCEPT||LA112_23==FOR||LA112_23==GE||(LA112_23>=GT && LA112_23<=IDIV)||(LA112_23>=INSTANCE && LA112_23<=IS)||LA112_23==LE||(LA112_23>=LT && LA112_23<=MOD)||LA112_23==NE||(LA112_23>=OR && LA112_23<=ORDER)||(LA112_23>=RETURN && LA112_23<=SATISFIES)||LA112_23==STABLE||(LA112_23>=TO && LA112_23<=TREAT)||LA112_23==UNION||LA112_23==WHERE||LA112_23==COUNT||(LA112_23>=END && LA112_23<=GROUP)||LA112_23==ONLY||LA112_23==START||(LA112_23>=AFTER && LA112_23<=BEFORE)||LA112_23==INTO||LA112_23==MODIFY||LA112_23==WITH||LA112_23==RPAREN||(LA112_23>=RBRACKET && LA112_23<=EQUAL)||LA112_23==NOTEQUAL||LA112_23==COMMA||(LA112_23>=STAR && LA112_23<=SLASH_SLASH)||(LA112_23>=SEMICOLON && LA112_23<=VBAR)||LA112_23==LETDOLLAR) ) {s = 6;}
+
+ else if ( (LA112_23==LPAREN) ) {s = 207;}
+
+
+ input.seek(index112_23);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 112, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA114_eotS:
+ "\u000a\uffff",
+ DFA114_eofS:
+ "\u0001\uffff\u0007\u0008\u0002\uffff",
+ DFA114_minS:
+ "\u0001\u0010\u0007\u0012\u0002\uffff",
+ DFA114_maxS:
+ "\u0001\u0137\u0007\u0136\u0002\uffff",
+ DFA114_acceptS:
+ "\u0008\uffff\u0001\u0002\u0001\u0001",
+ DFA114_specialS:
+ "\u000a\uffff}>",
+ DFA114_transitionS: [
+ "\u0006\u0008\u0001\u0003\u0006\u0008\u0001\u0001\u0006\u0008"+
+ "\u0001\u0002\u0001\u0005\u000d\u0008\u0001\u0007\u0001\u0006"+
+ "\u002a\u0008\u0001\u0004\u003f\u0008\u0001\uffff\u0014\u0008"+
+ "\u0001\uffff\u000c\u0008\u000d\uffff\u0001\u0008\u0018\uffff"+
+ "\u0001\u0008\u0006\uffff\u0001\u0008\u0048\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0025\uffff\u0002\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "\u0003\u0008\u0004\uffff\u0004\u0008\u0001\uffff\u0001\u0008"+
+ "\u0004\uffff\u0001\u0008\u0002\uffff\u0002\u0008\u0003\uffff"+
+ "\u0002\u0008\u0002\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0003\uffff\u0001\u0008\u0001\uffff\u0001\u0008\u0001\uffff"+
+ "\u0002\u0008\u0004\uffff\u0003\u0008\u0002\uffff\u0001\u0008"+
+ "\u0002\uffff\u0002\u0008\u0002\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0007\uffff\u0002\u0008\u0005\uffff\u0001\u0008"+
+ "\u0004\uffff\u0002\u0008\u0001\uffff\u0001\u0008\u0004\uffff"+
+ "\u0001\u0008\u0003\uffff\u0001\u0008\u0003\uffff\u0002\u0008"+
+ "\u0006\uffff\u0001\u0008\u0006\uffff\u0001\u0008\u0005\uffff"+
+ "\u0002\u0008\u0004\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0007\uffff\u0001\u0008\u0026\uffff\u0001\u0008\u0002\uffff"+
+ "\u0004\u0008\u0001\uffff\u0001\u0008\u0001\uffff\u0001\u0008"+
+ "\u0001\uffff\u000b\u0008\u0002\uffff\u0001\u0008\u0001\u0009"+
+ "\u0002\uffff\u0002\u0008\u0055\uffff\u0001\u0008",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA114_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA114_eotS),
+ DFA114_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA114_eofS),
+ DFA114_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA114_minS),
+ DFA114_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA114_maxS),
+ DFA114_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA114_acceptS),
+ DFA114_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA114_specialS),
+ DFA114_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA114_transitionS.length;
+ for (i=0; i",
+ DFA119_transitionS: [
+ "\u0006\u000b\u0001\u0003\u0008\u000b\u0001\u0008\u0009\u000b"+
+ "\u0001\u0001\u0001\u0002\u0023\u000b\u0001\u000a\u000a\u000b"+
+ "\u0001\u0007\u0003\u000b\u0001\u0005\u0001\u0004\u0005\u000b"+
+ "\u0001\u0009\u0016\u000b\u0001\u0006\u0023\u000b\u0001\uffff"+
+ "\u0014\u000b\u0001\uffff\u000c\u000b\u000d\uffff\u0001\u000b"+
+ "\u001f\uffff\u0001\u000b\u0048\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "\u0003\u000b\u0004\uffff\u0004\u000b\u0001\uffff\u0001\u000b"+
+ "\u0004\uffff\u0001\u000b\u0002\uffff\u0002\u000b\u0003\uffff"+
+ "\u0002\u000b\u0002\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0003\uffff\u0001\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0002\u000b\u0004\uffff\u0003\u000b\u0002\uffff\u0001\u000b"+
+ "\u0002\uffff\u0002\u000b\u0002\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0007\uffff\u0002\u000b\u0005\uffff\u0001\u000b"+
+ "\u0004\uffff\u0002\u000b\u0001\uffff\u0001\u000b\u0004\uffff"+
+ "\u0001\u000b\u0003\uffff\u0001\u000b\u0003\uffff\u0002\u000b"+
+ "\u0006\uffff\u0001\u000b\u0006\uffff\u0001\u000b\u0005\uffff"+
+ "\u0002\u000b\u0004\uffff\u0001\u000b\u0001\uffff\u0001\u000b"+
+ "\u0007\uffff\u0001\u000b\u0025\uffff\u0001\u000c\u0001\u000b"+
+ "\u0002\uffff\u0004\u000b\u0001\uffff\u0001\u000b\u0001\uffff"+
+ "\u0001\u000b\u0001\uffff\u000b\u000b\u0002\uffff\u0001\u000b"+
+ "\u0003\uffff\u0002\u000b\u0055\uffff\u0001\u000b",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA119_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA119_eotS),
+ DFA119_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA119_eofS),
+ DFA119_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA119_minS),
+ DFA119_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA119_maxS),
+ DFA119_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA119_acceptS),
+ DFA119_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA119_specialS),
+ DFA119_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA119_transitionS.length;
+ for (i=0; i",
+ DFA124_transitionS: [
+ "\u0006\u000b\u0001\u0008\u0008\u000b\u0001\u0008\u0008\u000b"+
+ "\u0001\u0007\u0001\uffff\u0001\u0008\u0002\u000b\u0001\uffff"+
+ "\u000d\u000b\u0001\uffff\u0006\u000b\u0001\uffff\u0007\u000b"+
+ "\u0001\u0009\u0003\u000b\u0001\uffff\u0004\u000b\u0001\u0005"+
+ "\u0005\u000b\u0001\u0008\u0003\u000b\u0002\uffff\u0005\u000b"+
+ "\u0001\u0008\u0003\u000b\u0001\uffff\u0001\u000b\u0001\u0006"+
+ "\u0010\u000b\u0001\uffff\u0023\u000b\u0001\uffff\u0003\u000b"+
+ "\u0001\uffff\u0010\u000b\u0001\uffff\u0007\u000b\u0001\u000a"+
+ "\u0004\u000b\u0001\u0003\u0001\uffff\u0001\u0002\u000d\uffff"+
+ "\u0001\u0008\u0007\uffff\u0001\u0004\u0010\uffff\u0002\u0001"+
+ "\u0002\uffff\u0001\u000b\u0007\uffff\u0002\u0008\u0003\u0001"+
+ "\u003c\uffff\u0001\u000b",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\u000b\u0002\uffff\u0001\u000c\u0016\uffff\u0001\u000b",
+ "\u0001\u000b\u0002\uffff\u0001\u000d\u0016\uffff\u0001\u000b",
+ "\u0001\u000b\u0002\uffff\u0001\u0008\u0016\uffff\u0001\u000b",
+ "",
+ "\u008f\u0008\u0001\uffff\u0014\u0008\u0001\uffff\u000c\u0008"+
+ "\u0001\u000b\u0002\uffff\u0001\u0008\u0016\uffff\u0001\u000b"+
+ "\u0012\uffff\u0001\u0008\u0048\uffff\u0001\u0008",
+ "\u0001\u000b\u0002\uffff\u0001\u000e\u0016\uffff\u0001\u000b",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA124_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA124_eotS),
+ DFA124_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA124_eofS),
+ DFA124_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA124_minS),
+ DFA124_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA124_maxS),
+ DFA124_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA124_acceptS),
+ DFA124_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA124_specialS),
+ DFA124_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA124_transitionS.length;
+ for (i=0; i=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 124, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA154_eotS:
+ "\u003e\uffff",
+ DFA154_eofS:
+ "\u0001\u0002\u003d\uffff",
+ DFA154_minS:
+ "\u0001\u0012\u0001\u0000\u0005\uffff\u0001\u0000\u0036\uffff",
+ DFA154_maxS:
+ "\u0001\u0136\u0001\u0000\u0005\uffff\u0001\u0000\u0036\uffff",
+ DFA154_acceptS:
+ "\u0002\uffff\u0001\u0002\u0008\uffff\u0001\u0001\u0032\uffff",
+ DFA154_specialS:
+ "\u0001\u0000\u0001\u0001\u0005\uffff\u0001\u0002\u0036\uffff}>",
+ DFA154_transitionS: [
+ "\u0004\u0002\u0004\uffff\u0001\u0002\u0003\uffff\u0001\u0002"+
+ "\u0004\uffff\u0001\u0002\u0002\uffff\u0002\u0002\u0003\uffff"+
+ "\u0002\u0002\u0002\uffff\u0001\u0002\u0001\uffff\u0002\u0002"+
+ "\u0002\uffff\u0001\u0002\u0001\uffff\u0001\u0002\u0001\uffff"+
+ "\u0002\u0002\u0002\uffff\u0001\u0002\u0001\uffff\u0003\u0002"+
+ "\u0002\uffff\u0001\u0002\u0002\uffff\u0002\u0002\u0002\uffff"+
+ "\u0001\u0002\u0005\uffff\u0002\u0002\u0007\uffff\u0002\u0002"+
+ "\u0005\uffff\u0001\u0002\u0004\uffff\u0001\u0002\u0002\uffff"+
+ "\u0001\u0002\u0004\uffff\u0001\u0002\u0003\uffff\u0001\u0002"+
+ "\u0003\uffff\u0002\u0002\u0006\uffff\u0001\u0002\u0006\uffff"+
+ "\u0001\u0002\u0005\uffff\u0002\u0002\u0004\uffff\u0001\u0002"+
+ "\u0001\uffff\u0001\u0002\u0007\uffff\u0001\u0002\u0026\uffff"+
+ "\u0001\u0002\u0001\uffff\u0002\u0002\u0001\uffff\u0004\u0002"+
+ "\u0001\uffff\u0001\u0002\u0001\u000b\u0001\u0001\u0001\u0007"+
+ "\u0007\u0002\u0008\uffff\u0002\u0002\u0055\uffff\u0001\u0002",
+ "\u0001\uffff",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "\u0001\uffff",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA154_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA154_eotS),
+ DFA154_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA154_eofS),
+ DFA154_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA154_minS),
+ DFA154_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA154_maxS),
+ DFA154_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA154_acceptS),
+ DFA154_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA154_specialS),
+ DFA154_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA154_transitionS.length;
+ for (i=0; ioi= p_OccurrenceIndicator )?";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA154_0 = input.LA(1);
+
+
+ var index154_0 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA154_0==STAR) ) {s = 1;}
+
+ else if ( (LA154_0==EOF||(LA154_0>=AND && LA154_0<=AT)||LA154_0==CASE||LA154_0==COLLATION||LA154_0==DEFAULT||(LA154_0>=DESCENDING && LA154_0<=DIV)||(LA154_0>=ELSE && LA154_0<=EMPTY)||LA154_0==EQ||(LA154_0>=EXCEPT && LA154_0<=EXTERNAL)||LA154_0==FOR||LA154_0==GE||(LA154_0>=GT && LA154_0<=IDIV)||LA154_0==IN||(LA154_0>=INSTANCE && LA154_0<=IS)||LA154_0==LE||(LA154_0>=LT && LA154_0<=MOD)||LA154_0==NE||(LA154_0>=OR && LA154_0<=ORDER)||(LA154_0>=RETURN && LA154_0<=SATISFIES)||LA154_0==STABLE||LA154_0==TO||LA154_0==UNION||LA154_0==WHERE||LA154_0==COUNT||(LA154_0>=END && LA154_0<=GROUP)||LA154_0==ONLY||LA154_0==START||(LA154_0>=AFTER && LA154_0<=BEFORE)||LA154_0==INTO||LA154_0==MODIFY||LA154_0==WITH||LA154_0==RPAREN||(LA154_0>=LBRACKET && LA154_0<=RBRACKET)||(LA154_0>=RSQUARE && LA154_0<=NOTEQUAL)||LA154_0==COMMA||(LA154_0>=MINUS && LA154_0<=GREATER_GREATER)||(LA154_0>=SEMICOLON && LA154_0<=VBAR)||LA154_0==LETDOLLAR) ) {s = 2;}
+
+ else if ( (LA154_0==PLUS) ) {s = 7;}
+
+ else if ( (LA154_0==QUESTION) && (this.synpred2_XQueryParser())) {s = 11;}
+
+
+ input.seek(index154_0);
+ if ( s>=0 ) return s;
+ break;
+ case 1 :
+ var LA154_1 = input.LA(1);
+
+
+ var index154_1 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (this.synpred2_XQueryParser()) ) {s = 11;}
+
+ else if ( (true) ) {s = 2;}
+
+
+ input.seek(index154_1);
+ if ( s>=0 ) return s;
+ break;
+ case 2 :
+ var LA154_7 = input.LA(1);
+
+
+ var index154_7 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (this.synpred2_XQueryParser()) ) {s = 11;}
+
+ else if ( (true) ) {s = 2;}
+
+
+ input.seek(index154_7);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 154, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA156_eotS:
+ "\u0011\uffff",
+ DFA156_eofS:
+ "\u0001\uffff\u000c\u000d\u0004\uffff",
+ DFA156_minS:
+ "\u0001\u0010\u000c\u0012\u0004\uffff",
+ DFA156_maxS:
+ "\u0001\u0137\u000c\u0136\u0004\uffff",
+ DFA156_acceptS:
+ "\u000d\uffff\u0001\u0004\u0001\u0001\u0001\u0002\u0001\u0003",
+ DFA156_specialS:
+ "\u000b\uffff\u0001\u0000\u0005\uffff}>",
+ DFA156_transitionS: [
+ "\u0006\u000d\u0001\u0003\u0008\u000d\u0001\u0008\u0009\u000d"+
+ "\u0001\u0001\u0001\u0002\u0017\u000d\u0001\u000c\u000b\u000d"+
+ "\u0001\u000a\u000a\u000d\u0001\u0007\u0003\u000d\u0001\u0005"+
+ "\u0001\u0004\u0005\u000d\u0001\u0009\u0016\u000d\u0001\u0006"+
+ "\u0023\u000d\u0001\uffff\u0014\u000d\u0001\uffff\u0007\u000d"+
+ "\u0001\u000b\u0004\u000d\u002d\uffff\u0001\u000d\u0048\uffff"+
+ "\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000e\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u000f\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "\u0004\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0004\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0003\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0002\u000d"+
+ "\u0002\uffff\u0001\u000d\u0001\uffff\u0001\u000d\u0001\uffff"+
+ "\u0002\u000d\u0002\uffff\u0001\u000d\u0001\uffff\u0003\u000d"+
+ "\u0002\uffff\u0001\u000d\u0002\uffff\u0002\u000d\u0002\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0007\uffff\u0002\u000d"+
+ "\u0005\uffff\u0001\u000d\u0004\uffff\u0001\u000d\u0002\uffff"+
+ "\u0001\u000d\u0004\uffff\u0001\u000d\u0003\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0006\uffff\u0001\u000d\u0006\uffff"+
+ "\u0001\u000d\u0005\uffff\u0002\u000d\u0004\uffff\u0001\u000d"+
+ "\u0001\uffff\u0001\u000d\u0007\uffff\u0001\u000d\u0025\uffff"+
+ "\u0001\u0010\u0001\u000d\u0001\uffff\u0002\u000d\u0001\uffff"+
+ "\u0004\u000d\u0001\uffff\u000b\u000d\u0004\uffff\u0001\u000d"+
+ "\u0003\uffff\u0002\u000d\u0055\uffff\u0001\u000d",
+ "",
+ "",
+ "",
+ ""
+ ]
+});
+
+org.antlr.lang.augmentObject(XQueryParser, {
+ DFA156_eot:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA156_eotS),
+ DFA156_eof:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA156_eofS),
+ DFA156_min:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA156_minS),
+ DFA156_max:
+ org.antlr.runtime.DFA.unpackEncodedStringToUnsignedChars(XQueryParser.DFA156_maxS),
+ DFA156_accept:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA156_acceptS),
+ DFA156_special:
+ org.antlr.runtime.DFA.unpackEncodedString(XQueryParser.DFA156_specialS),
+ DFA156_transition: (function() {
+ var a = [],
+ i,
+ numStates = XQueryParser.DFA156_transitionS.length;
+ for (i=0; i ^( KindTest p_KindTest ) | {...}? => ( BINARY LPAREN RPAREN ) -> ^( BinaryTest BINARY LPAREN RPAREN ) | ( ITEM LPAREN RPAREN ) -> ^( ItemTest ITEM LPAREN RPAREN ) | p_AtomicType );";
+ },
+ specialStateTransition: function(s, input) {
+ var _s = s;
+ /* bind to recognizer so semantic predicates can be evaluated */
+ var retval = (function(s, input) {
+ switch ( s ) {
+ case 0 :
+ var LA156_11 = input.LA(1);
+
+
+ var index156_11 = input.index();
+ input.rewind();
+ s = -1;
+ if ( (LA156_11==LPAREN) && ((false))) {s = 15;}
+
+ else if ( (LA156_11==EOF||(LA156_11>=AND && LA156_11<=AT)||LA156_11==CASE||LA156_11==COLLATION||LA156_11==DEFAULT||(LA156_11>=DESCENDING && LA156_11<=DIV)||(LA156_11>=ELSE && LA156_11<=EMPTY)||LA156_11==EQ||(LA156_11>=EXCEPT && LA156_11<=EXTERNAL)||LA156_11==FOR||LA156_11==GE||(LA156_11>=GT && LA156_11<=IDIV)||LA156_11==IN||(LA156_11>=INSTANCE && LA156_11<=IS)||LA156_11==LE||(LA156_11>=LT && LA156_11<=MOD)||LA156_11==NE||(LA156_11>=OR && LA156_11<=ORDER)||(LA156_11>=RETURN && LA156_11<=SATISFIES)||LA156_11==STABLE||LA156_11==TO||LA156_11==UNION||LA156_11==WHERE||LA156_11==COUNT||(LA156_11>=END && LA156_11<=GROUP)||LA156_11==ONLY||LA156_11==START||(LA156_11>=AFTER && LA156_11<=BEFORE)||LA156_11==INTO||LA156_11==MODIFY||LA156_11==WITH||LA156_11==RPAREN||(LA156_11>=LBRACKET && LA156_11<=RBRACKET)||(LA156_11>=RSQUARE && LA156_11<=NOTEQUAL)||(LA156_11>=COMMA && LA156_11<=GREATER_GREATER)||LA156_11==COLON||(LA156_11>=SEMICOLON && LA156_11<=VBAR)||LA156_11==LETDOLLAR) ) {s = 13;}
+
+
+ input.seek(index156_11);
+ if ( s>=0 ) return s;
+ break;
+ }
+ }).call(this.recognizer, s, input);
+ if (!org.antlr.lang.isUndefined(retval)) {
+ return retval;
+ }
+ if (this.recognizer.state.backtracking>0) {this.recognizer.state.failed=true; return -1;}
+ var nvae =
+ new org.antlr.runtime.NoViableAltException(this.getDescription(), 156, _s, input);
+ this.error(nvae);
+ throw nvae;
+ },
+ dummy: null
+});
+
+
+// public class variables
+org.antlr.lang.augmentObject(XQueryParser, {
+ tokenNames: ["", "", "", "", "L_QuotAttrContentChar", "L_AposAttrContentChar", "L_ElementContentChar", "L_CDataSection", "L_PredefinedEntityRef", "L_CharRef", "ESCAPE_LBRACKET", "ESCAPE_RBRACKET", "ESCAPE_APOS", "ESCAPE_QUOT", "CDATA_START", "CDATA_END", "ANCESTOR", "ANCESTOR_OR_SELF", "AND", "AS", "ASCENDING", "AT", "ATTRIBUTE", "BASE_URI", "BOUNDARY_SPACE", "BY", "CASE", "CAST", "CASTABLE", "CHILD", "COLLATION", "COMMENT", "CONSTRUCTION", "COPY_NAMESPACES", "DECLARE", "DEFAULT", "DESCENDANT", "DESCENDANT_OR_SELF", "DESCENDING", "DIV", "DOCUMENT", "DOCUMENT_NODE", "ELEMENT", "ELSE", "EMPTY", "EMPTY_SEQUENCE", "ENCODING", "EQ", "EVERY", "EXCEPT", "EXTERNAL", "FOLLOWING", "FOLLOWING_SIBLING", "FOR", "FUNCTION", "GE", "GREATEST", "GT", "IDIV", "IF", "IMPORT", "IN", "INHERIT", "INSTANCE", "INTERSECT", "IS", "ITEM", "LAX", "LE", "LEAST", "LET", "LT", "MOD", "MODULE", "NAMESPACE", "NE", "NO_INHERIT", "NO_PRESERVE", "NODE", "OF", "OPTION", "OR", "ORDER", "ORDERED", "ORDERING", "PARENT", "PRECEDING", "PRECEDING_SIBLING", "PRESERVE", "PROCESSING_INSTRUCTION", "RETURN", "SATISFIES", "SCHEMA", "SCHEMA_ATTRIBUTE", "SCHEMA_ELEMENT", "SELF", "SOME", "STABLE", "STRICT", "STRIP", "TEXT", "THEN", "TO", "TREAT", "TYPESWITCH", "UNION", "UNORDERED", "VALIDATE", "VARIABLE", "VERSION", "WHERE", "XQUERY", "CATCH", "CONTEXT", "COUNT", "DECIMAL_FORMAT", "DECIMAL_SEPARATOR", "DIGIT", "END", "GROUP", "GROUPING_SEPARATOR", "INFINITY", "MINUS_SIGN", "NAMESPACE_NODE", "NAN", "NEXT", "ONLY", "OUTER", "PATTERN_SEPARATOR", "PERCENT", "PER_MILLE", "PREVIOUS", "SLIDING", "START", "TRY", "TUMBLING", "WHEN", "WINDOW", "ZERO_DIGIT", "AFTER", "BEFORE", "COPY", "DELETE", "FIRST", "INSERT", "INTO", "LAST", "MODIFY", "NODES", "RENAME", "REPLACE", "REVALIDATION", "SKIP", "UPDATING", "VALUE", "WITH", "BLOCK", "CONSTANT", "EXIT", "RETURNING", "SEQUENTIAL", "SET", "SIMPLE", "WHILE", "EVAL", "USING", "APPEND_ONLY", "AUTOMATICALLY", "CHECK", "COLLECTION", "CONSTRAINT", "CONST", "EQUALITY", "FOREACH", "FOREIGN", "FROM", "INDEX", "INTEGRITY", "KEY", "MAINTAINED", "MANUALLY", "MUTABLE", "NON", "ON", "QUEUE", "RANGE", "READ_ONLY", "UNIQUE", "BINARY", "PRIVATE", "AMP_ER", "APOS_ER", "QUOT_ER", "LPAREN", "RPAREN", "DOLLAR", "LBRACKET", "RBRACKET", "LSQUARE", "RSQUARE", "EQUAL", "BIND", "NOTEQUAL", "AMP", "COMMA", "QUESTION", "STAR", "PLUS", "MINUS", "SMALLER", "GREATER", "SMALLEREQ", "GREATEREQ", "SMALLER_SMALLER", "GREATER_GREATER", "SLASH", "SLASH_SLASH", "DOT", "DOT_DOT", "COLON", "COLON_COLON", "EMPTY_CLOSE_TAG", "CLOSE_TAG", "SEMICOLON", "VBAR", "PRAGMA_START", "PRAGMA_END", "XML_COMMENT_START", "XML_COMMENT_END", "PI_START", "PI_END", "ATTR_SIGN", "CHARREF_DEC", "CHARREF_HEX", "APOS", "QUOT", "NCNameStartChar", "NCNameChar", "L_NCName", "Letter", "HexLetter", "Digit", "Digits", "S", "SU", "L_Pragma", "L_DirCommentConstructor", "L_DirPIConstructor", "L_IntegerLiteral", "L_DecimalLiteral", "L_DoubleLiteral", "L_Comment", "L_AnyChar", "L_QuotStringLiteralChar", "L_AposStringLiteralChar", "LibraryModule", "MainModule", "VersionDecl", "VersionDeclEncoding", "VersionDeclVersion", "ModuleDecl", "Prolog", "DefaultNamespaceDecls", "DefaultNamespaceDecl", "Setters", "Setter", "NamespaceDecls", "NamespaceDecl", "Imports", "SchemaImport", "SchemaPrefix", "NamespaceName", "DefaultElementNamespace", "AtHints", "ModuleImport", "BaseURIDecl", "OrderedDecls", "VarDecl", "VarType", "VarValue", "VarDefaultValue", "VarConstantDecl", "VarVariableDecl", "FunctionDecl", "ParamList", "ReturnType", "OptionDecl", "TypeDeclaration", "Param", "EnclosedExpr", "QueryBody", "UnaryExpr", "DirElemConstructor", "DirAttributeList", "DirAttributeValue", "DirElemContent", "CommonContent", "SequenceType", "EmptySequenceTest", "KindTest", "ItemTest", "AtomicType", "StringLiteral", "ElementContentChar", "AttributeValueChar", "QName", "Block", "BlockDecls", "BlockVarDecl", "BinaryTest", "LETDOLLAR", "EXPLICITLY"],
+ FOLLOW_p_VersionDecl_in_p_Module523: new org.antlr.runtime.BitSet([0x00000000, 0x10000004,0x00000200, 0x00000000]),
+ FOLLOW_p_LibraryModule_in_p_Module558: new org.antlr.runtime.BitSet([0x00000000, 0x00000000]),
+ FOLLOW_p_MainModule_in_p_Module584: new org.antlr.runtime.BitSet([0x00000000, 0x00000000]),
+ FOLLOW_EOF_in_p_Module613: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_XQUERY_in_p_VersionDecl641: new org.antlr.runtime.BitSet([0x00000000, 0x00004000,0x00000000, 0x00002000]),
+ FOLLOW_ENCODING_in_p_VersionDecl647: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_VersionDecl651: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_VERSION_in_p_VersionDecl672: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_VersionDecl676: new org.antlr.runtime.BitSet([0x00000000, 0x00004000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_ENCODING_in_p_VersionDecl682: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_VersionDecl686: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_VersionDecl692: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_Prolog_in_p_MainModule758: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_QueryBody_in_p_MainModule760: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ModuleDecl_in_p_LibraryModule816: new org.antlr.runtime.BitSet([0x00000000, 0x10000004,0x00000200, 0x00000000]),
+ FOLLOW_pm_Prolog_in_p_LibraryModule818: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_MODULE_in_p_ModuleDecl874: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000]),
+ FOLLOW_NAMESPACE_in_p_ModuleDecl878: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_ModuleDecl880: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_EQUAL_in_p_ModuleDecl882: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_ModuleDecl884: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_ModuleDecl886: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_DefaultNamespaceDecl_in_pm_Prolog945: new org.antlr.runtime.BitSet([0x00000000, 0x10000004]),
+ FOLLOW_p_Setter_in_pm_Prolog951: new org.antlr.runtime.BitSet([0x00000000, 0x10000004]),
+ FOLLOW_pm_NamespaceDecl_in_pm_Prolog957: new org.antlr.runtime.BitSet([0x00000000, 0x10000004]),
+ FOLLOW_p_Import_in_pm_Prolog963: new org.antlr.runtime.BitSet([0x00000000, 0x10000004]),
+ FOLLOW_pg_OrderedDecl_in_pm_Prolog970: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_VarDecl_in_pg_OrderedDecl1248: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_pm_ContextItemDecl_in_pg_OrderedDecl1252: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_pm_FunctionDecl_in_pg_OrderedDecl1256: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_pm_OptionDecl_in_pg_OrderedDecl1260: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_p_CollectionDecl_in_pg_OrderedDecl1275: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_p_IndexDecl_in_pg_OrderedDecl1290: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_p_ICDecl_in_pg_OrderedDecl1305: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_pm_BoundarySpaceDecl_in_p_Setter1334: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_DefaultCollationDecl_in_p_Setter1346: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_BaseURIDecl_in_p_Setter1358: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_ConstructionDecl_in_p_Setter1370: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_OrderingModeDecl_in_p_Setter1382: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_EmptyOrderDecl_in_p_Setter1394: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_RevalidationDecl_in_p_Setter1409: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_CopyNamespacesDecl_in_p_Setter1421: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_SchemaImport_in_p_Import1447: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_ModuleImport_in_p_Import1451: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_NamespaceDecl1482: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000]),
+ FOLLOW_NAMESPACE_in_pm_NamespaceDecl1486: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_pm_NamespaceDecl1490: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_EQUAL_in_pm_NamespaceDecl1492: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_NamespaceDecl1496: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_NamespaceDecl1498: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_BoundarySpaceDecl1561: new org.antlr.runtime.BitSet([0x01000000, 0x00000000]),
+ FOLLOW_BOUNDARY_SPACE_in_pm_BoundarySpaceDecl1565: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x01000000, 0x00000008]),
+ FOLLOW_PRESERVE_in_pm_BoundarySpaceDecl1570: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_STRIP_in_pm_BoundarySpaceDecl1576: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_BoundarySpaceDecl1579: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_DefaultNamespaceDecl1607: new org.antlr.runtime.BitSet([0x00000000, 0x00000008]),
+ FOLLOW_DEFAULT_in_pm_DefaultNamespaceDecl1611: new org.antlr.runtime.BitSet([0x00000000, 0x00400400]),
+ FOLLOW_ELEMENT_in_pm_DefaultNamespaceDecl1616: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000]),
+ FOLLOW_FUNCTION_in_pm_DefaultNamespaceDecl1622: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000]),
+ FOLLOW_NAMESPACE_in_pm_DefaultNamespaceDecl1627: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_DefaultNamespaceDecl1629: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_DefaultNamespaceDecl1631: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_OptionDecl1662: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00010000, 0x00000000]),
+ FOLLOW_OPTION_in_pm_OptionDecl1666: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_pm_OptionDecl1668: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_OptionDecl1670: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_OptionDecl1672: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_OrderingModeDecl1703: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00100000, 0x00000000]),
+ FOLLOW_ORDERING_in_pm_OrderingModeDecl1707: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00080000, 0x00000400]),
+ FOLLOW_ORDERED_in_pm_OrderingModeDecl1712: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_UNORDERED_in_pm_OrderingModeDecl1718: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_OrderingModeDecl1721: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_EmptyOrderDecl1752: new org.antlr.runtime.BitSet([0x00000000, 0x00000008]),
+ FOLLOW_DEFAULT_in_pm_EmptyOrderDecl1756: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00040000, 0x00000000]),
+ FOLLOW_ORDER_in_pm_EmptyOrderDecl1760: new org.antlr.runtime.BitSet([0x00000000, 0x00001000]),
+ FOLLOW_EMPTY_in_pm_EmptyOrderDecl1764: new org.antlr.runtime.BitSet([0x00000000, 0x01000000,0x00000020, 0x00000000]),
+ FOLLOW_GREATEST_in_pm_EmptyOrderDecl1769: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_LEAST_in_pm_EmptyOrderDecl1775: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_EmptyOrderDecl1778: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_CopyNamespacesDecl1809: new org.antlr.runtime.BitSet([0x00000000, 0x00000002]),
+ FOLLOW_COPY_NAMESPACES_in_pm_CopyNamespacesDecl1813: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x01002000, 0x00000000]),
+ FOLLOW_p_PreserveMode_in_pm_CopyNamespacesDecl1815: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_pm_CopyNamespacesDecl1817: new org.antlr.runtime.BitSet([0x00000000, 0x40000000,0x00001000, 0x00000000]),
+ FOLLOW_p_InheritMode_in_pm_CopyNamespacesDecl1819: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_CopyNamespacesDecl1821: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_p_DecimalFormatDecl1852: new org.antlr.runtime.BitSet([0x00000000, 0x00000008,0x00000000, 0x00080000]),
+ FOLLOW_DECIMAL_FORMAT_in_p_DecimalFormatDecl1856: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_DecimalFormatDecl1858: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x17300000,0x00000407, 0x00000000]),
+ FOLLOW_DEFAULT_in_p_DecimalFormatDecl1864: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00080000]),
+ FOLLOW_DECIMAL_FORMAT_in_p_DecimalFormatDecl1866: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x17300000,0x00000407, 0x00000000]),
+ FOLLOW_p_DFPropertyName_in_p_DecimalFormatDecl1871: new org.antlr.runtime.BitSet([0x00000000, 0x00008000]),
+ FOLLOW_EQ_in_p_DecimalFormatDecl1874: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_DecimalFormatDecl1876: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_DecimalFormatDecl1878: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECIMAL_SEPARATOR_in_p_DFPropertyName1907: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GROUPING_SEPARATOR_in_p_DFPropertyName1913: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_INFINITY_in_p_DFPropertyName1919: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_MINUS_SIGN_in_p_DFPropertyName1925: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NAN_in_p_DFPropertyName1931: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PERCENT_in_p_DFPropertyName1937: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PER_MILLE_in_p_DFPropertyName1943: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ZERO_DIGIT_in_p_DFPropertyName1949: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DIGIT_in_p_DFPropertyName1955: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PATTERN_SEPARATOR_in_p_DFPropertyName1961: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PRESERVE_in_p_PreserveMode1993: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NO_PRESERVE_in_p_PreserveMode1999: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_INHERIT_in_p_InheritMode2032: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NO_INHERIT_in_p_InheritMode2038: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_DefaultCollationDecl2078: new org.antlr.runtime.BitSet([0x00000000, 0x00000008]),
+ FOLLOW_DEFAULT_in_pm_DefaultCollationDecl2082: new org.antlr.runtime.BitSet([0x40000000, 0x00000000]),
+ FOLLOW_COLLATION_in_pm_DefaultCollationDecl2086: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_DefaultCollationDecl2088: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_DefaultCollationDecl2090: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_BaseURIDecl2129: new org.antlr.runtime.BitSet([0x00800000, 0x00000000]),
+ FOLLOW_BASE_URI_in_pm_BaseURIDecl2133: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_BaseURIDecl2137: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_BaseURIDecl2139: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_IMPORT_in_pm_SchemaImport2193: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_SCHEMA_in_pm_SchemaImport2197: new org.antlr.runtime.BitSet([0x00000000, 0x00000008,0x00000400, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_SchemaPrefix_in_pm_SchemaImport2201: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_SchemaImport2206: new org.antlr.runtime.BitSet([0x00200000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_AT_in_pm_SchemaImport2211: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_SchemaImport2215: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_COMMA_in_pm_SchemaImport2218: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_SchemaImport2222: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_SchemaImport2228: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NAMESPACE_in_p_SchemaPrefix2299: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_SchemaPrefix2303: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_EQUAL_in_p_SchemaPrefix2305: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DEFAULT_in_p_SchemaPrefix2345: new org.antlr.runtime.BitSet([0x00000000, 0x00000400]),
+ FOLLOW_ELEMENT_in_p_SchemaPrefix2349: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000]),
+ FOLLOW_NAMESPACE_in_p_SchemaPrefix2353: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_IMPORT_in_pm_ModuleImport2402: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_MODULE_in_pm_ModuleImport2406: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000400, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_NAMESPACE_in_pm_ModuleImport2411: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_pm_ModuleImport2415: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_EQUAL_in_pm_ModuleImport2417: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_ModuleImport2423: new org.antlr.runtime.BitSet([0x00200000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_AT_in_pm_ModuleImport2428: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_ModuleImport2432: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_COMMA_in_pm_ModuleImport2435: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_pm_ModuleImport2439: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_ModuleImport2445: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_VarDecl2515: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00001000,0x20000000, 0x20000000]),
+ FOLLOW_p_PrivateOption_in_pm_VarDecl2517: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00001000,0x20000000, 0x20000000]),
+ FOLLOW_pg_VarDeclType_in_pm_VarDecl2521: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_pm_VarDecl2523: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_pm_VarDecl2527: new org.antlr.runtime.BitSet([0x00080000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_pm_VarDecl2531: new org.antlr.runtime.BitSet([0x00000000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_pm_VarDecl2536: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_VarDecl2540: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_EXTERNAL_in_pm_VarDecl2548: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000200, 0x00000000]),
+ FOLLOW_BIND_in_pm_VarDecl2551: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_VarDecl2555: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_VarDecl2561: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_CONSTANT_in_pg_VarDeclType2648: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_VARIABLE_in_pg_VarDeclType2682: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_ContextItemDecl2739: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00020000]),
+ FOLLOW_CONTEXT_in_pm_ContextItemDecl2743: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_ITEM_in_pm_ContextItemDecl2747: new org.antlr.runtime.BitSet([0x00080000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_AS_in_pm_ContextItemDecl2752: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_ItemType_in_pm_ContextItemDecl2754: new org.antlr.runtime.BitSet([0x00000000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_pm_ContextItemDecl2760: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_ContextItemDecl2762: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_EXTERNAL_in_pm_ContextItemDecl2770: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000200, 0x00000000]),
+ FOLLOW_BIND_in_pm_ContextItemDecl2773: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_ContextItemDecl2775: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_ContextItemDecl2781: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_ConstructionDecl2815: new org.antlr.runtime.BitSet([0x00000000, 0x00000001]),
+ FOLLOW_CONSTRUCTION_in_pm_ConstructionDecl2819: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x01000000, 0x00000008]),
+ FOLLOW_STRIP_in_pm_ConstructionDecl2824: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_PRESERVE_in_pm_ConstructionDecl2830: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_ConstructionDecl2833: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_FunctionDecl2869: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000001]),
+ FOLLOW_SEQUENTIAL_in_pm_FunctionDecl2873: new org.antlr.runtime.BitSet([0x00000000, 0x00400000]),
+ FOLLOW_FUNCTION_in_pm_FunctionDecl2877: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_pm_FunctionDecl2881: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_pm_FunctionDecl2883: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x0000000C, 0x00000000]),
+ FOLLOW_p_ParamList_in_pm_FunctionDecl2887: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_pm_FunctionDecl2890: new org.antlr.runtime.BitSet([0x00080000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_pm_FunctionDecl2894: new org.antlr.runtime.BitSet([0x00000000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_Block_in_pm_FunctionDecl2900: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_EXTERNAL_in_pm_FunctionDecl2906: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_FunctionDecl2909: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_FunctionDecl2971: new org.antlr.runtime.BitSet([0x00000000, 0x00400000,0x00000000, 0x00000000,0x02000000, 0x20000004]),
+ FOLLOW_p_PrivateOption_in_pm_FunctionDecl2973: new org.antlr.runtime.BitSet([0x00000000, 0x00400000,0x00000000, 0x00000000,0x02000000, 0x00000004]),
+ FOLLOW_p_FunctionType_in_pm_FunctionDecl2975: new org.antlr.runtime.BitSet([0x00000000, 0x00400000]),
+ FOLLOW_FUNCTION_in_pm_FunctionDecl2979: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_pm_FunctionDecl2983: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_pm_FunctionDecl2985: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x0000000C, 0x00000000]),
+ FOLLOW_p_ParamList_in_pm_FunctionDecl2989: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_pm_FunctionDecl2992: new org.antlr.runtime.BitSet([0x00080000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_pm_FunctionDecl2996: new org.antlr.runtime.BitSet([0x00000000, 0x00040000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_EnclosedExpr_in_pm_FunctionDecl3002: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_EXTERNAL_in_pm_FunctionDecl3008: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_FunctionDecl3011: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_UPDATING_in_p_FunctionType3091: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SIMPLE_in_p_FunctionType3108: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PRIVATE_in_p_PrivateOption3150: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Param_in_p_ParamList3193: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_ParamList3196: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_p_Param_in_p_ParamList3200: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_Param3258: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_Param3262: new org.antlr.runtime.BitSet([0x00080002, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_p_Param3266: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_EnclosedExpr3322: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_EnclosedExpr3324: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_EnclosedExpr3326: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_Expr_in_p_QueryBody3376: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ConcatExpr_in_pm_Expr3427: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_Expr3444: new org.antlr.runtime.BitSet([0xFFFF0002, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x8783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_ApplyExpr_in_pm_Expr3446: new org.antlr.runtime.BitSet([0xFFFF0002, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x8783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_SEMICOLON_in_pm_Expr3471: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ConcatExpr_in_pm_Expr3473: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_p_FLWORExpr_in_p_ExprSingle3507: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QuantifiedExpr_in_p_ExprSingle3519: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_TypeswitchExpr_in_p_ExprSingle3531: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_IfExpr_in_p_ExprSingle3543: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_TryCatchExpr_in_p_ExprSingle3555: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_EvalExpr_in_p_ExprSingle3570: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_InsertExpr_in_p_ExprSingle3585: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_DeleteExpr_in_p_ExprSingle3600: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_RenameExpr_in_p_ExprSingle3615: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ReplaceExpr_in_p_ExprSingle3630: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_TransformExpr_in_p_ExprSingle3645: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_BlockExpr_in_p_ExprSingle3660: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AssignmentExpr_in_p_ExprSingle3675: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExitExpr_in_p_ExprSingle3690: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_WhileExpr_in_p_ExprSingle3705: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OrExpr_in_p_ExprSingle3717: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_InitialClause_in_p_FLWORExpr3743: new org.antlr.runtime.BitSet([0x00000000, 0x00200000,0x04040000, 0x00844002,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00400000]),
+ FOLLOW_p_IntermediateClause_in_p_FLWORExpr3745: new org.antlr.runtime.BitSet([0x00000000, 0x00200000,0x04040000, 0x00844002,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00400000]),
+ FOLLOW_p_ReturnClause_in_p_FLWORExpr3748: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ForClause_in_p_InitialClause3774: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_LetClause_in_p_InitialClause3778: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_WindowClause_in_p_InitialClause3782: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_InitialClause_in_p_IntermediateClause3808: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_WhereClause_in_p_IntermediateClause3812: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_GroupByClause_in_p_IntermediateClause3816: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OrderByClause_in_p_IntermediateClause3820: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CountClause_in_p_IntermediateClause3824: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FOR_in_p_ForClause3852: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ForClause3854: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_ForClause3856: new org.antlr.runtime.BitSet([0x00280000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_ForClause3858: new org.antlr.runtime.BitSet([0x00200000, 0x20000000]),
+ FOLLOW_p_PositionalVar_in_p_ForClause3861: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_ForClause3866: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ForClause3868: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_ForClause3871: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ForClause3873: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_ForClause3875: new org.antlr.runtime.BitSet([0x00280000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_ForClause3877: new org.antlr.runtime.BitSet([0x00200000, 0x20000000]),
+ FOLLOW_p_PositionalVar_in_p_ForClause3880: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_ForClause3885: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ForClause3887: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_AT_in_p_PositionalVar3918: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_PositionalVar3920: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_PositionalVar3922: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LETDOLLAR_in_p_LetClause3950: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_LetClause3952: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_p_LetClause3954: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_p_LetClause3957: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_LetClause3959: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_LetClause3962: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_LetClause3964: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_LetClause3966: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_p_LetClause3968: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_p_LetClause3971: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_LetClause3973: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_FOR_in_p_WindowClause4003: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000090, 0x00000000]),
+ FOLLOW_p_TumblingWindowClause_in_p_WindowClause4006: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_SlidingWindowClause_in_p_WindowClause4010: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_TUMBLING_in_p_TumblingWindowClause4047: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_WINDOW_in_p_TumblingWindowClause4051: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_TumblingWindowClause4053: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_TumblingWindowClause4055: new org.antlr.runtime.BitSet([0x00080000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_TumblingWindowClause4057: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_TumblingWindowClause4060: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TumblingWindowClause4062: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_p_WindowStartCondition_in_p_TumblingWindowClause4064: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x40400000]),
+ FOLLOW_p_WindowEndCondition_in_p_TumblingWindowClause4066: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SLIDING_in_p_SlidingWindowClause4096: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_WINDOW_in_p_SlidingWindowClause4100: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_SlidingWindowClause4102: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_SlidingWindowClause4104: new org.antlr.runtime.BitSet([0x00080000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_SlidingWindowClause4106: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_SlidingWindowClause4109: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_SlidingWindowClause4111: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_p_WindowStartCondition_in_p_SlidingWindowClause4113: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x40400000]),
+ FOLLOW_p_WindowEndCondition_in_p_SlidingWindowClause4115: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_START_in_p_WindowStartCondition4145: new org.antlr.runtime.BitSet([0x00200000, 0x00000000,0x00000000, 0x20000000,0x00000108, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_p_WindowVars_in_p_WindowStartCondition4147: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_WHEN_in_p_WindowStartCondition4151: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_WindowStartCondition4153: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ONLY_in_p_WindowEndCondition4182: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00400000]),
+ FOLLOW_END_in_p_WindowEndCondition4187: new org.antlr.runtime.BitSet([0x00200000, 0x00000000,0x00000000, 0x20000000,0x00000108, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_p_WindowVars_in_p_WindowEndCondition4189: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_WHEN_in_p_WindowEndCondition4193: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_WindowEndCondition4195: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_WindowVars4223: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_WindowVars4225: new org.antlr.runtime.BitSet([0x00200002, 0x00000000,0x00000000, 0x20000000,0x00000008, 0x00000000]),
+ FOLLOW_p_PositionalVar_in_p_WindowVars4229: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x20000000,0x00000008, 0x00000000]),
+ FOLLOW_PREVIOUS_in_p_WindowVars4235: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_WindowVars4237: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_WindowVars4239: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x20000000]),
+ FOLLOW_NEXT_in_p_WindowVars4246: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_WindowVars4248: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_WindowVars4250: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COUNT_in_p_CountClause4290: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_CountClause4292: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_CountClause4294: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_WHERE_in_p_WhereClause4330: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_WhereClause4332: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GROUP_in_p_GroupByClause4362: new org.antlr.runtime.BitSet([0x02000000, 0x00000000]),
+ FOLLOW_BY_in_p_GroupByClause4366: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_p_GroupingSpecList_in_p_GroupByClause4368: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_GroupingSpec_in_p_GroupingSpecList4397: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_GroupingSpecList4400: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_p_GroupingSpec_in_p_GroupingSpecList4402: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_GroupingSpec4432: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_GroupingSpec4434: new org.antlr.runtime.BitSet([0x40000002, 0x00000000]),
+ FOLLOW_COLLATION_in_p_GroupingSpec4439: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_GroupingSpec4441: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ORDER_in_p_OrderByClause4476: new org.antlr.runtime.BitSet([0x02000000, 0x00000000]),
+ FOLLOW_BY_in_p_OrderByClause4480: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_STABLE_in_p_OrderByClause4488: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00040000, 0x00000000]),
+ FOLLOW_ORDER_in_p_OrderByClause4492: new org.antlr.runtime.BitSet([0x02000000, 0x00000000]),
+ FOLLOW_BY_in_p_OrderByClause4496: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_OrderSpecList_in_p_OrderByClause4500: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OrderSpec_in_p_OrderSpecList4529: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_OrderSpecList4532: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_OrderSpec_in_p_OrderSpecList4534: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_p_ExprSingle_in_p_OrderSpec4564: new org.antlr.runtime.BitSet([0x40100000, 0x00001040]),
+ FOLLOW_p_OrderModifier_in_p_OrderSpec4566: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ASCENDING_in_p_OrderModifier4595: new org.antlr.runtime.BitSet([0x40000002, 0x00001000]),
+ FOLLOW_DESCENDING_in_p_OrderModifier4601: new org.antlr.runtime.BitSet([0x40000002, 0x00001000]),
+ FOLLOW_EMPTY_in_p_OrderModifier4608: new org.antlr.runtime.BitSet([0x00000000, 0x01000000,0x00000020, 0x00000000]),
+ FOLLOW_GREATEST_in_p_OrderModifier4613: new org.antlr.runtime.BitSet([0x40000002, 0x00000000]),
+ FOLLOW_LEAST_in_p_OrderModifier4619: new org.antlr.runtime.BitSet([0x40000002, 0x00000000]),
+ FOLLOW_COLLATION_in_p_OrderModifier4627: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_OrderModifier4629: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_RETURN_in_p_ReturnClause4660: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ReturnClause4662: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SOME_in_p_QuantifiedExpr4693: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_EVERY_in_p_QuantifiedExpr4699: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_QuantifiedExpr4702: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_QuantifiedExpr4704: new org.antlr.runtime.BitSet([0x00080000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_QuantifiedExpr4706: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_QuantifiedExpr4711: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4713: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x08000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_QuantifiedExpr4716: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_QuantifiedExpr4718: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_QuantifiedExpr4720: new org.antlr.runtime.BitSet([0x00080000, 0x20000000]),
+ FOLLOW_p_TypeDeclaration_in_p_QuantifiedExpr4722: new org.antlr.runtime.BitSet([0x00000000, 0x20000000]),
+ FOLLOW_IN_in_p_QuantifiedExpr4727: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4729: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x08000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_SATISFIES_in_p_QuantifiedExpr4735: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_QuantifiedExpr4737: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_TYPESWITCH_in_p_TypeswitchExpr4766: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_TypeswitchExpr4768: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_TypeswitchExpr4770: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_TypeswitchExpr4772: new org.antlr.runtime.BitSet([0x04000000, 0x00000000]),
+ FOLLOW_p_CaseClause_in_p_TypeswitchExpr4774: new org.antlr.runtime.BitSet([0x04000000, 0x00000008]),
+ FOLLOW_DEFAULT_in_p_TypeswitchExpr4779: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x04000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_TypeswitchExpr4782: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_TypeswitchExpr4784: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x04000000, 0x00000000]),
+ FOLLOW_RETURN_in_p_TypeswitchExpr4790: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TypeswitchExpr4792: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_CASE_in_p_CaseClause4821: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000009, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_DOLLAR_in_p_CaseClause4824: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_CaseClause4826: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_AS_in_p_CaseClause4830: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000009, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SequenceType_in_p_CaseClause4834: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x04000000, 0x00000000]),
+ FOLLOW_RETURN_in_p_CaseClause4838: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_CaseClause4840: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_IF_in_p_IfExpr4869: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_IfExpr4871: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_IfExpr4873: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_IfExpr4875: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000020]),
+ FOLLOW_THEN_in_p_IfExpr4879: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_IfExpr4881: new org.antlr.runtime.BitSet([0x00000000, 0x00000800]),
+ FOLLOW_ELSE_in_p_IfExpr4885: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_IfExpr4887: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AndExpr_in_p_OrExpr4914: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00020000, 0x00000000]),
+ FOLLOW_OR_in_p_OrExpr4920: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_AndExpr_in_p_OrExpr4923: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00020000, 0x00000000]),
+ FOLLOW_p_ComparisonExpr_in_p_AndExpr4954: new org.antlr.runtime.BitSet([0x00040002, 0x00000000]),
+ FOLLOW_AND_in_p_AndExpr4960: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ComparisonExpr_in_p_AndExpr4963: new org.antlr.runtime.BitSet([0x00040002, 0x00000000]),
+ FOLLOW_p_RangeExpr_in_p_ComparisonExpr4994: new org.antlr.runtime.BitSet([0x00000002, 0x02808000,0x00000892, 0x00000000,0x00000000, 0x00000000,0x007E0500, 0x00000000]),
+ FOLLOW_p_ValueComp_in_p_ComparisonExpr4999: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_GeneralComp_in_p_ComparisonExpr5003: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_NodeComp_in_p_ComparisonExpr5007: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_RangeExpr_in_p_ComparisonExpr5010: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AdditiveExpr_in_p_RangeExpr5041: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000040]),
+ FOLLOW_TO_in_p_RangeExpr5047: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_AdditiveExpr_in_p_RangeExpr5050: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_MultiplicativeExpr_in_p_AdditiveExpr5081: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00018000, 0x00000000]),
+ FOLLOW_set_in_p_AdditiveExpr5085: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_MultiplicativeExpr_in_p_AdditiveExpr5093: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00018000, 0x00000000]),
+ FOLLOW_p_UnionExpr_in_p_MultiplicativeExpr5124: new org.antlr.runtime.BitSet([0x00000002, 0x04000080,0x00000100, 0x00000000,0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_STAR_in_p_MultiplicativeExpr5129: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_DIV_in_p_MultiplicativeExpr5135: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_IDIV_in_p_MultiplicativeExpr5141: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_MOD_in_p_MultiplicativeExpr5149: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_UnionExpr_in_p_MultiplicativeExpr5153: new org.antlr.runtime.BitSet([0x00000002, 0x04000080,0x00000100, 0x00000000,0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_p_IntersectExceptExpr_in_p_UnionExpr5184: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000200,0x00000000, 0x00000000,0x00000000, 0x00000001]),
+ FOLLOW_UNION_in_p_UnionExpr5191: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_VBAR_in_p_UnionExpr5195: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_IntersectExceptExpr_in_p_UnionExpr5198: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000200,0x00000000, 0x00000000,0x00000000, 0x00000001]),
+ FOLLOW_p_InstanceofExpr_in_p_IntersectExceptExpr5229: new org.antlr.runtime.BitSet([0x00000002, 0x00020000,0x00000001, 0x00000000]),
+ FOLLOW_INTERSECT_in_p_IntersectExceptExpr5236: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_EXCEPT_in_p_IntersectExceptExpr5242: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_InstanceofExpr_in_p_IntersectExceptExpr5246: new org.antlr.runtime.BitSet([0x00000002, 0x00020000,0x00000001, 0x00000000]),
+ FOLLOW_p_TreatExpr_in_p_InstanceofExpr5277: new org.antlr.runtime.BitSet([0x00000002, 0x80000000]),
+ FOLLOW_INSTANCE_in_p_InstanceofExpr5283: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00008000, 0x00000000]),
+ FOLLOW_OF_in_p_InstanceofExpr5287: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000009, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SequenceType_in_p_InstanceofExpr5289: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CastableExpr_in_p_TreatExpr5319: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000080]),
+ FOLLOW_TREAT_in_p_TreatExpr5325: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_AS_in_p_TreatExpr5329: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000009, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SequenceType_in_p_TreatExpr5331: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CastExpr_in_p_CastableExpr5370: new org.antlr.runtime.BitSet([0x10000002, 0x00000000]),
+ FOLLOW_CASTABLE_in_p_CastableExpr5376: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_AS_in_p_CastableExpr5380: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SingleType_in_p_CastableExpr5382: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_UnaryExpr_in_p_CastExpr5421: new org.antlr.runtime.BitSet([0x08000002, 0x00000000]),
+ FOLLOW_CAST_in_p_CastExpr5427: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_AS_in_p_CastExpr5431: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SingleType_in_p_CastExpr5433: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PLUS_in_p_UnaryExpr5465: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_MINUS_in_p_UnaryExpr5469: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ValueExpr_in_p_UnaryExpr5473: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ValidateExpr_in_p_ValueExpr5529: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_PathExpr_in_p_ValueExpr5541: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExtensionExpr_in_p_ValueExpr5553: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_GeneralComp0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_EQ_in_p_ValueComp5632: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NE_in_p_ValueComp5638: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LT_in_p_ValueComp5644: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LE_in_p_ValueComp5650: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GT_in_p_ValueComp5656: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GE_in_p_ValueComp5662: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_IS_in_p_NodeComp5694: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SMALLER_SMALLER_in_p_NodeComp5698: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GREATER_GREATER_in_p_NodeComp5702: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_VALIDATE_in_p_ValidateExpr5732: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000008, 0x00000004,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_ValidationMode_in_p_ValidateExpr5734: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_ValidateExpr5737: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_ValidateExpr5739: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_ValidateExpr5741: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LAX_in_p_ValidationMode5772: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_STRICT_in_p_ValidationMode5778: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_AS_in_p_ValidationMode5785: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ValidationMode5787: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_Pragma_in_p_ExtensionExpr5818: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00200000]),
+ FOLLOW_LBRACKET_in_p_ExtensionExpr5821: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C02B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_ExtensionExpr5823: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_ExtensionExpr5826: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SLASH_in_p_PathExpr5868: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_RelativePathExpr_in_p_PathExpr5870: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SLASH_in_p_PathExpr5883: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SLASH_SLASH_in_p_PathExpr5895: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_RelativePathExpr_in_p_PathExpr5897: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_RelativePathExpr_in_p_PathExpr5909: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_StepExpr_in_p_RelativePathExpr5937: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x01800000, 0x00000000]),
+ FOLLOW_set_in_p_RelativePathExpr5940: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_StepExpr_in_p_RelativePathExpr5948: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x01800000, 0x00000000]),
+ FOLLOW_p_AxisStep_in_p_StepExpr5976: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_FilterExpr_in_p_StepExpr5988: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ReverseStep_in_p_AxisStep6015: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000040, 0x00000000]),
+ FOLLOW_p_ForwardStep_in_p_AxisStep6019: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000040, 0x00000000]),
+ FOLLOW_p_PredicateList_in_p_AxisStep6022: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ForwardAxis_in_p_ForwardStep6049: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x04004001, 0x00004080,0x00000000, 0x00800000]),
+ FOLLOW_p_NodeTest_in_p_ForwardStep6051: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AbbrevForwardStep_in_p_ForwardStep6056: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_CHILD_in_p_ForwardAxis6082: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6084: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DESCENDANT_in_p_ForwardAxis6096: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6098: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ATTRIBUTE_in_p_ForwardAxis6110: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6112: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SELF_in_p_ForwardAxis6124: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6126: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DESCENDANT_OR_SELF_in_p_ForwardAxis6138: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6140: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FOLLOWING_SIBLING_in_p_ForwardAxis6152: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6154: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FOLLOWING_in_p_ForwardAxis6166: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ForwardAxis6168: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ATTR_SIGN_in_p_AbbrevForwardStep6194: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x04004001, 0x00004080,0x00000000, 0x00800000]),
+ FOLLOW_p_NodeTest_in_p_AbbrevForwardStep6197: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ReverseAxis_in_p_ReverseStep6224: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x04004001, 0x00004080,0x00000000, 0x00800000]),
+ FOLLOW_p_NodeTest_in_p_ReverseStep6226: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AbbrevReverseStep_in_p_ReverseStep6231: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PARENT_in_p_ReverseAxis6257: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ReverseAxis6259: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ANCESTOR_in_p_ReverseAxis6271: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ReverseAxis6273: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PRECEDING_SIBLING_in_p_ReverseAxis6285: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ReverseAxis6287: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PRECEDING_in_p_ReverseAxis6299: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ReverseAxis6301: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ANCESTOR_OR_SELF_in_p_ReverseAxis6313: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x10000000, 0x00000000]),
+ FOLLOW_COLON_COLON_in_p_ReverseAxis6315: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOT_DOT_in_p_AbbrevReverseStep6341: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_KindTest_in_p_NodeTest6367: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_NameTest_in_p_NodeTest6371: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_NameTest6397: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Wildcard_in_p_NameTest6401: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_STAR_in_p_Wildcard6427: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000]),
+ FOLLOW_COLON_in_p_Wildcard6430: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_Wildcard6432: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_NCName_in_p_Wildcard6439: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000]),
+ FOLLOW_COLON_in_p_Wildcard6441: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_STAR_in_p_Wildcard6443: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_PrimaryExpr_in_p_FilterExpr6479: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000040, 0x00000000]),
+ FOLLOW_p_PredicateList_in_p_FilterExpr6481: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Predicate_in_p_PredicateList6509: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000040, 0x00000000]),
+ FOLLOW_LSQUARE_in_p_Predicate6538: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_Predicate6540: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000080, 0x00000000]),
+ FOLLOW_RSQUARE_in_p_Predicate6542: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Literal_in_p_PrimaryExpr6570: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_VarRef_in_p_PrimaryExpr6582: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ParenthesizedExpr_in_p_PrimaryExpr6594: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ContextItemExpr_in_p_PrimaryExpr6606: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_FunctionCall_in_p_PrimaryExpr6618: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OrderedExpr_in_p_PrimaryExpr6630: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_UnorderedExpr_in_p_PrimaryExpr6642: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Constructor_in_p_PrimaryExpr6654: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_NumericLiteral_in_p_Literal6682: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_StringLiteral_in_p_Literal6686: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_NumericLiteral0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_VarRef6758: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_VarRef6760: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_VarName6788: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_ParenthesizedExpr6816: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00F, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_ParenthesizedExpr6818: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_ParenthesizedExpr6821: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOT_in_p_ContextItemExpr6849: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ORDERED_in_p_OrderedExpr6879: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_OrderedExpr6882: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_OrderedExpr6884: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_OrderedExpr6886: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_UNORDERED_in_p_UnorderedExpr6916: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_UnorderedExpr6919: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_UnorderedExpr6921: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_UnorderedExpr6923: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_FQName_in_p_FunctionCall6952: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_FunctionCall6954: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00F, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_FunctionCall6957: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_COMMA_in_p_FunctionCall6960: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_FunctionCall6962: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_FunctionCall6968: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_DirectConstructor_in_p_Constructor7000: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ComputedConstructor_in_p_Constructor7004: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_DirElemConstructor_in_p_DirectConstructor7032: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_DirCommentConstructor_in_p_DirectConstructor7044: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_DirPIConstructor_in_p_DirectConstructor7056: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SMALLER_in_p_DirElemConstructor7084: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_DirElemConstructor7100: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x20040000, 0x00080000]),
+ FOLLOW_p_DirAttributeList_in_p_DirElemConstructor7102: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x20040000, 0x00000000]),
+ FOLLOW_EMPTY_CLOSE_TAG_in_p_DirElemConstructor7118: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_GREATER_in_p_DirElemConstructor7123: new org.antlr.runtime.BitSet([0x00000FC0, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x40020010, 0x00C00000]),
+ FOLLOW_pm_DirElemContent_in_p_DirElemConstructor7125: new org.antlr.runtime.BitSet([0x00000FC0, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x40020010, 0x00C00000]),
+ FOLLOW_CLOSE_TAG_in_p_DirElemConstructor7128: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_DirElemConstructor7130: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00040000, 0x00080000]),
+ FOLLOW_S_in_p_DirElemConstructor7132: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00040000, 0x00000000]),
+ FOLLOW_GREATER_in_p_DirElemConstructor7135: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_S_in_p_DirAttributeList7212: new org.antlr.runtime.BitSet([0xFFFF0002, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00084000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_DirAttributeList7215: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00080000]),
+ FOLLOW_S_in_p_DirAttributeList7217: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000100, 0x00000000]),
+ FOLLOW_EQUAL_in_p_DirAttributeList7220: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00080C00]),
+ FOLLOW_S_in_p_DirAttributeList7222: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00080C00]),
+ FOLLOW_p_DirAttributeValue_in_p_DirAttributeList7225: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00080000]),
+ FOLLOW_QUOT_in_p_DirAttributeValue7256: new org.antlr.runtime.BitSet([0x00002F10, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000800]),
+ FOLLOW_ESCAPE_QUOT_in_p_DirAttributeValue7259: new org.antlr.runtime.BitSet([0x00002F10, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000800]),
+ FOLLOW_pm_QuotAttrValueContent_in_p_DirAttributeValue7263: new org.antlr.runtime.BitSet([0x00002F10, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000800]),
+ FOLLOW_QUOT_in_p_DirAttributeValue7267: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_APOS_in_p_DirAttributeValue7306: new org.antlr.runtime.BitSet([0x00001F20, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000400]),
+ FOLLOW_ESCAPE_APOS_in_p_DirAttributeValue7309: new org.antlr.runtime.BitSet([0x00001F20, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000400]),
+ FOLLOW_pm_AposAttrValueContent_in_p_DirAttributeValue7313: new org.antlr.runtime.BitSet([0x00001F20, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000400]),
+ FOLLOW_APOS_in_p_DirAttributeValue7317: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_QuotAttrContentChar_in_pm_QuotAttrValueContent7369: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_CommonContent_in_pm_QuotAttrValueContent7373: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ElemEnclosedExpr_in_pm_QuotAttrValueContent7377: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_QuotAttrContentChar_in_pg_QuotAttrContentChar7406: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_AposAttrContentChar_in_pm_AposAttrValueContent7459: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_CommonContent_in_pm_AposAttrValueContent7463: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ElemEnclosedExpr_in_pm_AposAttrValueContent7467: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_AposAttrContentChar_in_pg_AposAttrContentChar7496: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_DirectConstructor_in_pm_DirElemContent7547: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_CDataSection_in_pm_DirElemContent7559: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ElemEnclosedExpr_in_pm_DirElemContent7571: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_CommonContent_in_pm_DirElemContent7583: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pg_ElementContentChar_in_pm_DirElemContent7595: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_L_ElementContentChar_in_pg_ElementContentChar7624: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_CommonContent_in_pg_CommonContent7680: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_pm_CommonContent0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_ElemEnclosedExpr7776: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_ElemEnclosedExpr7793: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_ElemEnclosedExpr7810: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompDocConstructor_in_p_ComputedConstructor7861: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompElemConstructor_in_p_ComputedConstructor7873: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompAttrConstructor_in_p_ComputedConstructor7885: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompNamespaceConstructor_in_p_ComputedConstructor7897: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompTextConstructor_in_p_ComputedConstructor7909: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompCommentConstructor_in_p_ComputedConstructor7921: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompPIConstructor_in_p_ComputedConstructor7933: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CompBinaryConstructor_in_p_ComputedConstructor7948: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOCUMENT_in_p_CompDocConstructor7982: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompDocConstructor7985: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompDocConstructor7987: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompDocConstructor7989: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ELEMENT_in_p_CompElemConstructor8030: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000011, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_CompElemConstructor8034: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompElemConstructor8039: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompElemConstructor8041: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompElemConstructor8043: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompElemConstructor8047: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C02B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompElemConstructor8049: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompElemConstructor8052: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ATTRIBUTE_in_p_CompAttrConstructor8085: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000011, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_CompAttrConstructor8089: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompAttrConstructor8094: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompAttrConstructor8096: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompAttrConstructor8098: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompAttrConstructor8102: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C02B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompAttrConstructor8104: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompAttrConstructor8107: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NAMESPACE_in_p_CompNamespaceConstructor8135: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000011, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_CompNamespaceConstructor8139: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompNamespaceConstructor8144: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompNamespaceConstructor8146: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompNamespaceConstructor8148: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompNamespaceConstructor8152: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C02B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompNamespaceConstructor8154: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompNamespaceConstructor8157: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_TEXT_in_p_CompTextConstructor8193: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompTextConstructor8196: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompTextConstructor8198: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompTextConstructor8200: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_BINARY_in_p_CompBinaryConstructor8230: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompBinaryConstructor8233: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompBinaryConstructor8235: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompBinaryConstructor8237: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COMMENT_in_p_CompCommentConstructor8267: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompCommentConstructor8270: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompCommentConstructor8272: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompCommentConstructor8274: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PROCESSING_INSTRUCTION_in_p_CompPIConstructor8305: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000011, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_CompPIConstructor8309: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompPIConstructor8314: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompPIConstructor8316: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompPIConstructor8318: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CompPIConstructor8322: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C02B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CompPIConstructor8324: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CompPIConstructor8327: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AtomicType_in_p_SingleType8355: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00002000, 0x00000000]),
+ FOLLOW_QUESTION_in_p_SingleType8357: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_AS_in_p_TypeDeclaration8388: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000009, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_SequenceType_in_p_TypeDeclaration8393: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_EMPTY_SEQUENCE_in_p_SequenceType8448: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_SequenceType8453: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_SequenceType8457: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ItemType_in_p_SequenceType8506: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x0000E000, 0x00000000]),
+ FOLLOW_p_OccurrenceIndicator_in_p_SequenceType8517: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_OccurrenceIndicator0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_KindTest_in_p_ItemType8619: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_BINARY_in_p_ItemType8659: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_ItemType8661: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_ItemType8663: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ITEM_in_p_ItemType8705: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_ItemType8707: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_ItemType8709: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AtomicType_in_p_ItemType8750: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_AtomicType8776: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_DocumentTest_in_p_KindTest8826: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ElementTest_in_p_KindTest8838: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AttributeTest_in_p_KindTest8850: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_SchemaElementTest_in_p_KindTest8862: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_SchemaAttributeTest_in_p_KindTest8874: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_NamespaceNodeTest_in_p_KindTest8886: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_PITest_in_p_KindTest8898: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_CommentTest_in_p_KindTest8910: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_TextTest_in_p_KindTest8922: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AnyKindTest_in_p_KindTest8934: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NODE_in_p_AnyKindTest8962: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_AnyKindTest8964: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_AnyKindTest8966: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOCUMENT_NODE_in_p_DocumentTest8994: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_DocumentTest8996: new org.antlr.runtime.BitSet([0x00000000, 0x00000400,0x40000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_p_ElementTest_in_p_DocumentTest8999: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_p_SchemaElementTest_in_p_DocumentTest9003: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_DocumentTest9007: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_TEXT_in_p_TextTest9027: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_TextTest9029: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_TextTest9031: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COMMENT_in_p_CommentTest9059: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_CommentTest9061: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_CommentTest9063: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NAMESPACE_NODE_in_p_NamespaceNodeTest9089: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_NamespaceNodeTest9091: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_NamespaceNodeTest9093: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_PROCESSING_INSTRUCTION_in_p_PITest9121: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_PITest9123: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000005, 0x00004C00,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_PITest9126: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_p_StringLiteral_in_p_PITest9130: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_PITest9134: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ATTRIBUTE_in_p_AttributeTest9162: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_AttributeTest9164: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00004005, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_AttribNameOrWildcard_in_p_AttributeTest9167: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_COMMA_in_p_AttributeTest9170: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_TypeName_in_p_AttributeTest9172: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_AttributeTest9178: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_AttribNameOrWildcard9208: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_STAR_in_p_AttribNameOrWildcard9212: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SCHEMA_ATTRIBUTE_in_p_SchemaAttributeTest9240: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_SchemaAttributeTest9242: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_AttributeDeclaration_in_p_SchemaAttributeTest9244: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_SchemaAttributeTest9246: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_AttributeName_in_p_AttributeDeclaration9272: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ELEMENT_in_p_ElementTest9300: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_ElementTest9302: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00004005, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_ElementNameOrWildcard_in_p_ElementTest9305: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_COMMA_in_p_ElementTest9308: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_TypeName_in_p_ElementTest9310: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00002004, 0x00000000]),
+ FOLLOW_QUESTION_in_p_ElementTest9312: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_ElementTest9319: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_ElementNameOrWildcard9347: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_STAR_in_p_ElementNameOrWildcard9351: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SCHEMA_ELEMENT_in_p_SchemaElementTest9371: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_SchemaElementTest9373: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_ElementDeclaration_in_p_SchemaElementTest9375: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_SchemaElementTest9377: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ElementName_in_p_ElementDeclaration9403: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_AttributeName9431: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_ElementName9459: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_TypeName9487: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_TryClause_in_p_TryCatchExpr9519: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00010000]),
+ FOLLOW_p_CatchClause_in_p_TryCatchExpr9521: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00010000]),
+ FOLLOW_TRY_in_p_TryClause9550: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_TryClause9552: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_TryClause9554: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_TryClause9556: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_CATCH_in_p_CatchClause9587: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x04004013, 0x00004080,0x00000000, 0x00800000]),
+ FOLLOW_p_CatchErrorList_in_p_CatchClause9589: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000012, 0x00000000]),
+ FOLLOW_p_CatchVars_in_p_CatchClause9591: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_CatchClause9594: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_Expr_in_p_CatchClause9596: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_CatchClause9598: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_NameTest_in_p_CatchErrorList9624: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000001]),
+ FOLLOW_VBAR_in_p_CatchErrorList9627: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x04004001, 0x00004080,0x00000000, 0x00800000]),
+ FOLLOW_p_NameTest_in_p_CatchErrorList9629: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000001]),
+ FOLLOW_LPAREN_in_p_CatchVars9675: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_CatchVars9677: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_CatchVars9679: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_COMMA_in_p_CatchVars9682: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_CatchVars9684: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_CatchVars9686: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001004, 0x00000000]),
+ FOLLOW_COMMA_in_p_CatchVars9689: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_CatchVars9691: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_CatchVars9693: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_CatchVars9699: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_QUOT_in_p_StringLiteral9748: new org.antlr.runtime.BitSet([0xFFFFFFF0, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFF7FF, 0xFFFFFFFF,0xFFFFFFFF, 0x00FFFFFF]),
+ FOLLOW_p_QuotStringLiteralContent_in_p_StringLiteral9752: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000800]),
+ FOLLOW_QUOT_in_p_StringLiteral9754: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_APOS_in_p_StringLiteral9795: new org.antlr.runtime.BitSet([0xFFFFFFF0, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFF7FF, 0xFFFFFFFF,0xFFFFFFFF, 0x00FFFFFF]),
+ FOLLOW_p_AposStringLiteralContent_in_p_StringLiteral9799: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000400]),
+ FOLLOW_APOS_in_p_StringLiteral9801: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_QuotStringLiteralContent9857: new org.antlr.runtime.BitSet([0xFFFFFFF2, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFF7FF, 0xFFFFF7FF,0xFFFFFFFF, 0x00FFFFFF]),
+ FOLLOW_set_in_p_AposStringLiteralContent9909: new org.antlr.runtime.BitSet([0xFFFFFFF2, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0xFFFFF7FF, 0xFFFFFBFF,0xFFFFFFFF, 0x00FFFFFF]),
+ FOLLOW_p_NCName_in_p_QName9994: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000]),
+ FOLLOW_p_LocalNCName_in_p_QName9996: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COLON_in_p_LocalNCName10051: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_LocalNCName10053: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_FNCName_in_p_FQName10083: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000]),
+ FOLLOW_p_LocalFNCName_in_p_FQName10085: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COLON_in_p_LocalFNCName10113: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_NCName_in_p_LocalFNCName10115: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_NCName0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_set_in_p_FNCName0: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_pm_RevalidationDecl11839: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00800000, 0x00000000]),
+ FOLLOW_REVALIDATION_in_pm_RevalidationDecl11843: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000008, 0x00000004,0x01000000, 0x00000000]),
+ FOLLOW_STRICT_in_pm_RevalidationDecl11848: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LAX_in_pm_RevalidationDecl11854: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SKIP_in_pm_RevalidationDecl11860: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_AS_in_p_InsertExprTargetChoice11892: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00048000, 0x00000000]),
+ FOLLOW_FIRST_in_p_InsertExprTargetChoice11897: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00020000, 0x00000000]),
+ FOLLOW_LAST_in_p_InsertExprTargetChoice11903: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00020000, 0x00000000]),
+ FOLLOW_INTO_in_p_InsertExprTargetChoice11910: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_AFTER_in_p_InsertExprTargetChoice11926: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_BEFORE_in_p_InsertExprTargetChoice11940: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_INSERT_in_p_InsertExpr11968: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000,0x00100000, 0x00000000]),
+ FOLLOW_NODE_in_p_InsertExpr11973: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_NODES_in_p_InsertExpr11979: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_SourceExpr_in_p_InsertExpr11982: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x00021800, 0x00000000]),
+ FOLLOW_p_InsertExprTargetChoice_in_p_InsertExpr11984: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_TargetExpr_in_p_InsertExpr11986: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DELETE_in_p_DeleteExpr12015: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000,0x00100000, 0x00000000]),
+ FOLLOW_NODE_in_p_DeleteExpr12020: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_NODES_in_p_DeleteExpr12026: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_TargetExpr_in_p_DeleteExpr12029: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_REPLACE_in_p_ReplaceExpr12058: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000,0x04000000, 0x00000000]),
+ FOLLOW_VALUE_in_p_ReplaceExpr12063: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00008000, 0x00000000]),
+ FOLLOW_OF_in_p_ReplaceExpr12067: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_NODE_in_p_ReplaceExpr12073: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ReplaceExpr12075: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000]),
+ FOLLOW_WITH_in_p_ReplaceExpr12079: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ReplaceExpr12081: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_RENAME_in_p_RenameExpr12110: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_NODE_in_p_RenameExpr12114: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_TargetExpr_in_p_RenameExpr12116: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_AS_in_p_RenameExpr12118: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_NewNameExpr_in_p_RenameExpr12120: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExprSingle_in_p_SourceExpr12147: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExprSingle_in_p_TargetExpr12173: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExprSingle_in_p_NewNameExpr12199: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COPY_in_p_TransformExpr12227: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_TransformExpr12229: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_TransformExpr12231: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_p_TransformExpr12233: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TransformExpr12235: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00080000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_TransformExpr12238: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_TransformExpr12240: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_TransformExpr12242: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_p_TransformExpr12244: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TransformExpr12246: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00080000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_MODIFY_in_p_TransformExpr12252: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TransformExpr12254: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x04000000, 0x00000000]),
+ FOLLOW_RETURN_in_p_TransformExpr12258: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_TransformExpr12260: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ConcatExpr_in_pm_ApplyExpr12294: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_ApplyExpr12296: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ExprSingle_in_p_ConcatExpr12322: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_ConcatExpr12325: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ConcatExpr12327: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_BLOCK_in_p_BlockExpr12357: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_Block_in_p_BlockExpr12359: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_Block12385: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_pm_BlockDecls_in_p_Block12389: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_BlockBody_in_p_Block12393: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_Block12395: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_BlockVarDecl_in_pm_BlockDecls12451: new org.antlr.runtime.BitSet([0x00000002, 0x00000004]),
+ FOLLOW_DECLARE_in_pm_BlockVarDecl12506: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_pm_BlockVarDecl12508: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_pm_BlockVarDecl12512: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001200, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_pm_BlockVarDecl12516: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001200, 0x00000000]),
+ FOLLOW_BIND_in_pm_BlockVarDecl12520: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_BlockVarDecl12524: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_COMMA_in_pm_BlockVarDecl12529: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_pm_BlockVarDecl12531: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_pm_BlockVarDecl12533: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001200, 0x00000000]),
+ FOLLOW_p_TypeDeclaration_in_pm_BlockVarDecl12535: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001200, 0x00000000]),
+ FOLLOW_BIND_in_pm_BlockVarDecl12539: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_pm_BlockVarDecl12541: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_pm_BlockVarDecl12547: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_pm_Expr_in_p_BlockBody12607: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SET_in_p_AssignmentExpr12635: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_AssignmentExpr12637: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_AssignmentExpr12639: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000200, 0x00000000]),
+ FOLLOW_BIND_in_p_AssignmentExpr12641: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_AssignmentExpr12643: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_EXIT_in_p_ExitExpr12671: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_RETURNING_in_p_ExitExpr12675: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ExitExpr12677: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_WHILE_in_p_WhileExpr12705: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000002, 0x00000000]),
+ FOLLOW_LPAREN_in_p_WhileExpr12707: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_WhileExpr12709: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000004, 0x00000000]),
+ FOLLOW_RPAREN_in_p_WhileExpr12711: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_p_WhileBody_in_p_WhileExpr12713: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_Block_in_p_WhileBody12739: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_UsingClause_in_p_EvalExpr12769: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000010]),
+ FOLLOW_EVAL_in_p_EvalExpr12774: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000010, 0x00000000]),
+ FOLLOW_LBRACKET_in_p_EvalExpr12776: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_EvalExpr12778: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000020, 0x00000000]),
+ FOLLOW_RBRACKET_in_p_EvalExpr12780: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_USING_in_p_UsingClause12807: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_UsingClause12809: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_UsingClause12811: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_UsingClause12814: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_UsingClause12816: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_VarName_in_p_UsingClause12818: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00001000, 0x00000000]),
+ FOLLOW_DECLARE_in_p_CollectionDecl12853: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200A40]),
+ FOLLOW_p_CollProperties_in_p_CollectionDecl12855: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000200]),
+ FOLLOW_COLLECTION_in_p_CollectionDecl12859: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_CollectionDecl12861: new org.antlr.runtime.BitSet([0x00080000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_p_CollectionTypeDecl_in_p_CollectionDecl12863: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x08000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_WITH_in_p_CollectionDecl12869: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x04200000]),
+ FOLLOW_p_NodeModifier_in_p_CollectionDecl12871: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00100000, 0x00000000]),
+ FOLLOW_NODES_in_p_CollectionDecl12875: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_CollectionDecl12879: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_CONST_in_p_CollProperties12909: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_MUTABLE_in_p_CollProperties12915: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_APPEND_ONLY_in_p_CollProperties12929: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_QUEUE_in_p_CollProperties12935: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_ORDERED_in_p_CollProperties12949: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_UNORDERED_in_p_CollProperties12955: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00080000, 0x00000400,0x00000000, 0x01200840]),
+ FOLLOW_AS_in_p_CollectionTypeDecl12987: new org.antlr.runtime.BitSet([0x80400000, 0x00000600,0x62004000, 0x08000010]),
+ FOLLOW_p_KindTest_in_p_CollectionTypeDecl12989: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x0000E000, 0x00000000]),
+ FOLLOW_p_OccurrenceIndicator_in_p_CollectionTypeDecl12998: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_READ_ONLY_in_p_NodeModifier13029: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_MUTABLE_in_p_NodeModifier13035: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_p_IndexDecl13064: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08510080]),
+ FOLLOW_p_IndexProperties_in_p_IndexDecl13066: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00010000]),
+ FOLLOW_INDEX_in_p_IndexDecl13070: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_IndexName_in_p_IndexDecl13072: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00800000]),
+ FOLLOW_ON_in_p_IndexDecl13076: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00100000, 0x00000000]),
+ FOLLOW_NODES_in_p_IndexDecl13080: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_IndexDomainExpr_in_p_IndexDecl13082: new org.antlr.runtime.BitSet([0x02000000, 0x00000000]),
+ FOLLOW_BY_in_p_IndexDecl13086: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_IndexKeySpec_in_p_IndexDecl13088: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_COMMA_in_p_IndexDecl13091: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_IndexKeySpec_in_p_IndexDecl13093: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80001000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_IndexDecl13097: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_QName_in_p_IndexName13123: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_UNIQUE_in_p_IndexProperties13152: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_NON_in_p_IndexProperties13158: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x08000000]),
+ FOLLOW_UNIQUE_in_p_IndexProperties13162: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_VALUE_in_p_IndexProperties13176: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x02000000]),
+ FOLLOW_RANGE_in_p_IndexProperties13180: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_VALUE_in_p_IndexProperties13186: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00001000]),
+ FOLLOW_EQUALITY_in_p_IndexProperties13190: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_AUTOMATICALLY_in_p_IndexProperties13204: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00080000]),
+ FOLLOW_MAINTAINED_in_p_IndexProperties13208: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_MANUALLY_in_p_IndexProperties13214: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00080000]),
+ FOLLOW_MAINTAINED_in_p_IndexProperties13218: new org.antlr.runtime.BitSet([0x00000002, 0x00000000,0x00000000, 0x00000000,0x04000000, 0x08500080]),
+ FOLLOW_p_PathExpr_in_p_IndexDomainExpr13247: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_IndexKeyExpr_in_p_IndexKeySpec13272: new org.antlr.runtime.BitSet([0x00080000, 0x00000000]),
+ FOLLOW_p_IndexKeyTypeDecl_in_p_IndexKeySpec13274: new org.antlr.runtime.BitSet([0x40000002, 0x00000000]),
+ FOLLOW_p_IndexKeyCollation_in_p_IndexKeySpec13276: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_PathExpr_in_p_IndexKeyExpr13302: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_AS_in_p_IndexKeyTypeDecl13329: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_AtomicType_in_p_IndexKeyTypeDecl13331: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COLLATION_in_p_IndexKeyCollation13358: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000C00]),
+ FOLLOW_p_StringLiteral_in_p_IndexKeyCollation13360: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DECLARE_in_p_ICDecl13387: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00020000]),
+ FOLLOW_INTEGRITY_in_p_ICDecl13391: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000400]),
+ FOLLOW_CONSTRAINT_in_p_ICDecl13395: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICDecl13398: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00804000]),
+ FOLLOW_p_ICCollection_in_p_ICDecl13401: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_p_ICForeignKey_in_p_ICDecl13405: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x80000000, 0x00000000]),
+ FOLLOW_SEMICOLON_in_p_ICDecl13408: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_ON_in_p_ICCollection13435: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000200]),
+ FOLLOW_COLLECTION_in_p_ICCollection13439: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICCollection13442: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000,0x00000000, 0x00002000,0x00000008, 0x00000000]),
+ FOLLOW_p_ICCollSequence_in_p_ICCollection13445: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ICCollSequenceUnique_in_p_ICCollection13449: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_ICCollNode_in_p_ICCollection13453: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ICCollSequence13479: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICCollSequence13481: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000100]),
+ FOLLOW_CHECK_in_p_ICCollSequence13485: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ICCollSequence13487: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_NODE_in_p_ICCollSequenceUnique13514: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ICCollSequenceUnique13518: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICCollSequenceUnique13520: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000100]),
+ FOLLOW_CHECK_in_p_ICCollSequenceUnique13524: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x08000000]),
+ FOLLOW_UNIQUE_in_p_ICCollSequenceUnique13528: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00040000]),
+ FOLLOW_KEY_in_p_ICCollSequenceUnique13532: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_PathExpr_in_p_ICCollSequenceUnique13534: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FOREACH_in_p_ICCollNode13562: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_NODE_in_p_ICCollNode13566: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ICCollNode13568: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICCollNode13570: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000100]),
+ FOLLOW_CHECK_in_p_ICCollNode13574: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0783C00B, 0x07E04C80,0x00000000, 0x00C00000]),
+ FOLLOW_p_ExprSingle_in_p_ICCollNode13576: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FOREIGN_in_p_ICForeignKey13604: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00040000]),
+ FOLLOW_KEY_in_p_ICForeignKey13608: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00008000]),
+ FOLLOW_p_ICForeignKeySource_in_p_ICForeignKey13610: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000040]),
+ FOLLOW_p_ICForeignKeyTarget_in_p_ICForeignKey13612: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_FROM_in_p_ICForeignKeySource13640: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000200]),
+ FOLLOW_p_ICForeignKeyValues_in_p_ICForeignKeySource13642: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_TO_in_p_ICForeignKeyTarget13669: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000200]),
+ FOLLOW_p_ICForeignKeyValues_in_p_ICForeignKeyTarget13671: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_COLLECTION_in_p_ICForeignKeyValues13698: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICForeignKeyValues13700: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00004000, 0x00000000]),
+ FOLLOW_NODE_in_p_ICForeignKeyValues13704: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000008, 0x00000000]),
+ FOLLOW_DOLLAR_in_p_ICForeignKeyValues13706: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x00000001, 0x00004000,0x00000000, 0x00800000]),
+ FOLLOW_p_QName_in_p_ICForeignKeyValues13708: new org.antlr.runtime.BitSet([0x00000000, 0x00000000,0x00000000, 0x00000000,0x00000000, 0x00040000]),
+ FOLLOW_KEY_in_p_ICForeignKeyValues13712: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_PathExpr_in_p_ICForeignKeyValues13714: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_SLASH_in_synpred1_XQueryParser5860: new org.antlr.runtime.BitSet([0xFFFF0000, 0xFFFFFFFF,0xFFFFFFFF, 0xFFFFFFFF,0x7FFFFFFF, 0xFFEFFFFF,0x0782400B, 0x07C04C80,0x00000000, 0x00800000]),
+ FOLLOW_p_RelativePathExpr_in_synpred1_XQueryParser5862: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OccurrenceIndicator_in_synpred2_XQueryParser8510: new org.antlr.runtime.BitSet([0x00000002, 0x00000000]),
+ FOLLOW_p_OccurrenceIndicator_in_synpred3_XQueryParser12993: new org.antlr.runtime.BitSet([0x00000002, 0x00000000])
+});
+
+})();
+
+});