@informalsystems/quint
Version:
Core tool for the Quint specification language
402 lines • 24.7 kB
JavaScript
"use strict";
// Generated from ./src/generated/Quint.g4 by ANTLR 4.9.0-SNAPSHOT
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.QuintLexer = void 0;
const ATNDeserializer_1 = require("antlr4ts/atn/ATNDeserializer");
const Lexer_1 = require("antlr4ts/Lexer");
const LexerATNSimulator_1 = require("antlr4ts/atn/LexerATNSimulator");
const VocabularyImpl_1 = require("antlr4ts/VocabularyImpl");
const Utils = __importStar(require("antlr4ts/misc/Utils"));
class QuintLexer extends Lexer_1.Lexer {
// @Override
// @NotNull
get vocabulary() {
return QuintLexer.VOCABULARY;
}
// tslint:enable:no-trailing-whitespace
constructor(input) {
super(input);
this._interp = new LexerATNSimulator_1.LexerATNSimulator(QuintLexer._ATN, this);
}
// @Override
get grammarFileName() { return "Quint.g4"; }
// @Override
get ruleNames() { return QuintLexer.ruleNames; }
// @Override
get serializedATN() { return QuintLexer._serializedATN; }
// @Override
get channelNames() { return QuintLexer.channelNames; }
// @Override
get modeNames() { return QuintLexer.modeNames; }
static get _ATN() {
if (!QuintLexer.__ATN) {
QuintLexer.__ATN = new ATNDeserializer_1.ATNDeserializer().deserialize(Utils.toCharArray(QuintLexer._serializedATN));
}
return QuintLexer.__ATN;
}
}
exports.QuintLexer = QuintLexer;
QuintLexer.T__0 = 1;
QuintLexer.T__1 = 2;
QuintLexer.T__2 = 3;
QuintLexer.T__3 = 4;
QuintLexer.T__4 = 5;
QuintLexer.T__5 = 6;
QuintLexer.T__6 = 7;
QuintLexer.T__7 = 8;
QuintLexer.T__8 = 9;
QuintLexer.T__9 = 10;
QuintLexer.T__10 = 11;
QuintLexer.T__11 = 12;
QuintLexer.T__12 = 13;
QuintLexer.T__13 = 14;
QuintLexer.T__14 = 15;
QuintLexer.T__15 = 16;
QuintLexer.T__16 = 17;
QuintLexer.T__17 = 18;
QuintLexer.T__18 = 19;
QuintLexer.T__19 = 20;
QuintLexer.T__20 = 21;
QuintLexer.T__21 = 22;
QuintLexer.T__22 = 23;
QuintLexer.T__23 = 24;
QuintLexer.T__24 = 25;
QuintLexer.T__25 = 26;
QuintLexer.T__26 = 27;
QuintLexer.T__27 = 28;
QuintLexer.T__28 = 29;
QuintLexer.T__29 = 30;
QuintLexer.T__30 = 31;
QuintLexer.T__31 = 32;
QuintLexer.T__32 = 33;
QuintLexer.T__33 = 34;
QuintLexer.T__34 = 35;
QuintLexer.STRING = 36;
QuintLexer.BOOL = 37;
QuintLexer.INT = 38;
QuintLexer.AND = 39;
QuintLexer.OR = 40;
QuintLexer.IFF = 41;
QuintLexer.IMPLIES = 42;
QuintLexer.MATCH = 43;
QuintLexer.PLUS = 44;
QuintLexer.MINUS = 45;
QuintLexer.MUL = 46;
QuintLexer.DIV = 47;
QuintLexer.MOD = 48;
QuintLexer.GT = 49;
QuintLexer.LT = 50;
QuintLexer.GE = 51;
QuintLexer.LE = 52;
QuintLexer.NE = 53;
QuintLexer.EQ = 54;
QuintLexer.ASGN = 55;
QuintLexer.LPAREN = 56;
QuintLexer.RPAREN = 57;
QuintLexer.SET = 58;
QuintLexer.LIST = 59;
QuintLexer.IMPORT = 60;
QuintLexer.EXPORT = 61;
QuintLexer.FROM = 62;
QuintLexer.AS = 63;
QuintLexer.LOW_ID = 64;
QuintLexer.CAP_ID = 65;
QuintLexer.HASHBANG_LINE = 66;
QuintLexer.DOCCOMMENT = 67;
QuintLexer.LINE_COMMENT = 68;
QuintLexer.COMMENT = 69;
QuintLexer.WS = 70;
// tslint:disable:no-trailing-whitespace
QuintLexer.channelNames = [
"DEFAULT_TOKEN_CHANNEL", "HIDDEN",
];
// tslint:disable:no-trailing-whitespace
QuintLexer.modeNames = [
"DEFAULT_MODE",
];
QuintLexer.ruleNames = [
"T__0", "T__1", "T__2", "T__3", "T__4", "T__5", "T__6", "T__7", "T__8",
"T__9", "T__10", "T__11", "T__12", "T__13", "T__14", "T__15", "T__16",
"T__17", "T__18", "T__19", "T__20", "T__21", "T__22", "T__23", "T__24",
"T__25", "T__26", "T__27", "T__28", "T__29", "T__30", "T__31", "T__32",
"T__33", "T__34", "STRING", "BOOL", "INT", "AND", "OR", "IFF", "IMPLIES",
"MATCH", "PLUS", "MINUS", "MUL", "DIV", "MOD", "GT", "LT", "GE", "LE",
"NE", "EQ", "ASGN", "LPAREN", "RPAREN", "SET", "LIST", "IMPORT", "EXPORT",
"FROM", "AS", "LOW_ID", "CAP_ID", "HASHBANG_LINE", "DOCCOMMENT", "LINE_COMMENT",
"COMMENT", "WS",
];
QuintLexer._LITERAL_NAMES = [
undefined, "'module'", "'{'", "'}'", "'const'", "':'", "'var'", "'assume'",
"','", "';'", "'val'", "'pure'", "'type'", "'['", "']'", "'|'", "'def'",
"'action'", "'run'", "'temporal'", "'nondet'", "'.'", "'->'", "'=>'",
"'int'", "'str'", "'bool'", "'^'", "'''", "'all'", "'any'", "'if'", "'else'",
"'_'", "'...'", "'::'", undefined, undefined, undefined, "'and'", "'or'",
"'iff'", "'implies'", "'match'", "'+'", "'-'", "'*'", "'/'", "'%'", "'>'",
"'<'", "'>='", "'<='", "'!='", "'=='", "'='", "'('", "')'", "'Set'", "'List'",
"'import'", "'export'", "'from'", "'as'",
];
QuintLexer._SYMBOLIC_NAMES = [
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, "STRING", "BOOL", "INT", "AND", "OR", "IFF", "IMPLIES", "MATCH",
"PLUS", "MINUS", "MUL", "DIV", "MOD", "GT", "LT", "GE", "LE", "NE", "EQ",
"ASGN", "LPAREN", "RPAREN", "SET", "LIST", "IMPORT", "EXPORT", "FROM",
"AS", "LOW_ID", "CAP_ID", "HASHBANG_LINE", "DOCCOMMENT", "LINE_COMMENT",
"COMMENT", "WS",
];
QuintLexer.VOCABULARY = new VocabularyImpl_1.VocabularyImpl(QuintLexer._LITERAL_NAMES, QuintLexer._SYMBOLIC_NAMES, []);
QuintLexer._serializedATN = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x02H\u01F1\b\x01" +
"\x04\x02\t\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06" +
"\x04\x07\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f\x04\r" +
"\t\r\x04\x0E\t\x0E\x04\x0F\t\x0F\x04\x10\t\x10\x04\x11\t\x11\x04\x12\t" +
"\x12\x04\x13\t\x13\x04\x14\t\x14\x04\x15\t\x15\x04\x16\t\x16\x04\x17\t" +
"\x17\x04\x18\t\x18\x04\x19\t\x19\x04\x1A\t\x1A\x04\x1B\t\x1B\x04\x1C\t" +
"\x1C\x04\x1D\t\x1D\x04\x1E\t\x1E\x04\x1F\t\x1F\x04 \t \x04!\t!\x04\"\t" +
"\"\x04#\t#\x04$\t$\x04%\t%\x04&\t&\x04\'\t\'\x04(\t(\x04)\t)\x04*\t*\x04" +
"+\t+\x04,\t,\x04-\t-\x04.\t.\x04/\t/\x040\t0\x041\t1\x042\t2\x043\t3\x04" +
"4\t4\x045\t5\x046\t6\x047\t7\x048\t8\x049\t9\x04:\t:\x04;\t;\x04<\t<\x04" +
"=\t=\x04>\t>\x04?\t?\x04@\t@\x04A\tA\x04B\tB\x04C\tC\x04D\tD\x04E\tE\x04" +
"F\tF\x04G\tG\x03\x02\x03\x02\x03\x02\x03\x02\x03\x02\x03\x02\x03\x02\x03" +
"\x03\x03\x03\x03\x04\x03\x04\x03\x05\x03\x05\x03\x05\x03\x05\x03\x05\x03" +
"\x05\x03\x06\x03\x06\x03\x07\x03\x07\x03\x07\x03\x07\x03\b\x03\b\x03\b" +
"\x03\b\x03\b\x03\b\x03\b\x03\t\x03\t\x03\n\x03\n\x03\v\x03\v\x03\v\x03" +
"\v\x03\f\x03\f\x03\f\x03\f\x03\f\x03\r\x03\r\x03\r\x03\r\x03\r\x03\x0E" +
"\x03\x0E\x03\x0F\x03\x0F\x03\x10\x03\x10\x03\x11\x03\x11\x03\x11\x03\x11" +
"\x03\x12\x03\x12\x03\x12\x03\x12\x03\x12\x03\x12\x03\x12\x03\x13\x03\x13" +
"\x03\x13\x03\x13\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x14" +
"\x03\x14\x03\x14\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15\x03\x15" +
"\x03\x16\x03\x16\x03\x17\x03\x17\x03\x17\x03\x18\x03\x18\x03\x18\x03\x19" +
"\x03\x19\x03\x19\x03\x19\x03\x1A\x03\x1A\x03\x1A\x03\x1A\x03\x1B\x03\x1B" +
"\x03\x1B\x03\x1B\x03\x1B\x03\x1C\x03\x1C\x03\x1D\x03\x1D\x03\x1E\x03\x1E" +
"\x03\x1E\x03\x1E\x03\x1F\x03\x1F\x03\x1F\x03\x1F\x03 \x03 \x03 \x03!\x03" +
"!\x03!\x03!\x03!\x03\"\x03\"\x03#\x03#\x03#\x03#\x03$\x03$\x03$\x03%\x03" +
"%\x07%\u0119\n%\f%\x0E%\u011C\v%\x03%\x03%\x03&\x03&\x03&\x03&\x03&\x03" +
"&\x03&\x03&\x03&\x05&\u0129\n&\x03\'\x03\'\x03\'\x03\'\x03\'\x07\'\u0130" +
"\n\'\f\'\x0E\'\u0133\v\'\x03\'\x03\'\x03\'\x03\'\x03\'\x03\'\x03\'\x07" +
"\'\u013C\n\'\f\'\x0E\'\u013F\v\'\x05\'\u0141\n\'\x03(\x03(\x03(\x03(\x03" +
")\x03)\x03)\x03*\x03*\x03*\x03*\x03+\x03+\x03+\x03+\x03+\x03+\x03+\x03" +
"+\x03,\x03,\x03,\x03,\x03,\x03,\x03-\x03-\x03.\x03.\x03/\x03/\x030\x03" +
"0\x031\x031\x032\x032\x033\x033\x034\x034\x034\x035\x035\x035\x036\x03" +
"6\x036\x037\x037\x037\x038\x038\x039\x039\x03:\x03:\x03;\x03;\x03;\x03" +
";\x03<\x03<\x03<\x03<\x03<\x03=\x03=\x03=\x03=\x03=\x03=\x03=\x03>\x03" +
">\x03>\x03>\x03>\x03>\x03>\x03?\x03?\x03?\x03?\x03?\x03@\x03@\x03@\x03" +
"A\x03A\x07A\u019D\nA\fA\x0EA\u01A0\vA\x03A\x03A\x06A\u01A4\nA\rA\x0EA" +
"\u01A5\x05A\u01A8\nA\x03B\x03B\x07B\u01AC\nB\fB\x0EB\u01AF\vB\x03B\x03" +
"B\x06B\u01B3\nB\rB\x0EB\u01B4\x05B\u01B7\nB\x03C\x03C\x03C\x03C\x07C\u01BD" +
"\nC\fC\x0EC\u01C0\vC\x03C\x03C\x03D\x03D\x03D\x03D\x03D\x07D\u01C9\nD" +
"\fD\x0ED\u01CC\vD\x03D\x03D\x03E\x03E\x03E\x03E\x07E\u01D4\nE\fE\x0EE" +
"\u01D7\vE\x03E\x03E\x03E\x03E\x03F\x03F\x03F\x03F\x07F\u01E1\nF\fF\x0E" +
"F\u01E4\vF\x03F\x03F\x03F\x03F\x03F\x03G\x06G\u01EC\nG\rG\x0EG\u01ED\x03" +
"G\x03G\x07\u011A\u01BE\u01CA\u01D5\u01E2\x02\x02H\x03\x02\x03\x05\x02" +
"\x04\x07\x02\x05\t\x02\x06\v\x02\x07\r\x02\b\x0F\x02\t\x11\x02\n\x13\x02" +
"\v\x15\x02\f\x17\x02\r\x19\x02\x0E\x1B\x02\x0F\x1D\x02\x10\x1F\x02\x11" +
"!\x02\x12#\x02\x13%\x02\x14\'\x02\x15)\x02\x16+\x02\x17-\x02\x18/\x02" +
"\x191\x02\x1A3\x02\x1B5\x02\x1C7\x02\x1D9\x02\x1E;\x02\x1F=\x02 ?\x02" +
"!A\x02\"C\x02#E\x02$G\x02%I\x02&K\x02\'M\x02(O\x02)Q\x02*S\x02+U\x02," +
"W\x02-Y\x02.[\x02/]\x020_\x021a\x022c\x023e\x024g\x025i\x026k\x027m\x02" +
"8o\x029q\x02:s\x02;u\x02<w\x02=y\x02>{\x02?}\x02@\x7F\x02A\x81\x02B\x83" +
"\x02C\x85\x02D\x87\x02E\x89\x02F\x8B\x02G\x8D\x02H\x03\x02\n\x03\x023" +
";\x03\x022;\x05\x022;CHch\x03\x02c|\x06\x022;C\\aac|\x03\x02aa\x03\x02" +
"C\\\x05\x02\v\f\x0F\x0F\"\"\x02\u0203\x02\x03\x03\x02\x02\x02\x02\x05" +
"\x03\x02\x02\x02\x02\x07\x03\x02\x02\x02\x02\t\x03\x02\x02\x02\x02\v\x03" +
"\x02\x02\x02\x02\r\x03\x02\x02\x02\x02\x0F\x03\x02\x02\x02\x02\x11\x03" +
"\x02\x02\x02\x02\x13\x03\x02\x02\x02\x02\x15\x03\x02\x02\x02\x02\x17\x03" +
"\x02\x02\x02\x02\x19\x03\x02\x02\x02\x02\x1B\x03\x02\x02\x02\x02\x1D\x03" +
"\x02\x02\x02\x02\x1F\x03\x02\x02\x02\x02!\x03\x02\x02\x02\x02#\x03\x02" +
"\x02\x02\x02%\x03\x02\x02\x02\x02\'\x03\x02\x02\x02\x02)\x03\x02\x02\x02" +
"\x02+\x03\x02\x02\x02\x02-\x03\x02\x02\x02\x02/\x03\x02\x02\x02\x021\x03" +
"\x02\x02\x02\x023\x03\x02\x02\x02\x025\x03\x02\x02\x02\x027\x03\x02\x02" +
"\x02\x029\x03\x02\x02\x02\x02;\x03\x02\x02\x02\x02=\x03\x02\x02\x02\x02" +
"?\x03\x02\x02\x02\x02A\x03\x02\x02\x02\x02C\x03\x02\x02\x02\x02E\x03\x02" +
"\x02\x02\x02G\x03\x02\x02\x02\x02I\x03\x02\x02\x02\x02K\x03\x02\x02\x02" +
"\x02M\x03\x02\x02\x02\x02O\x03\x02\x02\x02\x02Q\x03\x02\x02\x02\x02S\x03" +
"\x02\x02\x02\x02U\x03\x02\x02\x02\x02W\x03\x02\x02\x02\x02Y\x03\x02\x02" +
"\x02\x02[\x03\x02\x02\x02\x02]\x03\x02\x02\x02\x02_\x03\x02\x02\x02\x02" +
"a\x03\x02\x02\x02\x02c\x03\x02\x02\x02\x02e\x03\x02\x02\x02\x02g\x03\x02" +
"\x02\x02\x02i\x03\x02\x02\x02\x02k\x03\x02\x02\x02\x02m\x03\x02\x02\x02" +
"\x02o\x03\x02\x02\x02\x02q\x03\x02\x02\x02\x02s\x03\x02\x02\x02\x02u\x03" +
"\x02\x02\x02\x02w\x03\x02\x02\x02\x02y\x03\x02\x02\x02\x02{\x03\x02\x02" +
"\x02\x02}\x03\x02\x02\x02\x02\x7F\x03\x02\x02\x02\x02\x81\x03\x02\x02" +
"\x02\x02\x83\x03\x02\x02\x02\x02\x85\x03\x02\x02\x02\x02\x87\x03\x02\x02" +
"\x02\x02\x89\x03\x02\x02\x02\x02\x8B\x03\x02\x02\x02\x02\x8D\x03\x02\x02" +
"\x02\x03\x8F\x03\x02\x02\x02\x05\x96\x03\x02\x02\x02\x07\x98\x03\x02\x02" +
"\x02\t\x9A\x03\x02\x02\x02\v\xA0\x03\x02\x02\x02\r\xA2\x03\x02\x02\x02" +
"\x0F\xA6\x03\x02\x02\x02\x11\xAD\x03\x02\x02\x02\x13\xAF\x03\x02\x02\x02" +
"\x15\xB1\x03\x02\x02\x02\x17\xB5\x03\x02\x02\x02\x19\xBA\x03\x02\x02\x02" +
"\x1B\xBF\x03\x02\x02\x02\x1D\xC1\x03\x02\x02\x02\x1F\xC3\x03\x02\x02\x02" +
"!\xC5\x03\x02\x02\x02#\xC9\x03\x02\x02\x02%\xD0\x03\x02\x02\x02\'\xD4" +
"\x03\x02\x02\x02)\xDD\x03\x02\x02\x02+\xE4\x03\x02\x02\x02-\xE6\x03\x02" +
"\x02\x02/\xE9\x03\x02\x02\x021\xEC\x03\x02\x02\x023\xF0\x03\x02\x02\x02" +
"5\xF4\x03\x02\x02\x027\xF9\x03\x02\x02\x029\xFB\x03\x02\x02\x02;\xFD\x03" +
"\x02\x02\x02=\u0101\x03\x02\x02\x02?\u0105\x03\x02\x02\x02A\u0108\x03" +
"\x02\x02\x02C\u010D\x03\x02\x02\x02E\u010F\x03\x02\x02\x02G\u0113\x03" +
"\x02\x02\x02I\u0116\x03\x02\x02\x02K\u0128\x03\x02\x02\x02M\u0140\x03" +
"\x02\x02\x02O\u0142\x03\x02\x02\x02Q\u0146\x03\x02\x02\x02S\u0149\x03" +
"\x02\x02\x02U\u014D\x03\x02\x02\x02W\u0155\x03\x02\x02\x02Y\u015B\x03" +
"\x02\x02\x02[\u015D\x03\x02\x02\x02]\u015F\x03\x02\x02\x02_\u0161\x03" +
"\x02\x02\x02a\u0163\x03\x02\x02\x02c\u0165\x03\x02\x02\x02e\u0167\x03" +
"\x02\x02\x02g\u0169\x03\x02\x02\x02i\u016C\x03\x02\x02\x02k\u016F\x03" +
"\x02\x02\x02m\u0172\x03\x02\x02\x02o\u0175\x03\x02\x02\x02q\u0177\x03" +
"\x02\x02\x02s\u0179\x03\x02\x02\x02u\u017B\x03\x02\x02\x02w\u017F\x03" +
"\x02\x02\x02y\u0184\x03\x02\x02\x02{\u018B\x03\x02\x02\x02}\u0192\x03" +
"\x02\x02\x02\x7F\u0197\x03\x02\x02\x02\x81\u01A7\x03\x02\x02\x02\x83\u01B6" +
"\x03\x02\x02\x02\x85\u01B8\x03\x02\x02\x02\x87\u01C3\x03\x02\x02\x02\x89" +
"\u01CF\x03\x02\x02\x02\x8B\u01DC\x03\x02\x02\x02\x8D\u01EB\x03\x02\x02" +
"\x02\x8F\x90\x07o\x02\x02\x90\x91\x07q\x02\x02\x91\x92\x07f\x02\x02\x92" +
"\x93\x07w\x02\x02\x93\x94\x07n\x02\x02\x94\x95\x07g\x02\x02\x95\x04\x03" +
"\x02\x02\x02\x96\x97\x07}\x02\x02\x97\x06\x03\x02\x02\x02\x98\x99\x07" +
"\x7F\x02\x02\x99\b\x03\x02\x02\x02\x9A\x9B\x07e\x02\x02\x9B\x9C\x07q\x02" +
"\x02\x9C\x9D\x07p\x02\x02\x9D\x9E\x07u\x02\x02\x9E\x9F\x07v\x02\x02\x9F" +
"\n\x03\x02\x02\x02\xA0\xA1\x07<\x02\x02\xA1\f\x03\x02\x02\x02\xA2\xA3" +
"\x07x\x02\x02\xA3\xA4\x07c\x02\x02\xA4\xA5\x07t\x02\x02\xA5\x0E\x03\x02" +
"\x02\x02\xA6\xA7\x07c\x02\x02\xA7\xA8\x07u\x02\x02\xA8\xA9\x07u\x02\x02" +
"\xA9\xAA\x07w\x02\x02\xAA\xAB\x07o\x02\x02\xAB\xAC\x07g\x02\x02\xAC\x10" +
"\x03\x02\x02\x02\xAD\xAE\x07.\x02\x02\xAE\x12\x03\x02\x02\x02\xAF\xB0" +
"\x07=\x02\x02\xB0\x14\x03\x02\x02\x02\xB1\xB2\x07x\x02\x02\xB2\xB3\x07" +
"c\x02\x02\xB3\xB4\x07n\x02\x02\xB4\x16\x03\x02\x02\x02\xB5\xB6\x07r\x02" +
"\x02\xB6\xB7\x07w\x02\x02\xB7\xB8\x07t\x02\x02\xB8\xB9\x07g\x02\x02\xB9" +
"\x18\x03\x02\x02\x02\xBA\xBB\x07v\x02\x02\xBB\xBC\x07{\x02\x02\xBC\xBD" +
"\x07r\x02\x02\xBD\xBE\x07g\x02\x02\xBE\x1A\x03\x02\x02\x02\xBF\xC0\x07" +
"]\x02\x02\xC0\x1C\x03\x02\x02\x02\xC1\xC2\x07_\x02\x02\xC2\x1E\x03\x02" +
"\x02\x02\xC3\xC4\x07~\x02\x02\xC4 \x03\x02\x02\x02\xC5\xC6\x07f\x02\x02" +
"\xC6\xC7\x07g\x02\x02\xC7\xC8\x07h\x02\x02\xC8\"\x03\x02\x02\x02\xC9\xCA" +
"\x07c\x02\x02\xCA\xCB\x07e\x02\x02\xCB\xCC\x07v\x02\x02\xCC\xCD\x07k\x02" +
"\x02\xCD\xCE\x07q\x02\x02\xCE\xCF\x07p\x02\x02\xCF$\x03\x02\x02\x02\xD0" +
"\xD1\x07t\x02\x02\xD1\xD2\x07w\x02\x02\xD2\xD3\x07p\x02\x02\xD3&\x03\x02" +
"\x02\x02\xD4\xD5\x07v\x02\x02\xD5\xD6\x07g\x02\x02\xD6\xD7\x07o\x02\x02" +
"\xD7\xD8\x07r\x02\x02\xD8\xD9\x07q\x02\x02\xD9\xDA\x07t\x02\x02\xDA\xDB" +
"\x07c\x02\x02\xDB\xDC\x07n\x02\x02\xDC(\x03\x02\x02\x02\xDD\xDE\x07p\x02" +
"\x02\xDE\xDF\x07q\x02\x02\xDF\xE0\x07p\x02\x02\xE0\xE1\x07f\x02\x02\xE1" +
"\xE2\x07g\x02\x02\xE2\xE3\x07v\x02\x02\xE3*\x03\x02\x02\x02\xE4\xE5\x07" +
"0\x02\x02\xE5,\x03\x02\x02\x02\xE6\xE7\x07/\x02\x02\xE7\xE8\x07@\x02\x02" +
"\xE8.\x03\x02\x02\x02\xE9\xEA\x07?\x02\x02\xEA\xEB\x07@\x02\x02\xEB0\x03" +
"\x02\x02\x02\xEC\xED\x07k\x02\x02\xED\xEE\x07p\x02\x02\xEE\xEF\x07v\x02" +
"\x02\xEF2\x03\x02\x02\x02\xF0\xF1\x07u\x02\x02\xF1\xF2\x07v\x02\x02\xF2" +
"\xF3\x07t\x02\x02\xF34\x03\x02\x02\x02\xF4\xF5\x07d\x02\x02\xF5\xF6\x07" +
"q\x02\x02\xF6\xF7\x07q\x02\x02\xF7\xF8\x07n\x02\x02\xF86\x03\x02\x02\x02" +
"\xF9\xFA\x07`\x02\x02\xFA8\x03\x02\x02\x02\xFB\xFC\x07)\x02\x02\xFC:\x03" +
"\x02\x02\x02\xFD\xFE\x07c\x02\x02\xFE\xFF\x07n\x02\x02\xFF\u0100\x07n" +
"\x02\x02\u0100<\x03\x02\x02\x02\u0101\u0102\x07c\x02\x02\u0102\u0103\x07" +
"p\x02\x02\u0103\u0104\x07{\x02\x02\u0104>\x03\x02\x02\x02\u0105\u0106" +
"\x07k\x02\x02\u0106\u0107\x07h\x02\x02\u0107@\x03\x02\x02\x02\u0108\u0109" +
"\x07g\x02\x02\u0109\u010A\x07n\x02\x02\u010A\u010B\x07u\x02\x02\u010B" +
"\u010C\x07g\x02\x02\u010CB\x03\x02\x02\x02\u010D\u010E\x07a\x02\x02\u010E" +
"D\x03\x02\x02\x02\u010F\u0110\x070\x02\x02\u0110\u0111\x070\x02\x02\u0111" +
"\u0112\x070\x02\x02\u0112F\x03\x02\x02\x02\u0113\u0114\x07<\x02\x02\u0114" +
"\u0115\x07<\x02\x02\u0115H\x03\x02\x02\x02\u0116\u011A\x07$\x02\x02\u0117" +
"\u0119\v\x02\x02\x02\u0118\u0117\x03\x02\x02\x02\u0119\u011C\x03\x02\x02" +
"\x02\u011A\u011B\x03\x02\x02\x02\u011A\u0118\x03\x02\x02\x02\u011B\u011D" +
"\x03\x02\x02\x02\u011C\u011A\x03\x02\x02\x02\u011D\u011E\x07$\x02\x02" +
"\u011EJ\x03\x02\x02\x02\u011F\u0120\x07h\x02\x02\u0120\u0121\x07c\x02" +
"\x02\u0121\u0122\x07n\x02\x02\u0122\u0123\x07u\x02\x02\u0123\u0129\x07" +
"g\x02\x02\u0124\u0125\x07v\x02\x02\u0125\u0126\x07t\x02\x02\u0126\u0127" +
"\x07w\x02\x02\u0127\u0129\x07g\x02\x02\u0128\u011F\x03\x02\x02\x02\u0128" +
"\u0124\x03\x02\x02\x02\u0129L\x03\x02\x02\x02\u012A\u0141\x072\x02\x02" +
"\u012B\u0131\t\x02\x02\x02\u012C\u0130\t\x03\x02\x02\u012D\u012E\x07a" +
"\x02\x02\u012E\u0130\t\x03\x02\x02\u012F\u012C\x03\x02\x02\x02\u012F\u012D" +
"\x03\x02\x02\x02\u0130\u0133\x03\x02\x02\x02\u0131\u012F\x03\x02\x02\x02" +
"\u0131\u0132\x03\x02\x02\x02\u0132\u0141\x03\x02\x02\x02\u0133\u0131\x03" +
"\x02\x02\x02\u0134\u0135\x072\x02\x02\u0135\u0136\x07z\x02\x02\u0136\u0137" +
"\x03\x02\x02\x02\u0137\u013D\t\x04\x02\x02\u0138\u013C\t\x04\x02\x02\u0139" +
"\u013A\x07a\x02\x02\u013A\u013C\t\x04\x02\x02\u013B\u0138\x03\x02\x02" +
"\x02\u013B\u0139\x03\x02\x02\x02\u013C\u013F\x03\x02\x02\x02\u013D\u013B" +
"\x03\x02\x02\x02\u013D\u013E\x03\x02\x02\x02\u013E\u0141\x03\x02\x02\x02" +
"\u013F\u013D\x03\x02\x02\x02\u0140\u012A\x03\x02\x02\x02\u0140\u012B\x03" +
"\x02\x02\x02\u0140\u0134\x03\x02\x02\x02\u0141N\x03\x02\x02\x02\u0142" +
"\u0143\x07c\x02\x02\u0143\u0144\x07p\x02\x02\u0144\u0145\x07f\x02\x02" +
"\u0145P\x03\x02\x02\x02\u0146\u0147\x07q\x02\x02\u0147\u0148\x07t\x02" +
"\x02\u0148R\x03\x02\x02\x02\u0149\u014A\x07k\x02\x02\u014A\u014B\x07h" +
"\x02\x02\u014B\u014C\x07h\x02\x02\u014CT\x03\x02\x02\x02\u014D\u014E\x07" +
"k\x02\x02\u014E\u014F\x07o\x02\x02\u014F\u0150\x07r\x02\x02\u0150\u0151" +
"\x07n\x02\x02\u0151\u0152\x07k\x02\x02\u0152\u0153\x07g\x02\x02\u0153" +
"\u0154\x07u\x02\x02\u0154V\x03\x02\x02\x02\u0155\u0156\x07o\x02\x02\u0156" +
"\u0157\x07c\x02\x02\u0157\u0158\x07v\x02\x02\u0158\u0159\x07e\x02\x02" +
"\u0159\u015A\x07j\x02\x02\u015AX\x03\x02\x02\x02\u015B\u015C\x07-\x02" +
"\x02\u015CZ\x03\x02\x02\x02\u015D\u015E\x07/\x02\x02\u015E\\\x03\x02\x02" +
"\x02\u015F\u0160\x07,\x02\x02\u0160^\x03\x02\x02\x02\u0161\u0162\x071" +
"\x02\x02\u0162`\x03\x02\x02\x02\u0163\u0164\x07\'\x02\x02\u0164b\x03\x02" +
"\x02\x02\u0165\u0166\x07@\x02\x02\u0166d\x03\x02\x02\x02\u0167\u0168\x07" +
">\x02\x02\u0168f\x03\x02\x02\x02\u0169\u016A\x07@\x02\x02\u016A\u016B" +
"\x07?\x02\x02\u016Bh\x03\x02\x02\x02\u016C\u016D\x07>\x02\x02\u016D\u016E" +
"\x07?\x02\x02\u016Ej\x03\x02\x02\x02\u016F\u0170\x07#\x02\x02\u0170\u0171" +
"\x07?\x02\x02\u0171l\x03\x02\x02\x02\u0172\u0173\x07?\x02\x02\u0173\u0174" +
"\x07?\x02\x02\u0174n\x03\x02\x02\x02\u0175\u0176\x07?\x02\x02\u0176p\x03" +
"\x02\x02\x02\u0177\u0178\x07*\x02\x02\u0178r\x03\x02\x02\x02\u0179\u017A" +
"\x07+\x02\x02\u017At\x03\x02\x02\x02\u017B\u017C\x07U\x02\x02\u017C\u017D" +
"\x07g\x02\x02\u017D\u017E\x07v\x02\x02\u017Ev\x03\x02\x02\x02\u017F\u0180" +
"\x07N\x02\x02\u0180\u0181\x07k\x02\x02\u0181\u0182\x07u\x02\x02\u0182" +
"\u0183\x07v\x02\x02\u0183x\x03\x02\x02\x02\u0184\u0185\x07k\x02\x02\u0185" +
"\u0186\x07o\x02\x02\u0186\u0187\x07r\x02\x02\u0187\u0188\x07q\x02\x02" +
"\u0188\u0189\x07t\x02\x02\u0189\u018A\x07v\x02\x02\u018Az\x03\x02\x02" +
"\x02\u018B\u018C\x07g\x02\x02\u018C\u018D\x07z\x02\x02\u018D\u018E\x07" +
"r\x02\x02\u018E\u018F\x07q\x02\x02\u018F\u0190\x07t\x02\x02\u0190\u0191" +
"\x07v\x02\x02\u0191|\x03\x02\x02\x02\u0192\u0193\x07h\x02\x02\u0193\u0194" +
"\x07t\x02\x02\u0194\u0195\x07q\x02\x02\u0195\u0196\x07o\x02\x02\u0196" +
"~\x03\x02\x02\x02\u0197\u0198\x07c\x02\x02\u0198\u0199\x07u\x02\x02\u0199" +
"\x80\x03\x02\x02\x02\u019A\u019E\t\x05\x02\x02\u019B\u019D\t\x06\x02\x02" +
"\u019C\u019B\x03\x02\x02\x02\u019D\u01A0\x03\x02\x02\x02\u019E\u019C\x03" +
"\x02\x02\x02\u019E\u019F\x03\x02\x02\x02\u019F\u01A8\x03\x02\x02\x02\u01A0" +
"\u019E\x03\x02\x02\x02\u01A1\u01A3\t\x07\x02\x02\u01A2\u01A4\t\x06\x02" +
"\x02\u01A3\u01A2\x03\x02\x02\x02\u01A4\u01A5\x03\x02\x02\x02\u01A5\u01A3" +
"\x03\x02\x02\x02\u01A5\u01A6\x03\x02\x02\x02\u01A6\u01A8\x03\x02\x02\x02" +
"\u01A7\u019A\x03\x02\x02\x02\u01A7\u01A1\x03\x02\x02\x02\u01A8\x82\x03" +
"\x02\x02\x02\u01A9\u01AD\t\b\x02\x02\u01AA\u01AC\t\x06\x02\x02\u01AB\u01AA" +
"\x03\x02\x02\x02\u01AC\u01AF\x03\x02\x02\x02\u01AD\u01AB\x03\x02\x02\x02" +
"\u01AD\u01AE\x03\x02\x02\x02\u01AE\u01B7\x03\x02\x02\x02\u01AF\u01AD\x03" +
"\x02\x02\x02\u01B0\u01B2\t\x07\x02\x02\u01B1\u01B3\t\x06\x02\x02\u01B2" +
"\u01B1\x03\x02\x02\x02\u01B3\u01B4\x03\x02\x02\x02\u01B4\u01B2\x03\x02" +
"\x02\x02\u01B4\u01B5\x03\x02\x02\x02\u01B5\u01B7\x03\x02\x02\x02\u01B6" +
"\u01A9\x03\x02\x02\x02\u01B6\u01B0\x03\x02\x02\x02\u01B7\x84\x03\x02\x02" +
"\x02\u01B8\u01B9\x07%\x02\x02\u01B9\u01BA\x07#\x02\x02\u01BA\u01BE\x03" +
"\x02\x02\x02\u01BB\u01BD\v\x02\x02\x02\u01BC\u01BB\x03\x02\x02\x02\u01BD" +
"\u01C0\x03\x02\x02\x02\u01BE\u01BF\x03\x02\x02\x02\u01BE\u01BC\x03\x02" +
"\x02\x02\u01BF\u01C1\x03\x02\x02\x02\u01C0\u01BE\x03\x02\x02\x02\u01C1" +
"\u01C2\x07\f\x02\x02\u01C2\x86\x03\x02\x02\x02\u01C3\u01C4\x071\x02\x02" +
"\u01C4\u01C5\x071\x02\x02\u01C5\u01C6\x071\x02\x02\u01C6\u01CA\x03\x02" +
"\x02\x02\u01C7\u01C9\v\x02\x02\x02\u01C8\u01C7\x03\x02\x02\x02\u01C9\u01CC" +
"\x03\x02\x02\x02\u01CA\u01CB\x03\x02\x02\x02\u01CA\u01C8\x03\x02\x02\x02" +
"\u01CB\u01CD\x03\x02\x02\x02\u01CC\u01CA\x03\x02\x02\x02\u01CD\u01CE\x07" +
"\f\x02\x02\u01CE\x88\x03\x02\x02\x02\u01CF\u01D0\x071\x02\x02\u01D0\u01D1" +
"\x071\x02\x02\u01D1\u01D5\x03\x02\x02\x02\u01D2\u01D4\v\x02\x02\x02\u01D3" +
"\u01D2\x03\x02\x02\x02\u01D4\u01D7\x03\x02\x02\x02\u01D5\u01D6\x03\x02" +
"\x02\x02\u01D5\u01D3\x03\x02\x02\x02\u01D6\u01D8\x03\x02\x02\x02\u01D7" +
"\u01D5\x03\x02\x02\x02\u01D8\u01D9\x07\f\x02\x02\u01D9\u01DA\x03\x02\x02" +
"\x02\u01DA\u01DB\bE\x02\x02\u01DB\x8A\x03\x02\x02\x02\u01DC\u01DD\x07" +
"1\x02\x02\u01DD\u01DE\x07,\x02\x02\u01DE\u01E2\x03\x02\x02\x02\u01DF\u01E1" +
"\v\x02\x02\x02\u01E0\u01DF\x03\x02\x02\x02\u01E1\u01E4\x03\x02\x02\x02" +
"\u01E2\u01E3\x03\x02\x02\x02\u01E2\u01E0\x03\x02\x02\x02\u01E3\u01E5\x03" +
"\x02\x02\x02\u01E4\u01E2\x03\x02\x02\x02\u01E5\u01E6\x07,\x02\x02\u01E6" +
"\u01E7\x071\x02\x02\u01E7\u01E8\x03\x02\x02\x02\u01E8\u01E9\bF\x02\x02" +
"\u01E9\x8C\x03\x02\x02\x02\u01EA\u01EC\t\t\x02\x02\u01EB\u01EA\x03\x02" +
"\x02\x02\u01EC\u01ED\x03\x02\x02\x02\u01ED\u01EB\x03\x02\x02\x02\u01ED" +
"\u01EE\x03\x02\x02\x02\u01EE\u01EF\x03\x02\x02\x02\u01EF\u01F0\bG\x02" +
"\x02\u01F0\x8E\x03\x02\x02\x02\x15\x02\u011A\u0128\u012F\u0131\u013B\u013D" +
"\u0140\u019E\u01A5\u01A7\u01AD\u01B4\u01B6\u01BE\u01CA\u01D5\u01E2\u01ED" +
"\x03\b\x02\x02";
//# sourceMappingURL=QuintLexer.js.map