bitmark-grammar
Version:
1,328 lines (1,311 loc) • 415 kB
text/typescript
// Generated from ./Choice/choiceParser.g4 by ANTLR 4.9.0-SNAPSHOT
import { ATN } from "antlr4ts/atn/ATN";
import { ATNDeserializer } from "antlr4ts/atn/ATNDeserializer";
import { FailedPredicateException } from "antlr4ts/FailedPredicateException";
import { NotNull } from "antlr4ts/Decorators";
import { NoViableAltException } from "antlr4ts/NoViableAltException";
import { Override } from "antlr4ts/Decorators";
import { Parser } from "antlr4ts/Parser";
import { ParserRuleContext } from "antlr4ts/ParserRuleContext";
import { ParserATNSimulator } from "antlr4ts/atn/ParserATNSimulator";
import { ParseTreeListener } from "antlr4ts/tree/ParseTreeListener";
import { ParseTreeVisitor } from "antlr4ts/tree/ParseTreeVisitor";
import { RecognitionException } from "antlr4ts/RecognitionException";
import { RuleContext } from "antlr4ts/RuleContext";
//import { RuleVersion } from "antlr4ts/RuleVersion";
import { TerminalNode } from "antlr4ts/tree/TerminalNode";
import { Token } from "antlr4ts/Token";
import { TokenStream } from "antlr4ts/TokenStream";
import { Vocabulary } from "antlr4ts/Vocabulary";
import { VocabularyImpl } from "antlr4ts/VocabularyImpl";
import * as Utils from "antlr4ts/misc/Utils";
import { choiceParserListener } from "./choiceParserListener";
export class choiceParser extends Parser {
public static readonly OPDOT = 1;
public static readonly S = 2;
public static readonly BitMultichoice1 = 3;
public static readonly BitMultichoice = 4;
public static readonly BitMultiresp1 = 5;
public static readonly BitMultiresp = 6;
public static readonly BitMultichoicetext = 7;
public static readonly BitHighlighttext = 8;
public static readonly OPDOLL = 9;
public static readonly OPBUL = 10;
public static readonly OPESC = 11;
public static readonly OPRANGLES = 12;
public static readonly OPRANGLEL = 13;
public static readonly OPDANGLE = 14;
public static readonly OPU = 15;
public static readonly OPB = 16;
public static readonly OPQ = 17;
public static readonly OPA = 18;
public static readonly OPP = 19;
public static readonly OPM = 20;
public static readonly OPS = 21;
public static readonly OPR = 22;
public static readonly OPC = 23;
public static readonly OPHASH = 24;
public static readonly CL = 25;
public static readonly COLON = 26;
public static readonly AMP = 27;
public static readonly DBLCOLON = 28;
public static readonly PLUS = 29;
public static readonly DotAt = 30;
public static readonly Greater = 31;
public static readonly Less = 32;
public static readonly Lparen = 33;
public static readonly Rparen = 34;
public static readonly RightAngle = 35;
public static readonly RightArrow = 36;
public static readonly DBLEQ = 37;
public static readonly HSPL = 38;
public static readonly HSPL2 = 39;
public static readonly SSPL = 40;
public static readonly SSPL2 = 41;
public static readonly StrParen = 42;
public static readonly COMMENT = 43;
public static readonly DCANY = 44;
public static readonly Image_type = 45;
public static readonly Audio_type = 46;
public static readonly Video_type = 47;
public static readonly ArticleText = 48;
public static readonly NOTCL = 49;
public static readonly NUMERIC = 50;
public static readonly STRING = 51;
public static readonly NL = 52;
public static readonly NOTBITMARK = 53;
public static readonly ELIPSIS = 54;
public static readonly SENTENCE = 55;
public static readonly BARSTRING = 56;
public static readonly OPAT = 57;
public static readonly AtProgress = 58;
public static readonly AtReference = 59;
public static readonly AtWidth = 60;
public static readonly AtHeight = 61;
public static readonly AtProgressPoints = 62;
public static readonly AtShortanswer = 63;
public static readonly AtLonganswer = 64;
public static readonly AtExampleWithStr = 65;
public static readonly AtExamplecol = 66;
public static readonly AtExamplecl = 67;
public static readonly AtSampleSolution = 68;
public static readonly AtPartialAnswerS = 69;
public static readonly AtPartialAnswer = 70;
public static readonly AtLabeltrue = 71;
public static readonly AtLabelfalse = 72;
public static readonly AtPoints = 73;
public static readonly AtSrc = 74;
public static readonly AtPartner = 75;
public static readonly OPATALT = 76;
public static readonly OPAMARK = 77;
public static readonly ShowInIndex = 78;
public static readonly OpAtCaption = 79;
public static readonly OpAtLicense = 80;
public static readonly OpAtCopyright = 81;
public static readonly OpAtSearch = 82;
public static readonly OpAtIsTracked = 83;
public static readonly OpAtIsInfoOnly = 84;
public static readonly AtDate = 85;
public static readonly Http = 86;
public static readonly Https = 87;
public static readonly AmpAudio = 88;
public static readonly AmpImage = 89;
public static readonly AmpImageZoom = 90;
public static readonly AmpImageWAudio = 91;
public static readonly AmpVideo = 92;
public static readonly AmpArticle = 93;
public static readonly AmpDocument = 94;
public static readonly AmpApp = 95;
public static readonly AmpWebsite = 96;
public static readonly AmpStillImageFilm = 97;
public static readonly AmpPdf = 98;
public static readonly OpAmpAudio = 99;
public static readonly OpAmpImage = 100;
public static readonly OpAmpImageZoom = 101;
public static readonly OpAmpImageWAudio = 102;
public static readonly OpAmpVideo = 103;
public static readonly OpAmpArticle = 104;
public static readonly OpAmpArticleAtt = 105;
public static readonly OpAmpDocument = 106;
public static readonly OpAmpApp = 107;
public static readonly OpAmpWebsite = 108;
public static readonly OpAmpStillImageFilm = 109;
public static readonly BracEnclose = 110;
public static readonly AmpAudioLink = 111;
public static readonly AmpImageLink = 112;
public static readonly AmpVideoLink = 113;
public static readonly AmpArticleLink = 114;
public static readonly AmpDocumentLink = 115;
public static readonly AmpDocumentDownload = 116;
public static readonly AmpAppLink = 117;
public static readonly AmpWebsiteLink = 118;
public static readonly AmpStillImageFilmLink = 119;
public static readonly OpAmpAudioLink = 120;
public static readonly OpAmpImageLink = 121;
public static readonly OpAmpVideoLink = 122;
public static readonly OpAmpArticleLink = 123;
public static readonly OpAmpDocumentLink = 124;
public static readonly OpAmpDocumentDownload = 125;
public static readonly OpAmpAppLink = 126;
public static readonly OpAmpWebsiteLink = 127;
public static readonly OpAmpStillImageFilmLink = 128;
public static readonly AmpImageEmbed = 129;
public static readonly AmpVideoEmbed = 130;
public static readonly AmpAudioEmbed = 131;
public static readonly AmpDocumentEmbed = 132;
public static readonly AmpStillImageFilmEmbed = 133;
public static readonly OpAmpImageEmbed = 134;
public static readonly OpAmpVideoEmbed = 135;
public static readonly OpAmpAudioEmbed = 136;
public static readonly OpAmpDocumentEmbed = 137;
public static readonly OpAmpStillImageFilmEmbed = 138;
public static readonly BitmarkMinus = 139;
public static readonly BitmarkPlus = 140;
public static readonly ColonText = 141;
public static readonly ColonJson = 142;
public static readonly Prosemirror = 143;
public static readonly Placeholder = 144;
public static readonly BASIC = 145;
public static readonly JPG = 146;
public static readonly PNG = 147;
public static readonly GIF = 148;
public static readonly SVG = 149;
public static readonly MP2 = 150;
public static readonly MP3 = 151;
public static readonly MP4 = 152;
public static readonly FLV = 153;
public static readonly WMV = 154;
public static readonly MPEG = 155;
public static readonly MPG = 156;
public static readonly TEL = 157;
public static readonly DotArticleAtt = 158;
public static readonly STAR = 159;
public static readonly URL = 160;
public static readonly LIST_LINE = 161;
public static readonly ENCLBARS = 162;
public static readonly RULE_bitmark = 0;
public static readonly RULE_bitmark_ = 1;
public static readonly RULE_multi_choices = 2;
public static readonly RULE_multiple_choice = 3;
public static readonly RULE_mcrsep = 4;
public static readonly RULE_mcrmisc = 5;
public static readonly RULE_multiple_choice_1 = 6;
public static readonly RULE_multiple_response = 7;
public static readonly RULE_multiple_response_1 = 8;
public static readonly RULE_multiple_choice_text = 9;
public static readonly RULE_multitxt_il_choice = 10;
public static readonly RULE_highlight_text = 11;
public static readonly RULE_highlight_il_choice = 12;
public static readonly RULE_bitElem = 13;
public static readonly RULE_gap = 14;
public static readonly RULE_single_gap = 15;
public static readonly RULE_choices = 16;
public static readonly RULE_cplus = 17;
public static readonly RULE_cminus = 18;
public static readonly RULE_choice_plus = 19;
public static readonly RULE_choice_minus = 20;
public static readonly RULE_il_choice_plus = 21;
public static readonly RULE_il_choice_minus = 22;
public static readonly RULE_headed_inline_choices = 23;
public static readonly RULE_highlight_inline_choices = 24;
public static readonly RULE_headed_choices = 25;
public static readonly RULE_choice_head = 26;
public static readonly RULE_inline_choices = 27;
public static readonly RULE_ml_example = 28;
public static readonly RULE_il_follow = 29;
public static readonly RULE_longans = 30;
public static readonly RULE_shortans = 31;
public static readonly RULE_resource = 32;
public static readonly RULE_bullet_item = 33;
public static readonly RULE_atpoint = 34;
public static readonly RULE_format = 35;
public static readonly RULE_resource_format = 36;
public static readonly RULE_resource_format_extra = 37;
public static readonly RULE_format2 = 38;
public static readonly RULE_image_format = 39;
public static readonly RULE_video_format = 40;
public static readonly RULE_article_format = 41;
public static readonly RULE_document_format = 42;
public static readonly RULE_app_format = 43;
public static readonly RULE_website_format = 44;
public static readonly RULE_stillimagefilm_format = 45;
public static readonly RULE_op_article_format = 46;
public static readonly RULE_op_document_format = 47;
public static readonly RULE_op_app_format = 48;
public static readonly RULE_op_website_format = 49;
public static readonly RULE_op_video_format = 50;
public static readonly RULE_op_stillimagefilm_format = 51;
public static readonly RULE_articlebit = 52;
public static readonly RULE_documentbit = 53;
public static readonly RULE_websitebit = 54;
public static readonly RULE_appbit = 55;
public static readonly RULE_stillimagefilmbit = 56;
public static readonly RULE_stillimg_one = 57;
public static readonly RULE_videobit = 58;
public static readonly RULE_video_one = 59;
public static readonly RULE_imagebit = 60;
public static readonly RULE_image_one = 61;
public static readonly RULE_op_image_format = 62;
public static readonly RULE_image_chained = 63;
public static readonly RULE_image_chained4match = 64;
public static readonly RULE_audiobit = 65;
public static readonly RULE_audio_one = 66;
public static readonly RULE_audio_format = 67;
public static readonly RULE_op_audio_format = 68;
public static readonly RULE_resource_chained = 69;
public static readonly RULE_telephone = 70;
public static readonly RULE_url = 71;
public static readonly RULE_item = 72;
public static readonly RULE_lead = 73;
public static readonly RULE_angleref = 74;
public static readonly RULE_example = 75;
public static readonly RULE_bracketed_text = 76;
public static readonly RULE_reference = 77;
public static readonly RULE_progress = 78;
public static readonly RULE_dateprop = 79;
public static readonly RULE_dateprop_chained = 80;
public static readonly RULE_instruction = 81;
public static readonly RULE_hint = 82;
public static readonly RULE_title = 83;
public static readonly RULE_bool_label = 84;
public static readonly RULE_progress_points = 85;
public static readonly RULE_istracked = 86;
public static readonly RULE_isinfoonly = 87;
public static readonly RULE_atdef = 88;
public static readonly RULE_atdef_ = 89;
public static readonly RULE_dollarans = 90;
public static readonly RULE_anchor = 91;
public static readonly RULE_dclines = 92;
public static readonly RULE_lines = 93;
public static readonly RULE_s_and_w = 94;
public static readonly RULE_clnsp = 95;
public static readonly RULE_sspl = 96;
public static readonly RULE_words = 97;
public static readonly RULE_sp = 98;
// tslint:disable:no-trailing-whitespace
public static readonly ruleNames: string[] = [
"bitmark", "bitmark_", "multi_choices", "multiple_choice", "mcrsep", "mcrmisc",
"multiple_choice_1", "multiple_response", "multiple_response_1", "multiple_choice_text",
"multitxt_il_choice", "highlight_text", "highlight_il_choice", "bitElem",
"gap", "single_gap", "choices", "cplus", "cminus", "choice_plus", "choice_minus",
"il_choice_plus", "il_choice_minus", "headed_inline_choices", "highlight_inline_choices",
"headed_choices", "choice_head", "inline_choices", "ml_example", "il_follow",
"longans", "shortans", "resource", "bullet_item", "atpoint", "format",
"resource_format", "resource_format_extra", "format2", "image_format",
"video_format", "article_format", "document_format", "app_format", "website_format",
"stillimagefilm_format", "op_article_format", "op_document_format", "op_app_format",
"op_website_format", "op_video_format", "op_stillimagefilm_format", "articlebit",
"documentbit", "websitebit", "appbit", "stillimagefilmbit", "stillimg_one",
"videobit", "video_one", "imagebit", "image_one", "op_image_format", "image_chained",
"image_chained4match", "audiobit", "audio_one", "audio_format", "op_audio_format",
"resource_chained", "telephone", "url", "item", "lead", "angleref", "example",
"bracketed_text", "reference", "progress", "dateprop", "dateprop_chained",
"instruction", "hint", "title", "bool_label", "progress_points", "istracked",
"isinfoonly", "atdef", "atdef_", "dollarans", "anchor", "dclines", "lines",
"s_and_w", "clnsp", "sspl", "words", "sp",
];
private static readonly _LITERAL_NAMES: Array<string | 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, "':'", "'&'", "'::'",
"'+'", "'.@'", "'>'", "'<'", "'('", "')'", "'\u25BA'", "'\u2192'", "'=='",
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, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, "'http://'",
"'https://'", "'&audio'", "'&image'", "'&image-zoom'", "'&image-with-audio'",
"'&video'", "'&article'", "'&document'", "'&app'", "'&website'", "'&still-image-film'",
"'&pdf'", undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, "'&audio-link'",
"'&image-link'", "'&video-link'", "'&article-link'", "'&document-link'",
"'&document-download'", "'&app-link'", "'&website-link'", "'&still-image-film-link'",
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, "'&image-embed'", "'&video-embed'", "'&daudio-embed'",
"'&document-embed'", "'&still-image-film-embed'", undefined, undefined,
undefined, undefined, undefined, "':bitmark--'", "':bitmark++'", "':text'",
"':json'", "':prosemirror'", "':placeholder'", "':basic'", "':jpg'", "':png'",
"':gif'", "':svg'", "':mp2'", "':mp3'", "':mp4'", "':flv'", "':wmv'",
"':mpeg'", "':mpg'", "'tel:'", "'.article-attachment'", "'*'",
];
private static readonly _SYMBOLIC_NAMES: Array<string | undefined> = [
undefined, "OPDOT", "S", "BitMultichoice1", "BitMultichoice", "BitMultiresp1",
"BitMultiresp", "BitMultichoicetext", "BitHighlighttext", "OPDOLL", "OPBUL",
"OPESC", "OPRANGLES", "OPRANGLEL", "OPDANGLE", "OPU", "OPB", "OPQ", "OPA",
"OPP", "OPM", "OPS", "OPR", "OPC", "OPHASH", "CL", "COLON", "AMP", "DBLCOLON",
"PLUS", "DotAt", "Greater", "Less", "Lparen", "Rparen", "RightAngle",
"RightArrow", "DBLEQ", "HSPL", "HSPL2", "SSPL", "SSPL2", "StrParen", "COMMENT",
"DCANY", "Image_type", "Audio_type", "Video_type", "ArticleText", "NOTCL",
"NUMERIC", "STRING", "NL", "NOTBITMARK", "ELIPSIS", "SENTENCE", "BARSTRING",
"OPAT", "AtProgress", "AtReference", "AtWidth", "AtHeight", "AtProgressPoints",
"AtShortanswer", "AtLonganswer", "AtExampleWithStr", "AtExamplecol", "AtExamplecl",
"AtSampleSolution", "AtPartialAnswerS", "AtPartialAnswer", "AtLabeltrue",
"AtLabelfalse", "AtPoints", "AtSrc", "AtPartner", "OPATALT", "OPAMARK",
"ShowInIndex", "OpAtCaption", "OpAtLicense", "OpAtCopyright", "OpAtSearch",
"OpAtIsTracked", "OpAtIsInfoOnly", "AtDate", "Http", "Https", "AmpAudio",
"AmpImage", "AmpImageZoom", "AmpImageWAudio", "AmpVideo", "AmpArticle",
"AmpDocument", "AmpApp", "AmpWebsite", "AmpStillImageFilm", "AmpPdf",
"OpAmpAudio", "OpAmpImage", "OpAmpImageZoom", "OpAmpImageWAudio", "OpAmpVideo",
"OpAmpArticle", "OpAmpArticleAtt", "OpAmpDocument", "OpAmpApp", "OpAmpWebsite",
"OpAmpStillImageFilm", "BracEnclose", "AmpAudioLink", "AmpImageLink",
"AmpVideoLink", "AmpArticleLink", "AmpDocumentLink", "AmpDocumentDownload",
"AmpAppLink", "AmpWebsiteLink", "AmpStillImageFilmLink", "OpAmpAudioLink",
"OpAmpImageLink", "OpAmpVideoLink", "OpAmpArticleLink", "OpAmpDocumentLink",
"OpAmpDocumentDownload", "OpAmpAppLink", "OpAmpWebsiteLink", "OpAmpStillImageFilmLink",
"AmpImageEmbed", "AmpVideoEmbed", "AmpAudioEmbed", "AmpDocumentEmbed",
"AmpStillImageFilmEmbed", "OpAmpImageEmbed", "OpAmpVideoEmbed", "OpAmpAudioEmbed",
"OpAmpDocumentEmbed", "OpAmpStillImageFilmEmbed", "BitmarkMinus", "BitmarkPlus",
"ColonText", "ColonJson", "Prosemirror", "Placeholder", "BASIC", "JPG",
"PNG", "GIF", "SVG", "MP2", "MP3", "MP4", "FLV", "WMV", "MPEG", "MPG",
"TEL", "DotArticleAtt", "STAR", "URL", "LIST_LINE", "ENCLBARS",
];
public static readonly VOCABULARY: Vocabulary = new VocabularyImpl(choiceParser._LITERAL_NAMES, choiceParser._SYMBOLIC_NAMES, []);
// @Override
// @NotNull
public get vocabulary(): Vocabulary {
return choiceParser.VOCABULARY;
}
// tslint:enable:no-trailing-whitespace
// @Override
public get grammarFileName(): string { return "choiceParser.g4"; }
// @Override
public get ruleNames(): string[] { return choiceParser.ruleNames; }
// @Override
public get serializedATN(): string { return choiceParser._serializedATN; }
protected createFailedPredicateException(predicate?: string, message?: string): FailedPredicateException {
return new FailedPredicateException(this, predicate, message);
}
constructor(input: TokenStream) {
super(input);
this._interp = new ParserATNSimulator(choiceParser._ATN, this);
}
// @RuleVersion(0)
public bitmark(): BitmarkContext {
let _localctx: BitmarkContext = new BitmarkContext(this._ctx, this.state);
this.enterRule(_localctx, 0, choiceParser.RULE_bitmark);
let _la: number;
try {
let _alt: number;
this.enterOuterAlt(_localctx, 1);
{
this.state = 211;
this._errHandler.sync(this);
_la = this._input.LA(1);
do {
{
{
this.state = 198;
this.bitmark_();
this.state = 208;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 1, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 202;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === choiceParser.S) {
{
{
this.state = 199;
this.match(choiceParser.S);
}
}
this.state = 204;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 205;
this.match(choiceParser.NL);
}
}
}
this.state = 210;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 1, this._ctx);
}
}
}
this.state = 213;
this._errHandler.sync(this);
_la = this._input.LA(1);
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << choiceParser.BitMultichoice1) | (1 << choiceParser.BitMultichoice) | (1 << choiceParser.BitMultiresp1) | (1 << choiceParser.BitMultiresp) | (1 << choiceParser.BitMultichoicetext) | (1 << choiceParser.BitHighlighttext))) !== 0));
this.state = 218;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === choiceParser.NL) {
{
{
this.state = 215;
this.match(choiceParser.NL);
}
}
this.state = 220;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 221;
this.match(choiceParser.EOF);
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public bitmark_(): Bitmark_Context {
let _localctx: Bitmark_Context = new Bitmark_Context(this._ctx, this.state);
this.enterRule(_localctx, 2, choiceParser.RULE_bitmark_);
try {
this.enterOuterAlt(_localctx, 1);
{
this.state = 223;
this.multi_choices();
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public multi_choices(): Multi_choicesContext {
let _localctx: Multi_choicesContext = new Multi_choicesContext(this._ctx, this.state);
this.enterRule(_localctx, 4, choiceParser.RULE_multi_choices);
try {
this.state = 231;
this._errHandler.sync(this);
switch (this._input.LA(1)) {
case choiceParser.BitMultichoice:
this.enterOuterAlt(_localctx, 1);
{
this.state = 225;
this.multiple_choice();
}
break;
case choiceParser.BitMultichoice1:
this.enterOuterAlt(_localctx, 2);
{
this.state = 226;
this.multiple_choice_1();
}
break;
case choiceParser.BitMultiresp:
this.enterOuterAlt(_localctx, 3);
{
this.state = 227;
this.multiple_response();
}
break;
case choiceParser.BitMultiresp1:
this.enterOuterAlt(_localctx, 4);
{
this.state = 228;
this.multiple_response_1();
}
break;
case choiceParser.BitMultichoicetext:
this.enterOuterAlt(_localctx, 5);
{
this.state = 229;
this.multiple_choice_text();
}
break;
case choiceParser.BitHighlighttext:
this.enterOuterAlt(_localctx, 6);
{
this.state = 230;
this.highlight_text();
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public multiple_choice(): Multiple_choiceContext {
let _localctx: Multiple_choiceContext = new Multiple_choiceContext(this._ctx, this.state);
this.enterRule(_localctx, 6, choiceParser.RULE_multiple_choice);
let _la: number;
try {
let _alt: number;
this.enterOuterAlt(_localctx, 1);
{
this.state = 233;
this.match(choiceParser.BitMultichoice);
this.state = 234;
this.format();
this.state = 235;
this.match(choiceParser.CL);
this.state = 237;
this._errHandler.sync(this);
_alt = 1;
do {
switch (_alt) {
case 1:
{
{
this.state = 236;
this.match(choiceParser.NL);
}
}
break;
default:
throw new NoViableAltException(this);
}
this.state = 239;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 5, this._ctx);
} while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER);
this.state = 250;
this._errHandler.sync(this);
_la = this._input.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << choiceParser.S) | (1 << choiceParser.OPRANGLES) | (1 << choiceParser.OPRANGLEL) | (1 << choiceParser.OPDANGLE) | (1 << choiceParser.OPU) | (1 << choiceParser.OPB) | (1 << choiceParser.OPQ) | (1 << choiceParser.OPA) | (1 << choiceParser.OPC) | (1 << choiceParser.OPHASH) | (1 << choiceParser.COLON) | (1 << choiceParser.AMP) | (1 << choiceParser.Greater))) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & ((1 << (choiceParser.Less - 32)) | (1 << (choiceParser.RightAngle - 32)) | (1 << (choiceParser.RightArrow - 32)) | (1 << (choiceParser.DBLEQ - 32)) | (1 << (choiceParser.DCANY - 32)) | (1 << (choiceParser.ArticleText - 32)) | (1 << (choiceParser.NUMERIC - 32)) | (1 << (choiceParser.STRING - 32)) | (1 << (choiceParser.NOTBITMARK - 32)) | (1 << (choiceParser.ELIPSIS - 32)) | (1 << (choiceParser.SENTENCE - 32)) | (1 << (choiceParser.BARSTRING - 32)) | (1 << (choiceParser.AtReference - 32)))) !== 0) || ((((_la - 65)) & ~0x1F) === 0 && ((1 << (_la - 65)) & ((1 << (choiceParser.AtExampleWithStr - 65)) | (1 << (choiceParser.AtExamplecol - 65)) | (1 << (choiceParser.AtExamplecl - 65)) | (1 << (choiceParser.AtLabeltrue - 65)) | (1 << (choiceParser.AtLabelfalse - 65)) | (1 << (choiceParser.OpAtCopyright - 65)))) !== 0) || ((((_la - 99)) & ~0x1F) === 0 && ((1 << (_la - 99)) & ((1 << (choiceParser.OpAmpAudio - 99)) | (1 << (choiceParser.OpAmpImage - 99)) | (1 << (choiceParser.OpAmpImageZoom - 99)) | (1 << (choiceParser.OpAmpImageWAudio - 99)) | (1 << (choiceParser.OpAmpVideo - 99)) | (1 << (choiceParser.OpAmpArticle - 99)) | (1 << (choiceParser.OpAmpDocument - 99)) | (1 << (choiceParser.OpAmpApp - 99)) | (1 << (choiceParser.OpAmpWebsite - 99)) | (1 << (choiceParser.OpAmpStillImageFilm - 99)) | (1 << (choiceParser.OpAmpAudioLink - 99)) | (1 << (choiceParser.OpAmpImageLink - 99)) | (1 << (choiceParser.OpAmpVideoLink - 99)) | (1 << (choiceParser.OpAmpArticleLink - 99)) | (1 << (choiceParser.OpAmpDocumentLink - 99)) | (1 << (choiceParser.OpAmpDocumentDownload - 99)) | (1 << (choiceParser.OpAmpAppLink - 99)) | (1 << (choiceParser.OpAmpWebsiteLink - 99)) | (1 << (choiceParser.OpAmpStillImageFilmLink - 99)))) !== 0) || ((((_la - 135)) & ~0x1F) === 0 && ((1 << (_la - 135)) & ((1 << (choiceParser.OpAmpVideoEmbed - 135)) | (1 << (choiceParser.OpAmpAudioEmbed - 135)) | (1 << (choiceParser.OpAmpDocumentEmbed - 135)) | (1 << (choiceParser.OpAmpStillImageFilmEmbed - 135)) | (1 << (choiceParser.URL - 135)) | (1 << (choiceParser.LIST_LINE - 135)))) !== 0)) {
{
{
this.state = 241;
this.bitElem();
this.state = 245;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 6, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 242;
this.match(choiceParser.NL);
}
}
}
this.state = 247;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 6, this._ctx);
}
}
}
this.state = 252;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 274;
this._errHandler.sync(this);
_alt = 1;
do {
switch (_alt) {
case 1:
{
{
this.state = 256;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 8, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 253;
this.match(choiceParser.NL);
}
}
}
this.state = 258;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 8, this._ctx);
}
this.state = 259;
this.mcrsep();
this.state = 267;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 10, this._ctx) ) {
case 1:
{
this.state = 263;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 9, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 260;
this.match(choiceParser.NL);
}
}
}
this.state = 265;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 9, this._ctx);
}
this.state = 266;
this.mcrmisc();
}
break;
}
this.state = 270;
this._errHandler.sync(this);
_la = this._input.LA(1);
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << choiceParser.S) | (1 << choiceParser.COLON) | (1 << choiceParser.AMP) | (1 << choiceParser.Greater))) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & ((1 << (choiceParser.Less - 32)) | (1 << (choiceParser.RightAngle - 32)) | (1 << (choiceParser.RightArrow - 32)) | (1 << (choiceParser.DBLEQ - 32)) | (1 << (choiceParser.NUMERIC - 32)) | (1 << (choiceParser.STRING - 32)) | (1 << (choiceParser.NOTBITMARK - 32)) | (1 << (choiceParser.ELIPSIS - 32)) | (1 << (choiceParser.SENTENCE - 32)) | (1 << (choiceParser.BARSTRING - 32)))) !== 0) || _la === choiceParser.URL) {
{
this.state = 269;
this.s_and_w();
}
}
this.state = 272;
this.choices();
}
}
break;
default:
throw new NoViableAltException(this);
}
this.state = 276;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 12, this._ctx);
} while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER);
this.state = 280;
this._errHandler.sync(this);
switch (this._input.LA(1)) {
case choiceParser.HSPL:
case choiceParser.HSPL2:
{
this.state = 278;
_la = this._input.LA(1);
if (!(_la === choiceParser.HSPL || _la === choiceParser.HSPL2)) {
this._errHandler.recoverInline(this);
} else {
if (this._input.LA(1) === Token.EOF) {
this.matchedEOF = true;
}
this._errHandler.reportMatch(this);
this.consume();
}
}
break;
case choiceParser.NL:
{
this.state = 279;
this.match(choiceParser.NL);
}
break;
default:
throw new NoViableAltException(this);
}
this.state = 285;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 14, this._ctx) ) {
case 1:
{
this.state = 282;
this.bitElem();
this.state = 283;
this.match(choiceParser.NL);
}
break;
}
this.state = 290;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 15, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 287;
this.match(choiceParser.NL);
}
}
}
this.state = 292;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 15, this._ctx);
}
this.state = 306;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 18, this._ctx) ) {
case 1:
{
this.state = 293;
this.resource();
this.state = 303;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 17, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 297;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === choiceParser.NL) {
{
{
this.state = 294;
this.match(choiceParser.NL);
}
}
this.state = 299;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 300;
this.resource();
}
}
}
this.state = 305;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 17, this._ctx);
}
}
break;
}
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public mcrsep(): McrsepContext {
let _localctx: McrsepContext = new McrsepContext(this._ctx, this.state);
this.enterRule(_localctx, 8, choiceParser.RULE_mcrsep);
let _la: number;
try {
this.enterOuterAlt(_localctx, 1);
{
this.state = 310;
this._errHandler.sync(this);
switch (this._input.LA(1)) {
case choiceParser.HSPL:
case choiceParser.HSPL2:
{
this.state = 308;
_la = this._input.LA(1);
if (!(_la === choiceParser.HSPL || _la === choiceParser.HSPL2)) {
this._errHandler.recoverInline(this);
} else {
if (this._input.LA(1) === Token.EOF) {
this.matchedEOF = true;
}
this._errHandler.reportMatch(this);
this.consume();
}
}
break;
case choiceParser.NL:
{
this.state = 309;
this.match(choiceParser.NL);
}
break;
default:
throw new NoViableAltException(this);
}
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public mcrmisc(): McrmiscContext {
let _localctx: McrmiscContext = new McrmiscContext(this._ctx, this.state);
this.enterRule(_localctx, 10, choiceParser.RULE_mcrmisc);
let _la: number;
try {
this.enterOuterAlt(_localctx, 1);
{
this.state = 315;
this._errHandler.sync(this);
_la = this._input.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << choiceParser.S) | (1 << choiceParser.OPRANGLES) | (1 << choiceParser.OPRANGLEL) | (1 << choiceParser.OPDANGLE) | (1 << choiceParser.OPU) | (1 << choiceParser.OPB) | (1 << choiceParser.OPQ) | (1 << choiceParser.OPA) | (1 << choiceParser.OPC) | (1 << choiceParser.OPHASH) | (1 << choiceParser.COLON) | (1 << choiceParser.AMP) | (1 << choiceParser.Greater))) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & ((1 << (choiceParser.Less - 32)) | (1 << (choiceParser.RightAngle - 32)) | (1 << (choiceParser.RightArrow - 32)) | (1 << (choiceParser.DBLEQ - 32)) | (1 << (choiceParser.DCANY - 32)) | (1 << (choiceParser.ArticleText - 32)) | (1 << (choiceParser.NUMERIC - 32)) | (1 << (choiceParser.STRING - 32)) | (1 << (choiceParser.NOTBITMARK - 32)) | (1 << (choiceParser.ELIPSIS - 32)) | (1 << (choiceParser.SENTENCE - 32)) | (1 << (choiceParser.BARSTRING - 32)) | (1 << (choiceParser.AtReference - 32)))) !== 0) || ((((_la - 65)) & ~0x1F) === 0 && ((1 << (_la - 65)) & ((1 << (choiceParser.AtExampleWithStr - 65)) | (1 << (choiceParser.AtExamplecol - 65)) | (1 << (choiceParser.AtExamplecl - 65)) | (1 << (choiceParser.AtLabeltrue - 65)) | (1 << (choiceParser.AtLabelfalse - 65)) | (1 << (choiceParser.OpAtCopyright - 65)))) !== 0) || ((((_la - 99)) & ~0x1F) === 0 && ((1 << (_la - 99)) & ((1 << (choiceParser.OpAmpAudio - 99)) | (1 << (choiceParser.OpAmpImage - 99)) | (1 << (choiceParser.OpAmpImageZoom - 99)) | (1 << (choiceParser.OpAmpImageWAudio - 99)) | (1 << (choiceParser.OpAmpVideo - 99)) | (1 << (choiceParser.OpAmpArticle - 99)) | (1 << (choiceParser.OpAmpDocument - 99)) | (1 << (choiceParser.OpAmpApp - 99)) | (1 << (choiceParser.OpAmpWebsite - 99)) | (1 << (choiceParser.OpAmpStillImageFilm - 99)) | (1 << (choiceParser.OpAmpAudioLink - 99)) | (1 << (choiceParser.OpAmpImageLink - 99)) | (1 << (choiceParser.OpAmpVideoLink - 99)) | (1 << (choiceParser.OpAmpArticleLink - 99)) | (1 << (choiceParser.OpAmpDocumentLink - 99)) | (1 << (choiceParser.OpAmpDocumentDownload - 99)) | (1 << (choiceParser.OpAmpAppLink - 99)) | (1 << (choiceParser.OpAmpWebsiteLink - 99)) | (1 << (choiceParser.OpAmpStillImageFilmLink - 99)))) !== 0) || ((((_la - 135)) & ~0x1F) === 0 && ((1 << (_la - 135)) & ((1 << (choiceParser.OpAmpVideoEmbed - 135)) | (1 << (choiceParser.OpAmpAudioEmbed - 135)) | (1 << (choiceParser.OpAmpDocumentEmbed - 135)) | (1 << (choiceParser.OpAmpStillImageFilmEmbed - 135)) | (1 << (choiceParser.URL - 135)) | (1 << (choiceParser.LIST_LINE - 135)))) !== 0)) {
{
{
this.state = 312;
this.bitElem();
}
}
this.state = 317;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 318;
this.match(choiceParser.NL);
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public multiple_choice_1(): Multiple_choice_1Context {
let _localctx: Multiple_choice_1Context = new Multiple_choice_1Context(this._ctx, this.state);
this.enterRule(_localctx, 12, choiceParser.RULE_multiple_choice_1);
let _la: number;
try {
let _alt: number;
this.enterOuterAlt(_localctx, 1);
{
this.state = 320;
this.match(choiceParser.BitMultichoice1);
this.state = 321;
this.format();
this.state = 322;
this.match(choiceParser.CL);
this.state = 324;
this._errHandler.sync(this);
_la = this._input.LA(1);
do {
{
{
this.state = 323;
this.match(choiceParser.NL);
}
}
this.state = 326;
this._errHandler.sync(this);
_la = this._input.LA(1);
} while (_la === choiceParser.NL);
this.state = 337;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 23, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 328;
this.bitElem();
this.state = 332;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === choiceParser.NL) {
{
{
this.state = 329;
this.match(choiceParser.NL);
}
}
this.state = 334;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
}
}
}
this.state = 339;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 23, this._ctx);
}
this.state = 340;
this.choices();
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public multiple_response(): Multiple_responseContext {
let _localctx: Multiple_responseContext = new Multiple_responseContext(this._ctx, this.state);
this.enterRule(_localctx, 14, choiceParser.RULE_multiple_response);
let _la: number;
try {
let _alt: number;
this.enterOuterAlt(_localctx, 1);
{
this.state = 342;
this.match(choiceParser.BitMultiresp);
this.state = 343;
this.format();
this.state = 344;
this.match(choiceParser.CL);
this.state = 346;
this._errHandler.sync(this);
_alt = 1;
do {
switch (_alt) {
case 1:
{
{
this.state = 345;
this.match(choiceParser.NL);
}
}
break;
default:
throw new NoViableAltException(this);
}
this.state = 348;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 24, this._ctx);
} while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER);
this.state = 359;
this._errHandler.sync(this);
_la = this._input.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << choiceParser.S) | (1 << choiceParser.OPRANGLES) | (1 << choiceParser.OPRANGLEL) | (1 << choiceParser.OPDANGLE) | (1 << choiceParser.OPU) | (1 << choiceParser.OPB) | (1 << choiceParser.OPQ) | (1 << choiceParser.OPA) | (1 << choiceParser.OPC) | (1 << choiceParser.OPHASH) | (1 << choiceParser.COLON) | (1 << choiceParser.AMP) | (1 << choiceParser.Greater))) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & ((1 << (choiceParser.Less - 32)) | (1 << (choiceParser.RightAngle - 32)) | (1 << (choiceParser.RightArrow - 32)) | (1 << (choiceParser.DBLEQ - 32)) | (1 << (choiceParser.DCANY - 32)) | (1 << (choiceParser.ArticleText - 32)) | (1 << (choiceParser.NUMERIC - 32)) | (1 << (choiceParser.STRING - 32)) | (1 << (choiceParser.NOTBITMARK - 32)) | (1 << (choiceParser.ELIPSIS - 32)) | (1 << (choiceParser.SENTENCE - 32)) | (1 << (choiceParser.BARSTRING - 32)) | (1 << (choiceParser.AtReference - 32)))) !== 0) || ((((_la - 65)) & ~0x1F) === 0 && ((1 << (_la - 65)) & ((1 << (choiceParser.AtExampleWithStr - 65)) | (1 << (choiceParser.AtExamplecol - 65)) | (1 << (choiceParser.AtExamplecl - 65)) | (1 << (choiceParser.AtLabeltrue - 65)) | (1 << (choiceParser.AtLabelfalse - 65)) | (1 << (choiceParser.OpAtCopyright - 65)))) !== 0) || ((((_la - 99)) & ~0x1F) === 0 && ((1 << (_la - 99)) & ((1 << (choiceParser.OpAmpAudio - 99)) | (1 << (choiceParser.OpAmpImage - 99)) | (1 << (choiceParser.OpAmpImageZoom - 99)) | (1 << (choiceParser.OpAmpImageWAudio - 99)) | (1 << (choiceParser.OpAmpVideo - 99)) | (1 << (choiceParser.OpAmpArticle - 99)) | (1 << (choiceParser.OpAmpDocument - 99)) | (1 << (choiceParser.OpAmpApp - 99)) | (1 << (choiceParser.OpAmpWebsite - 99)) | (1 << (choiceParser.OpAmpStillImageFilm - 99)) | (1 << (choiceParser.OpAmpAudioLink - 99)) | (1 << (choiceParser.OpAmpImageLink - 99)) | (1 << (choiceParser.OpAmpVideoLink - 99)) | (1 << (choiceParser.OpAmpArticleLink - 99)) | (1 << (choiceParser.OpAmpDocumentLink - 99)) | (1 << (choiceParser.OpAmpDocumentDownload - 99)) | (1 << (choiceParser.OpAmpAppLink - 99)) | (1 << (choiceParser.OpAmpWebsiteLink - 99)) | (1 << (choiceParser.OpAmpStillImageFilmLink - 99)))) !== 0) || ((((_la - 135)) & ~0x1F) === 0 && ((1 << (_la - 135)) & ((1 << (choiceParser.OpAmpVideoEmbed - 135)) | (1 << (choiceParser.OpAmpAudioEmbed - 135)) | (1 << (choiceParser.OpAmpDocumentEmbed - 135)) | (1 << (choiceParser.OpAmpStillImageFilmEmbed - 135)) | (1 << (choiceParser.URL - 135)) | (1 << (choiceParser.LIST_LINE - 135)))) !== 0)) {
{
{
this.state = 350;
this.bitElem();
this.state = 354;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 25, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 351;
this.match(choiceParser.NL);
}
}
}
this.state = 356;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 25, this._ctx);
}
}
}
this.state = 361;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 380;
this._errHandler.sync(this);
_alt = 1;
do {
switch (_alt) {
case 1:
{
{
this.state = 365;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 27, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 362;
this.match(choiceParser.NL);
}
}
}
this.state = 367;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 27, this._ctx);
}
this.state = 368;
this.mcrsep();
this.state = 376;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 29, this._ctx) ) {
case 1:
{
this.state = 372;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 28, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 369;
this.match(choiceParser.NL);
}
}
}
this.state = 374;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 28, this._ctx);
}
this.state = 375;
this.mcrmisc();
}
break;
}
this.state = 378;
this.choices();
}
}
break;
default:
throw new NoViableAltException(this);
}
this.state = 382;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 30, this._ctx);
} while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER);
this.state = 386;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 31, this._ctx) ) {
case 1:
{
this.state = 384;
_la = this._input.LA(1);
if (!(_la === choiceParser.HSPL || _la === choiceParser.HSPL2)) {
this._errHandler.recoverInline(this);
} else {
if (this._input.LA(1) === Token.EOF) {
this.matchedEOF = true;
}
this._errHandler.reportMatch(this);
this.consume();
}
}
break;
case 2:
{
this.state = 385;
this.match(choiceParser.NL);
}
break;
}
this.state = 395;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 33, this._ctx) ) {
case 1:
{
this.state = 388;
this.bitElem();
this.state = 392;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 32, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 389;
this.match(choiceParser.NL);
}
}
}
this.state = 394;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 32, this._ctx);
}
}
break;
}
this.state = 400;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 34, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 397;
this.match(choiceParser.NL);
}
}
}
this.state = 402;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 34, this._ctx);
}
this.state = 416;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 37, this._ctx) ) {
case 1:
{
this.state = 403;
this.resource();
this.state = 413;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 36, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 407;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === choiceParser.NL) {
{
{
this.state = 404;
this.match(choiceParser.NL);
}
}
this.state = 409;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 410;
this.resource();
}
}
}
this.state = 415;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 36, this._ctx);
}
}
break;
}
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public multiple_response_1(): Multiple_response_1Context {
let _localctx: Multiple_response_1Context = new Multiple_response_1Context(this._ctx, this.state);
this.enterRule(_localctx, 16, choiceParser.RULE_multiple_response_1);
let _la: number;
try {
let _alt: number;
this.enterOuterAlt(_localctx, 1);
{
this.state = 418;
this.match(choiceParser.BitMultiresp1);
this.state = 419;
this.format();
this.state = 420;
this.match(choiceParser.CL);
this.state = 422;
this._errHandler.sync(this);
_la = this._input.LA(1);
do {
{
{
this.state = 421;
this.match(choiceParser.NL);
}
}
this.state = 424;
this._errHandler.sync(this);
_la = this._input.LA(1);
} while (_la === choiceParser.NL);
this.state = 433;
this._errHandler.sync(this);
_alt = 1;
do {
switch (_alt) {
case 1:
{
{
this.state = 426;
this.bitElem();
this.state = 430;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === choiceParser.NL) {
{
{
this.state = 427;
this.match(choiceParser.NL);
}
}
this.state = 432;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
}
}
break;
default:
throw new NoViableAltException(this);
}
this.state = 435;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 40, this._ctx);
} while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER);
this.state = 437;
this.choices();
this.state = 441;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 41, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 438;
this.match(choiceParser.NL);
}
}
}
th