@zenuml/core 3.24.21 → 3.24.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/zenuml.js CHANGED
@@ -12,7 +12,7 @@
12
12
  `,n)),n.context===null||n.context.hasEmptyPath()){if(n.context===null||n.context.isEmpty())return i.add(n),!0;i.add(new h3({state:n.state,context:P2.EMPTY},n)),s=!0}if(n.context!==null&&!n.context.isEmpty()){for(let L=0;L<n.context.length;L++)if(n.context.getReturnState(L)!==P2.EMPTY_RETURN_STATE){const a=n.context.getParent(L),c=this.atn.states[n.context.getReturnState(L)];l=new h3({state:c,context:a},n),s=this.closure(e,l,i,s,r,o)}}return s}n.state.epsilonOnlyTransitions||(!s||!n.passedThroughNonGreedyDecision)&&i.add(n);for(let L=0;L<n.state.transitions.length;L++){const a=n.state.transitions[L];l=this.getEpsilonTarget(e,n,a,i,r,o),l!==null&&(s=this.closure(e,l,i,s,r,o))}return s}getEpsilonTarget(e,n,i,s,r,o){let l=null;if(i.serializationType===d2.RULE){const L=q1.create(n.context,i.followState.stateNumber);l=new h3({state:i.target,context:L},n)}else{if(i.serializationType===d2.PRECEDENCE)throw"Precedence predicates are not supported in lexers.";if(i.serializationType===d2.PREDICATE)h1.debug&&console.log("EVAL rule "+i.ruleIndex+":"+i.predIndex),s.hasSemanticContext=!0,this.evaluatePredicate(e,i.ruleIndex,i.predIndex,r)&&(l=new h3({state:i.target},n));else if(i.serializationType===d2.ACTION)if(n.context===null||n.context.hasEmptyPath()){const L=d0.append(n.lexerActionExecutor,this.atn.lexerActions[i.actionIndex]);l=new h3({state:i.target,lexerActionExecutor:L},n)}else l=new h3({state:i.target},n);else i.serializationType===d2.EPSILON?l=new h3({state:i.target},n):(i.serializationType===d2.ATOM||i.serializationType===d2.RANGE||i.serializationType===d2.SET)&&o&&i.matches(Y.EOF,0,u1.MAX_CHAR_VALUE)&&(l=new h3({state:i.target},n))}return l}evaluatePredicate(e,n,i,s){if(this.recog===null)return!0;if(!s)return this.recog.sempred(null,n,i);const r=this.column,o=this.line,l=e.index,L=e.mark();try{return this.consume(e),this.recog.sempred(null,n,i)}finally{this.column=r,this.line=o,e.seek(l),e.release(L)}}captureSimState(e,n,i){e.index=n.index,e.line=this.line,e.column=this.column,e.dfaState=i}addDFAEdge(e,n,i,s){if(i===void 0&&(i=null),s===void 0&&(s=null),i===null&&s!==null){const r=s.hasSemanticContext;if(s.hasSemanticContext=!1,i=this.addDFAState(s),r)return i}return n<h1.MIN_DFA_EDGE||n>h1.MAX_DFA_EDGE||(h1.debug&&console.log("EDGE "+e+" -> "+i+" upon "+n),e.edges===null&&(e.edges=[]),e.edges[n-h1.MIN_DFA_EDGE]=i),i}addDFAState(e){const n=new k4(null,e);let i=null;for(let l=0;l<e.items.length;l++){const L=e.items[l];if(L.state instanceof j1){i=L;break}}i!==null&&(n.isAcceptState=!0,n.lexerActionExecutor=i.lexerActionExecutor,n.prediction=this.atn.ruleToTokenType[i.state.ruleIndex]);const s=this.decisionToDFA[this.mode],r=s.states.get(n);if(r!==null)return r;const o=n;return o.stateNumber=s.states.length,e.setReadonly(!0),o.configs=e,s.states.add(o),o}getDFA(e){return this.decisionToDFA[e]}getText(e){return e.getText(this.startIndex,e.index-1)}consume(e){e.LA(1)===`
13
13
  `.charCodeAt(0)?(this.line+=1,this.column=0):this.column+=1,e.consume()}getTokenName(e){return e===-1?"EOF":"'"+String.fromCharCode(e)+"'"}}h1.debug=!1,h1.dfa_debug=!1,h1.MIN_DFA_EDGE=0,h1.MAX_DFA_EDGE=127;class go{constructor(e,n){this.alt=n,this.pred=e}toString(){return"("+this.pred+", "+this.alt+")"}}class Zf{constructor(){this.data={}}get(e){return this.data["k-"+e]||null}set(e,n){this.data["k-"+e]=n}values(){return Object.keys(this.data).filter(e=>e.startsWith("k-")).map(e=>this.data[e],this)}}const n1={SLL:0,LL:1,LL_EXACT_AMBIG_DETECTION:2,hasSLLConflictTerminatingPrediction:function(t,e){if(n1.allConfigsInRuleStopStates(e))return!0;if(t===n1.SLL&&e.hasSemanticContext){const i=new K1;for(let s=0;s<e.items.length;s++){let r=e.items[s];r=new g1({semanticContext:j2.NONE},r),i.add(r)}e=i}const n=n1.getConflictingAltSubsets(e);return n1.hasConflictingAltSet(n)&&!n1.hasStateAssociatedWithOneAlt(e)},hasConfigInRuleStopState:function(t){for(let e=0;e<t.items.length;e++)if(t.items[e].state instanceof j1)return!0;return!1},allConfigsInRuleStopStates:function(t){for(let e=0;e<t.items.length;e++)if(!(t.items[e].state instanceof j1))return!1;return!0},resolvesToJustOneViableAlt:function(t){return n1.getSingleViableAlt(t)},allSubsetsConflict:function(t){return!n1.hasNonConflictingAltSet(t)},hasNonConflictingAltSet:function(t){for(let e=0;e<t.length;e++)if(t[e].length===1)return!0;return!1},hasConflictingAltSet:function(t){for(let e=0;e<t.length;e++)if(t[e].length>1)return!0;return!1},allSubsetsEqual:function(t){let e=null;for(let n=0;n<t.length;n++){const i=t[n];if(e===null)e=i;else if(i!==e)return!1}return!0},getUniqueAlt:function(t){const e=n1.getAlts(t);return e.length===1?e.minValue():c1.INVALID_ALT_NUMBER},getAlts:function(t){const e=new o4;return t.map(function(n){e.or(n)}),e},getConflictingAltSubsets:function(t){const e=new l5;return e.hashFunction=function(n){_3.hashStuff(n.state.stateNumber,n.context)},e.equalsFunction=function(n,i){return n.state.stateNumber===i.state.stateNumber&&n.context.equals(i.context)},t.items.map(function(n){let i=e.get(n);i===null&&(i=new o4,e.set(n,i)),i.add(n.alt)}),e.getValues()},getStateToAltMap:function(t){const e=new Zf;return t.items.map(function(n){let i=e.get(n.state);i===null&&(i=new o4,e.set(n.state,i)),i.add(n.alt)}),e},hasStateAssociatedWithOneAlt:function(t){const e=n1.getStateToAltMap(t).values();for(let n=0;n<e.length;n++)if(e[n].length===1)return!0;return!1},getSingleViableAlt:function(t){let e=null;for(let n=0;n<t.length;n++){const s=t[n].minValue();if(e===null)e=s;else if(e!==s)return c1.INVALID_ALT_NUMBER}return e}};class Oe extends V4{constructor(e,n,i,s,r,o){o=o||e._ctx,s=s||e.getCurrentToken(),i=i||e.getCurrentToken(),n=n||e.getInputStream(),super({message:"",recognizer:e,input:n,ctx:o}),this.deadEndConfigs=r,this.startToken=i,this.offendingToken=s}}class Tf{constructor(e){this.defaultMapCtor=e||l5,this.cacheMap=new this.defaultMapCtor}get(e,n){const i=this.cacheMap.get(e)||null;return i===null?null:i.get(n)||null}set(e,n,i){let s=this.cacheMap.get(e)||null;s===null&&(s=new this.defaultMapCtor,this.cacheMap.set(e,s)),s.set(n,i)}}class Sf extends l4{constructor(e,n,i,s){super(n,s),this.parser=e,this.decisionToDFA=i,this.predictionMode=n1.LL,this._input=null,this._startIndex=0,this._outerContext=null,this._dfa=null,this.mergeCache=null,this.debug=!1,this.debug_closure=!1,this.debug_add=!1,this.debug_list_atn_decisions=!1,this.dfa_debug=!1,this.retry_debug=!1}reset(){}adaptivePredict(e,n,i){(this.debug||this.debug_list_atn_decisions)&&console.log("adaptivePredict decision "+n+" exec LA(1)=="+this.getLookaheadName(e)+" line "+e.LT(1).line+":"+e.LT(1).column),this._input=e,this._startIndex=e.index,this._outerContext=i;const s=this.decisionToDFA[n];this._dfa=s;const r=e.mark(),o=e.index;try{let l;if(s.precedenceDfa?l=s.getPrecedenceStartState(this.parser.getPrecedence()):l=s.s0,l===null){i===null&&(i=a0.EMPTY),(this.debug||this.debug_list_atn_decisions)&&console.log("predictATN decision "+s.decision+" exec LA(1)=="+this.getLookaheadName(e)+", outerContext="+i.toString(this.parser.ruleNames));const a=!1;let c=this.computeStartState(s.atnStartState,a0.EMPTY,a);s.precedenceDfa?(s.s0.configs=c,c=this.applyPrecedenceFilter(c),l=this.addDFAState(s,new k4(null,c)),s.setPrecedenceStartState(this.parser.getPrecedence(),l)):(l=this.addDFAState(s,new k4(null,c)),s.s0=l)}const L=this.execATN(s,l,e,o,i);return this.debug&&console.log("DFA after predictATN: "+s.toString(this.parser.literalNames,this.parser.symbolicNames)),L}finally{this._dfa=null,this.mergeCache=null,e.seek(o),e.release(r)}}execATN(e,n,i,s,r){(this.debug||this.debug_list_atn_decisions)&&console.log("execATN decision "+e.decision+" exec LA(1)=="+this.getLookaheadName(i)+" line "+i.LT(1).line+":"+i.LT(1).column);let o,l=n;this.debug&&console.log("s0 = "+n);let L=i.LA(1);for(;;){let a=this.getExistingTargetState(l,L);if(a===null&&(a=this.computeTargetState(e,l,L)),a===l4.ERROR){const c=this.noViableAlt(i,r,l.configs,s);if(i.seek(s),o=this.getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule(l.configs,r),o!==c1.INVALID_ALT_NUMBER)return o;throw c}if(a.requiresFullContext&&this.predictionMode!==n1.SLL){let c=null;if(a.predicates!==null){this.debug&&console.log("DFA state has preds in DFA sim LL failover");const h=i.index;if(h!==s&&i.seek(s),c=this.evalSemanticContext(a.predicates,r,!0),c.length===1)return this.debug&&console.log("Full LL avoided"),c.minValue();h!==s&&i.seek(h)}this.dfa_debug&&console.log("ctx sensitive state "+r+" in "+a);const C=!0,u=this.computeStartState(e.atnStartState,r,C);return this.reportAttemptingFullContext(e,c,a.configs,s,i.index),o=this.execATNWithFullContext(e,a,u,i,s,r),o}if(a.isAcceptState){if(a.predicates===null)return a.prediction;const c=i.index;i.seek(s);const C=this.evalSemanticContext(a.predicates,r,!0);if(C.length===0)throw this.noViableAlt(i,r,a.configs,s);return C.length===1||this.reportAmbiguity(e,a,s,c,!1,C,a.configs),C.minValue()}l=a,L!==Y.EOF&&(i.consume(),L=i.LA(1))}}getExistingTargetState(e,n){const i=e.edges;return i===null?null:i[n+1]||null}computeTargetState(e,n,i){const s=this.computeReachSet(n.configs,i,!1);if(s===null)return this.addDFAEdge(e,n,i,l4.ERROR),l4.ERROR;let r=new k4(null,s);const o=this.getUniqueAlt(s);if(this.debug){const l=n1.getConflictingAltSubsets(s);console.log("SLL altSubSets="+$4(l)+", configs="+s+", predict="+o+", allSubsetsConflict="+n1.allSubsetsConflict(l)+", conflictingAlts="+this.getConflictingAlts(s))}return o!==c1.INVALID_ALT_NUMBER?(r.isAcceptState=!0,r.configs.uniqueAlt=o,r.prediction=o):n1.hasSLLConflictTerminatingPrediction(this.predictionMode,s)&&(r.configs.conflictingAlts=this.getConflictingAlts(s),r.requiresFullContext=!0,r.isAcceptState=!0,r.prediction=r.configs.conflictingAlts.minValue()),r.isAcceptState&&r.configs.hasSemanticContext&&(this.predicateDFAState(r,this.atn.getDecisionState(e.decision)),r.predicates!==null&&(r.prediction=c1.INVALID_ALT_NUMBER)),r=this.addDFAEdge(e,n,i,r),r}predicateDFAState(e,n){const i=n.transitions.length,s=this.getConflictingAltsOrUniqueAlt(e.configs),r=this.getPredsForAmbigAlts(s,e.configs,i);r!==null?(e.predicates=this.getPredicatePredictions(s,r),e.prediction=c1.INVALID_ALT_NUMBER):e.prediction=s.minValue()}execATNWithFullContext(e,n,i,s,r,o){(this.debug||this.debug_list_atn_decisions)&&console.log("execATNWithFullContext "+i);const l=!0;let L=!1,a,c=i;s.seek(r);let C=s.LA(1),u=-1;for(;;){if(a=this.computeReachSet(c,C,l),a===null){const f=this.noViableAlt(s,o,c,r);s.seek(r);const w=this.getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule(c,o);if(w!==c1.INVALID_ALT_NUMBER)return w;throw f}const h=n1.getConflictingAltSubsets(a);if(this.debug&&console.log("LL altSubSets="+h+", predict="+n1.getUniqueAlt(h)+", resolvesToJustOneViableAlt="+n1.resolvesToJustOneViableAlt(h)),a.uniqueAlt=this.getUniqueAlt(a),a.uniqueAlt!==c1.INVALID_ALT_NUMBER){u=a.uniqueAlt;break}else if(this.predictionMode!==n1.LL_EXACT_AMBIG_DETECTION){if(u=n1.resolvesToJustOneViableAlt(h),u!==c1.INVALID_ALT_NUMBER)break}else if(n1.allSubsetsConflict(h)&&n1.allSubsetsEqual(h)){L=!0,u=n1.getSingleViableAlt(h);break}c=a,C!==Y.EOF&&(s.consume(),C=s.LA(1))}return a.uniqueAlt!==c1.INVALID_ALT_NUMBER?(this.reportContextSensitivity(e,u,a,r,s.index),u):(this.reportAmbiguity(e,n,r,s.index,L,null,a),u)}computeReachSet(e,n,i){this.debug&&console.log("in computeReachSet, starting closure: "+e),this.mergeCache===null&&(this.mergeCache=new Tf);const s=new K1(i);let r=null;for(let l=0;l<e.items.length;l++){const L=e.items[l];if(this.debug&&console.log("testing "+this.getTokenName(n)+" at "+L),L.state instanceof j1){(i||n===Y.EOF)&&(r===null&&(r=[]),r.push(L),this.debug_add&&console.log("added "+L+" to skippedStopStates"));continue}for(let a=0;a<L.state.transitions.length;a++){const c=L.state.transitions[a],C=this.getReachableTarget(c,n);if(C!==null){const u=new g1({state:C},L);s.add(u,this.mergeCache),this.debug_add&&console.log("added "+u+" to intermediate")}}}let o=null;if(r===null&&n!==Y.EOF&&(s.items.length===1||this.getUniqueAlt(s)!==c1.INVALID_ALT_NUMBER)&&(o=s),o===null){o=new K1(i);const l=new v3,L=n===Y.EOF;for(let a=0;a<s.items.length;a++)this.closure(s.items[a],o,l,!1,i,L)}if(n===Y.EOF&&(o=this.removeAllConfigsNotInRuleStopState(o,o===s)),r!==null&&(!i||!n1.hasConfigInRuleStopState(o)))for(let l=0;l<r.length;l++)o.add(r[l],this.mergeCache);return o.items.length===0?null:o}removeAllConfigsNotInRuleStopState(e,n){if(n1.allConfigsInRuleStopStates(e))return e;const i=new K1(e.fullCtx);for(let s=0;s<e.items.length;s++){const r=e.items[s];if(r.state instanceof j1){i.add(r,this.mergeCache);continue}if(n&&r.state.epsilonOnlyTransitions&&this.atn.nextTokens(r.state).contains(Y.EPSILON)){const l=this.atn.ruleToStopState[r.state.ruleIndex];i.add(new g1({state:l},r),this.mergeCache)}}return i}computeStartState(e,n,i){const s=pe(this.atn,n),r=new K1(i);for(let o=0;o<e.transitions.length;o++){const l=e.transitions[o].target,L=new g1({state:l,alt:o+1,context:s},null),a=new v3;this.closure(L,r,a,!0,i,!1)}return r}applyPrecedenceFilter(e){let n;const i=[],s=new K1(e.fullCtx);for(let r=0;r<e.items.length;r++){if(n=e.items[r],n.alt!==1)continue;const o=n.semanticContext.evalPrecedence(this.parser,this._outerContext);o!==null&&(i[n.state.stateNumber]=n.context,o!==n.semanticContext?s.add(new g1({semanticContext:o},n),this.mergeCache):s.add(n,this.mergeCache))}for(let r=0;r<e.items.length;r++)if(n=e.items[r],n.alt!==1){if(!n.precedenceFilterSuppressed){const o=i[n.state.stateNumber]||null;if(o!==null&&o.equals(n.context))continue}s.add(n,this.mergeCache)}return s}getReachableTarget(e,n){return e.matches(n,0,this.atn.maxTokenType)?e.target:null}getPredsForAmbigAlts(e,n,i){let s=[];for(let o=0;o<n.items.length;o++){const l=n.items[o];e.has(l.alt)&&(s[l.alt]=j2.orContext(s[l.alt]||null,l.semanticContext))}let r=0;for(let o=1;o<i+1;o++){const l=s[o]||null;l===null?s[o]=j2.NONE:l!==j2.NONE&&(r+=1)}return r===0&&(s=null),this.debug&&console.log("getPredsForAmbigAlts result "+$4(s)),s}getPredicatePredictions(e,n){const i=[];let s=!1;for(let r=1;r<n.length;r++){const o=n[r];e!==null&&e.has(r)&&i.push(new go(o,r)),o!==j2.NONE&&(s=!0)}return s?i:null}getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule(e,n){const i=this.splitAccordingToSemanticValidity(e,n),s=i[0],r=i[1];let o=this.getAltThatFinishedDecisionEntryRule(s);return o!==c1.INVALID_ALT_NUMBER||r.items.length>0&&(o=this.getAltThatFinishedDecisionEntryRule(r),o!==c1.INVALID_ALT_NUMBER)?o:c1.INVALID_ALT_NUMBER}getAltThatFinishedDecisionEntryRule(e){const n=[];for(let i=0;i<e.items.length;i++){const s=e.items[i];(s.reachesIntoOuterContext>0||s.state instanceof j1&&s.context.hasEmptyPath())&&n.indexOf(s.alt)<0&&n.push(s.alt)}return n.length===0?c1.INVALID_ALT_NUMBER:Math.min.apply(null,n)}splitAccordingToSemanticValidity(e,n){const i=new K1(e.fullCtx),s=new K1(e.fullCtx);for(let r=0;r<e.items.length;r++){const o=e.items[r];o.semanticContext!==j2.NONE?o.semanticContext.evaluate(this.parser,n)?i.add(o):s.add(o):i.add(o)}return[i,s]}evalSemanticContext(e,n,i){const s=new o4;for(let r=0;r<e.length;r++){const o=e[r];if(o.pred===j2.NONE){if(s.add(o.alt),!i)break;continue}const l=o.pred.evaluate(this.parser,n);if((this.debug||this.dfa_debug)&&console.log("eval pred "+o+"="+l),l&&((this.debug||this.dfa_debug)&&console.log("PREDICT "+o.alt),s.add(o.alt),!i))break}return s}closure(e,n,i,s,r,o){this.closureCheckingStopState(e,n,i,s,r,0,o)}closureCheckingStopState(e,n,i,s,r,o,l){if((this.debug||this.debug_closure)&&(console.log("closure("+e.toString(this.parser,!0)+")"),e.reachesIntoOuterContext>50))throw"problem";if(e.state instanceof j1)if(e.context.isEmpty())if(r){n.add(e,this.mergeCache);return}else this.debug&&console.log("FALLING off rule "+this.getRuleName(e.state.ruleIndex));else{for(let L=0;L<e.context.length;L++){if(e.context.getReturnState(L)===P2.EMPTY_RETURN_STATE){if(r){n.add(new g1({state:e.state,context:P2.EMPTY},e),this.mergeCache);continue}else this.debug&&console.log("FALLING off rule "+this.getRuleName(e.state.ruleIndex)),this.closure_(e,n,i,s,r,o,l);continue}const a=this.atn.states[e.context.getReturnState(L)],c=e.context.getParent(L),C={state:a,alt:e.alt,context:c,semanticContext:e.semanticContext},u=new g1(C,null);u.reachesIntoOuterContext=e.reachesIntoOuterContext,this.closureCheckingStopState(u,n,i,s,r,o-1,l)}return}this.closure_(e,n,i,s,r,o,l)}closure_(e,n,i,s,r,o,l){const L=e.state;L.epsilonOnlyTransitions||n.add(e,this.mergeCache);for(let a=0;a<L.transitions.length;a++){if(a===0&&this.canDropLoopEntryEdgeInLeftRecursiveRule(e))continue;const c=L.transitions[a],C=s&&!(c instanceof co),u=this.getEpsilonTarget(e,c,C,o===0,r,l);if(u!==null){let h=o;if(e.state instanceof j1){if(this._dfa!==null&&this._dfa.precedenceDfa&&c.outermostPrecedenceReturn===this._dfa.atnStartState.ruleIndex&&(u.precedenceFilterSuppressed=!0),u.reachesIntoOuterContext+=1,i.add(u)!==u)continue;n.dipsIntoOuterContext=!0,h-=1,this.debug&&console.log("dips into outer ctx: "+u)}else{if(!c.isEpsilon&&i.add(u)!==u)continue;c instanceof B8&&h>=0&&(h+=1)}this.closureCheckingStopState(u,n,i,C,r,h,l)}}}canDropLoopEntryEdgeInLeftRecursiveRule(e){const n=e.state;if(n.stateType!==p2.STAR_LOOP_ENTRY||n.stateType!==p2.STAR_LOOP_ENTRY||!n.isPrecedenceDecision||e.context.isEmpty()||e.context.hasEmptyPath())return!1;const i=e.context.length;for(let l=0;l<i;l++)if(this.atn.states[e.context.getReturnState(l)].ruleIndex!==n.ruleIndex)return!1;const r=n.transitions[0].target.endState.stateNumber,o=this.atn.states[r];for(let l=0;l<i;l++){const L=e.context.getReturnState(l),a=this.atn.states[L];if(a.transitions.length!==1||!a.transitions[0].isEpsilon)return!1;const c=a.transitions[0].target;if(!(a.stateType===p2.BLOCK_END&&c===n)&&a!==o&&c!==o&&!(c.stateType===p2.BLOCK_END&&c.transitions.length===1&&c.transitions[0].isEpsilon&&c.transitions[0].target===n))return!1}return!0}getRuleName(e){return this.parser!==null&&e>=0?this.parser.ruleNames[e]:"<rule "+e+">"}getEpsilonTarget(e,n,i,s,r,o){switch(n.serializationType){case d2.RULE:return this.ruleTransition(e,n);case d2.PRECEDENCE:return this.precedenceTransition(e,n,i,s,r);case d2.PREDICATE:return this.predTransition(e,n,i,s,r);case d2.ACTION:return this.actionTransition(e,n);case d2.EPSILON:return new g1({state:n.target},e);case d2.ATOM:case d2.RANGE:case d2.SET:return o&&n.matches(Y.EOF,0,1)?new g1({state:n.target},e):null;default:return null}}actionTransition(e,n){if(this.debug){const i=n.actionIndex===-1?65535:n.actionIndex;console.log("ACTION edge "+n.ruleIndex+":"+i)}return new g1({state:n.target},e)}precedenceTransition(e,n,i,s,r){this.debug&&(console.log("PRED (collectPredicates="+i+") "+n.precedence+">=_p, ctx dependent=true"),this.parser!==null&&console.log("context surrounding pred is "+$4(this.parser.getRuleInvocationStack())));let o=null;if(i&&s)if(r){const l=this._input.index;this._input.seek(this._startIndex);const L=n.getPredicate().evaluate(this.parser,this._outerContext);this._input.seek(l),L&&(o=new g1({state:n.target},e))}else{const l=j2.andContext(e.semanticContext,n.getPredicate());o=new g1({state:n.target,semanticContext:l},e)}else o=new g1({state:n.target},e);return this.debug&&console.log("config from pred transition="+o),o}predTransition(e,n,i,s,r){this.debug&&(console.log("PRED (collectPredicates="+i+") "+n.ruleIndex+":"+n.predIndex+", ctx dependent="+n.isCtxDependent),this.parser!==null&&console.log("context surrounding pred is "+$4(this.parser.getRuleInvocationStack())));let o=null;if(i&&(n.isCtxDependent&&s||!n.isCtxDependent))if(r){const l=this._input.index;this._input.seek(this._startIndex);const L=n.getPredicate().evaluate(this.parser,this._outerContext);this._input.seek(l),L&&(o=new g1({state:n.target},e))}else{const l=j2.andContext(e.semanticContext,n.getPredicate());o=new g1({state:n.target,semanticContext:l},e)}else o=new g1({state:n.target},e);return this.debug&&console.log("config from pred transition="+o),o}ruleTransition(e,n){this.debug&&console.log("CALL rule "+this.getRuleName(n.target.ruleIndex)+", ctx="+e.context);const i=n.followState,s=q1.create(e.context,i.stateNumber);return new g1({state:n.target,context:s},e)}getConflictingAlts(e){const n=n1.getConflictingAltSubsets(e);return n1.getAlts(n)}getConflictingAltsOrUniqueAlt(e){let n=null;return e.uniqueAlt!==c1.INVALID_ALT_NUMBER?(n=new o4,n.add(e.uniqueAlt)):n=e.conflictingAlts,n}getTokenName(e){if(e===Y.EOF)return"EOF";if(this.parser!==null&&this.parser.literalNames!==null)if(e>=this.parser.literalNames.length&&e>=this.parser.symbolicNames.length)console.log(""+e+" ttype out of range: "+this.parser.literalNames),console.log(""+this.parser.getInputStream().getTokens());else return(this.parser.literalNames[e]||this.parser.symbolicNames[e])+"<"+e+">";return""+e}getLookaheadName(e){return this.getTokenName(e.LA(1))}dumpDeadEndConfigs(e){console.log("dead end configs: ");const n=e.getDeadEndConfigs();for(let i=0;i<n.length;i++){const s=n[i];let r="no edges";if(s.state.transitions.length>0){const o=s.state.transitions[0];o instanceof H8?r="Atom "+this.getTokenName(o.label):o instanceof he&&(r=(o instanceof de?"~":"")+"Set "+o.set)}console.error(s.toString(this.parser,!0)+":"+r)}}noViableAlt(e,n,i,s){return new Oe(this.parser,e,e.get(s),e.LT(1),i,n)}getUniqueAlt(e){let n=c1.INVALID_ALT_NUMBER;for(let i=0;i<e.items.length;i++){const s=e.items[i];if(n===c1.INVALID_ALT_NUMBER)n=s.alt;else if(s.alt!==n)return c1.INVALID_ALT_NUMBER}return n}addDFAEdge(e,n,i,s){if(this.debug&&console.log("EDGE "+n+" -> "+s+" upon "+this.getTokenName(i)),s===null)return null;if(s=this.addDFAState(e,s),n===null||i<-1||i>this.atn.maxTokenType)return s;if(n.edges===null&&(n.edges=[]),n.edges[i+1]=s,this.debug){const r=this.parser===null?null:this.parser.literalNames,o=this.parser===null?null:this.parser.symbolicNames;console.log(`DFA=
14
14
  `+e.toString(r,o))}return s}addDFAState(e,n){if(n===l4.ERROR)return n;const i=e.states.get(n);return i!==null?i:(n.stateNumber=e.states.length,n.configs.readOnly||(n.configs.optimizeConfigs(this),n.configs.setReadonly(!0)),e.states.add(n),this.debug&&console.log("adding new DFA state: "+n),n)}reportAttemptingFullContext(e,n,i,s,r){if(this.debug||this.retry_debug){const o=new q2(s,r+1);console.log("reportAttemptingFullContext decision="+e.decision+":"+i+", input="+this.parser.getTokenStream().getText(o))}this.parser!==null&&this.parser.getErrorListenerDispatch().reportAttemptingFullContext(this.parser,e,s,r,n,i)}reportContextSensitivity(e,n,i,s,r){if(this.debug||this.retry_debug){const o=new q2(s,r+1);console.log("reportContextSensitivity decision="+e.decision+":"+i+", input="+this.parser.getTokenStream().getText(o))}this.parser!==null&&this.parser.getErrorListenerDispatch().reportContextSensitivity(this.parser,e,s,r,n,i)}reportAmbiguity(e,n,i,s,r,o,l){if(this.debug||this.retry_debug){const L=new q2(i,s+1);console.log("reportAmbiguity "+o+":"+l+", input="+this.parser.getTokenStream().getText(L))}this.parser!==null&&this.parser.getErrorListenerDispatch().reportAmbiguity(this.parser,e,i,s,r,o,l)}}const bf={ATN:c1,ATNDeserializer:uo,LexerATNSimulator:h1,ParserATNSimulator:Sf,PredictionMode:n1};class Ne{constructor(e,n,i){this.dfa=e,this.literalNames=n||[],this.symbolicNames=i||[]}toString(){if(this.dfa.s0===null)return null;let e="";const n=this.dfa.sortedStates();for(let i=0;i<n.length;i++){const s=n[i];if(s.edges!==null){const r=s.edges.length;for(let o=0;o<r;o++){const l=s.edges[o]||null;l!==null&&l.stateNumber!==2147483647&&(e=e.concat(this.getStateString(s)),e=e.concat("-"),e=e.concat(this.getEdgeLabel(o)),e=e.concat("->"),e=e.concat(this.getStateString(l)),e=e.concat(`
15
- `))}}}return e.length===0?null:e}getEdgeLabel(e){return e===0?"EOF":this.literalNames!==null||this.symbolicNames!==null?this.literalNames[e-1]||this.symbolicNames[e-1]:String.fromCharCode(e-1)}getStateString(e){const n=(e.isAcceptState?":":"")+"s"+e.stateNumber+(e.requiresFullContext?"^":"");return e.isAcceptState?e.predicates!==null?n+"=>"+$4(e.predicates):n+"=>"+e.prediction.toString():n}}class po extends Ne{constructor(e){super(e,null)}getEdgeLabel(e){return"'"+String.fromCharCode(e)+"'"}}class Ef{constructor(e,n){if(n===void 0&&(n=0),this.atnStartState=e,this.decision=n,this._states=new v3,this.s0=null,this.precedenceDfa=!1,e instanceof R9&&e.isPrecedenceDecision){this.precedenceDfa=!0;const i=new k4(null,new K1);i.edges=[],i.isAcceptState=!1,i.requiresFullContext=!1,this.s0=i}}getPrecedenceStartState(e){if(!this.precedenceDfa)throw"Only precedence DFAs may contain a precedence start state.";return e<0||e>=this.s0.edges.length?null:this.s0.edges[e]||null}setPrecedenceStartState(e,n){if(!this.precedenceDfa)throw"Only precedence DFAs may contain a precedence start state.";e<0||(this.s0.edges[e]=n)}setPrecedenceDfa(e){if(this.precedenceDfa!==e){if(this._states=new v3,e){const n=new k4(null,new K1);n.edges=[],n.isAcceptState=!1,n.requiresFullContext=!1,this.s0=n}else this.s0=null;this.precedenceDfa=e}}sortedStates(){return this._states.values().sort(function(n,i){return n.stateNumber-i.stateNumber})}toString(e,n){return e=e||null,n=n||null,this.s0===null?"":new Ne(this,e,n).toString()}toLexerString(){return this.s0===null?"":new po(this).toString()}get states(){return this._states}}const If={DFA:Ef,DFASerializer:Ne,LexerDFASerializer:po,PredPrediction:go};class mo{visitTerminal(e){}visitErrorNode(e){}enterEveryRule(e){}exitEveryRule(e){}}class Ff{visit(e){return Array.isArray(e)?e.map(function(n){return n.accept(this)},this):e.accept(this)}visitChildren(e){return e.children?this.visit(e.children):null}visitTerminal(e){}visitErrorNode(e){}}class De{walk(e,n){if(n instanceof U8||n.isErrorNode!==void 0&&n.isErrorNode())e.visitErrorNode(n);else if(n instanceof R4)e.visitTerminal(n);else{this.enterRule(e,n);for(let s=0;s<n.getChildCount();s++){const r=n.getChild(s);this.walk(e,r)}this.exitRule(e,n)}}enterRule(e,n){const i=n.getRuleContext();e.enterEveryRule(i),i.enterRule(e)}exitRule(e,n){const i=n.getRuleContext();i.exitRule(e),e.exitEveryRule(i)}}De.DEFAULT=new De;const Of={Trees:s4,RuleNode:z8,ErrorNode:U8,TerminalNode:R4,ParseTreeListener:mo,ParseTreeVisitor:Ff,ParseTreeWalker:De};class C5 extends V4{constructor(e){super({message:"",recognizer:e,input:e.getInputStream(),ctx:e._ctx}),this.offendingToken=e.getCurrentToken()}}class wo extends V4{constructor(e,n,i){super({message:Nf(n,i||null),recognizer:e,input:e.getInputStream(),ctx:e._ctx});const r=e._interp.atn.states[e.state].transitions[0];r instanceof Co?(this.ruleIndex=r.ruleIndex,this.predicateIndex=r.predIndex):(this.ruleIndex=0,this.predicateIndex=0),this.predicate=n,this.offendingToken=e.getCurrentToken()}}function Nf(t,e){return e!==null?e:"failed predicate: {"+t+"}?"}class Df extends j8{constructor(e){super(),e=e||!0,this.exactOnly=e}reportAmbiguity(e,n,i,s,r,o,l){if(this.exactOnly&&!r)return;const L="reportAmbiguity d="+this.getDecisionDescription(e,n)+": ambigAlts="+this.getConflictingAlts(o,l)+", input='"+e.getTokenStream().getText(new q2(i,s))+"'";e.notifyErrorListeners(L)}reportAttemptingFullContext(e,n,i,s,r,o){const l="reportAttemptingFullContext d="+this.getDecisionDescription(e,n)+", input='"+e.getTokenStream().getText(new q2(i,s))+"'";e.notifyErrorListeners(l)}reportContextSensitivity(e,n,i,s,r,o){const l="reportContextSensitivity d="+this.getDecisionDescription(e,n)+", input='"+e.getTokenStream().getText(new q2(i,s))+"'";e.notifyErrorListeners(l)}getDecisionDescription(e,n){const i=n.decision,s=n.atnStartState.ruleIndex,r=e.ruleNames;if(s<0||s>=r.length)return""+i;const o=r[s]||null;return o===null||o.length===0?""+i:`${i} (${o})`}getConflictingAlts(e,n){if(e!==null)return e;const i=new o4;for(let s=0;s<n.items.length;s++)i.add(n.items[s].alt);return`{${i.values().join(", ")}}`}}class Pe extends Error{constructor(){super(),Error.captureStackTrace(this,Pe)}}class Pf{reset(e){}recoverInline(e){}recover(e,n){}sync(e){}inErrorRecoveryMode(e){}reportError(e){}}class Be extends Pf{constructor(){super(),this.errorRecoveryMode=!1,this.lastErrorIndex=-1,this.lastErrorStates=null,this.nextTokensContext=null,this.nextTokenState=0}reset(e){this.endErrorCondition(e)}beginErrorCondition(e){this.errorRecoveryMode=!0}inErrorRecoveryMode(e){return this.errorRecoveryMode}endErrorCondition(e){this.errorRecoveryMode=!1,this.lastErrorStates=null,this.lastErrorIndex=-1}reportMatch(e){this.endErrorCondition(e)}reportError(e,n){this.inErrorRecoveryMode(e)||(this.beginErrorCondition(e),n instanceof Oe?this.reportNoViableAlternative(e,n):n instanceof C5?this.reportInputMismatch(e,n):n instanceof wo?this.reportFailedPredicate(e,n):(console.log("unknown recognition error type: "+n.constructor.name),console.log(n.stack),e.notifyErrorListeners(n.getOffendingToken(),n.getMessage(),n)))}recover(e,n){this.lastErrorIndex===e.getInputStream().index&&this.lastErrorStates!==null&&this.lastErrorStates.indexOf(e.state)>=0&&e.consume(),this.lastErrorIndex=e._input.index,this.lastErrorStates===null&&(this.lastErrorStates=[]),this.lastErrorStates.push(e.state);const i=this.getErrorRecoverySet(e);this.consumeUntil(e,i)}sync(e){if(this.inErrorRecoveryMode(e))return;const n=e._interp.atn.states[e.state],i=e.getTokenStream().LA(1),s=e.atn.nextTokens(n);if(s.contains(i)){this.nextTokensContext=null,this.nextTokenState=p2.INVALID_STATE_NUMBER;return}else if(s.contains(Y.EPSILON)){this.nextTokensContext===null&&(this.nextTokensContext=e._ctx,this.nextTokensState=e._stateNumber);return}switch(n.stateType){case p2.BLOCK_START:case p2.STAR_BLOCK_START:case p2.PLUS_BLOCK_START:case p2.STAR_LOOP_ENTRY:if(this.singleTokenDeletion(e)!==null)return;throw new C5(e);case p2.PLUS_LOOP_BACK:case p2.STAR_LOOP_BACK:{this.reportUnwantedToken(e);const r=new E3;r.addSet(e.getExpectedTokens());const o=r.addSet(this.getErrorRecoverySet(e));this.consumeUntil(e,o)}break}}reportNoViableAlternative(e,n){const i=e.getTokenStream();let s;i!==null?n.startToken.type===Y.EOF?s="<EOF>":s=i.getText(new q2(n.startToken.tokenIndex,n.offendingToken.tokenIndex)):s="<unknown input>";const r="no viable alternative at input "+this.escapeWSAndQuote(s);e.notifyErrorListeners(r,n.offendingToken,n)}reportInputMismatch(e,n){const i="mismatched input "+this.getTokenErrorDisplay(n.offendingToken)+" expecting "+n.getExpectedTokens().toString(e.literalNames,e.symbolicNames);e.notifyErrorListeners(i,n.offendingToken,n)}reportFailedPredicate(e,n){const s="rule "+e.ruleNames[e._ctx.ruleIndex]+" "+n.message;e.notifyErrorListeners(s,n.offendingToken,n)}reportUnwantedToken(e){if(this.inErrorRecoveryMode(e))return;this.beginErrorCondition(e);const n=e.getCurrentToken(),i=this.getTokenErrorDisplay(n),s=this.getExpectedTokens(e),r="extraneous input "+i+" expecting "+s.toString(e.literalNames,e.symbolicNames);e.notifyErrorListeners(r,n,null)}reportMissingToken(e){if(this.inErrorRecoveryMode(e))return;this.beginErrorCondition(e);const n=e.getCurrentToken(),s="missing "+this.getExpectedTokens(e).toString(e.literalNames,e.symbolicNames)+" at "+this.getTokenErrorDisplay(n);e.notifyErrorListeners(s,n,null)}recoverInline(e){const n=this.singleTokenDeletion(e);if(n!==null)return e.consume(),n;if(this.singleTokenInsertion(e))return this.getMissingSymbol(e);throw new C5(e)}singleTokenInsertion(e){const n=e.getTokenStream().LA(1),i=e._interp.atn,r=i.states[e.state].transitions[0].target;return i.nextTokens(r,e._ctx).contains(n)?(this.reportMissingToken(e),!0):!1}singleTokenDeletion(e){const n=e.getTokenStream().LA(2);if(this.getExpectedTokens(e).contains(n)){this.reportUnwantedToken(e),e.consume();const s=e.getCurrentToken();return this.reportMatch(e),s}else return null}getMissingSymbol(e){const n=e.getCurrentToken(),s=this.getExpectedTokens(e).first();let r;s===Y.EOF?r="<missing EOF>":r="<missing "+e.literalNames[s]+">";let o=n;const l=e.getTokenStream().LT(-1);return o.type===Y.EOF&&l!==null&&(o=l),e.getTokenFactory().create(o.source,s,r,Y.DEFAULT_CHANNEL,-1,-1,o.line,o.column)}getExpectedTokens(e){return e.getExpectedTokens()}getTokenErrorDisplay(e){if(e===null)return"<no token>";let n=e.text;return n===null&&(e.type===Y.EOF?n="<EOF>":n="<"+e.type+">"),this.escapeWSAndQuote(n)}escapeWSAndQuote(e){return e=e.replace(/\n/g,"\\n"),e=e.replace(/\r/g,"\\r"),e=e.replace(/\t/g,"\\t"),"'"+e+"'"}getErrorRecoverySet(e){const n=e._interp.atn;let i=e._ctx;const s=new E3;for(;i!==null&&i.invokingState>=0;){const o=n.states[i.invokingState].transitions[0],l=n.nextTokens(o.followState);s.addSet(l),i=i.parentCtx}return s.removeOne(Y.EPSILON),s}consumeUntil(e,n){let i=e.getTokenStream().LA(1);for(;i!==Y.EOF&&!n.contains(i);)e.consume(),i=e.getTokenStream().LA(1)}}class Bf extends Be{constructor(){super()}recover(e,n){let i=e._ctx;for(;i!==null;)i.exception=n,i=i.parentCtx;throw new Pe(n)}recoverInline(e){this.recover(e,new C5(e))}sync(e){}}const zf={RecognitionException:V4,NoViableAltException:Oe,LexerNoViableAltException:Fe,InputMismatchException:C5,FailedPredicateException:wo,DiagnosticErrorListener:Df,BailErrorStrategy:Bf,DefaultErrorStrategy:Be,ErrorListener:j8};class k9{constructor(e,n){if(this.name="<empty>",this.strdata=e,this.decodeToUnicodeCodePoints=n||!1,this._index=0,this.data=[],this.decodeToUnicodeCodePoints)for(let i=0;i<this.strdata.length;){const s=this.strdata.codePointAt(i);this.data.push(s),i+=s<=65535?1:2}else{this.data=new Array(this.strdata.length);for(let i=0;i<this.strdata.length;i++){const s=this.strdata.charCodeAt(i);this.data[i]=s}}this._size=this.data.length}reset(){this._index=0}consume(){if(this._index>=this._size)throw"cannot consume EOF";this._index+=1}LA(e){if(e===0)return 0;e<0&&(e+=1);const n=this._index+e-1;return n<0||n>=this._size?Y.EOF:this.data[n]}LT(e){return this.LA(e)}mark(){return-1}release(e){}seek(e){if(e<=this._index){this._index=e;return}this._index=Math.min(e,this._size)}getText(e,n){if(n>=this._size&&(n=this._size-1),e>=this._size)return"";if(this.decodeToUnicodeCodePoints){let i="";for(let s=e;s<=n;s++)i+=String.fromCodePoint(this.data[s]);return i}else return this.strdata.slice(e,n+1)}toString(){return this.strdata}get index(){return this._index}get size(){return this._size}}const ze={},Uf={fromString:function(t){return new k9(t,!0)},fromBlob:function(t,e,n,i){const s=new window.FileReader;s.onload=function(r){const o=new k9(r.target.result,!0);n(o)},s.onerror=i,s.readAsText(t,e)},fromBuffer:function(t,e){return new k9(t.toString(e),!0)},fromPath:function(t,e,n){ze.readFile(t,e,function(i,s){let r=null;s!==null&&(r=new k9(s,!0)),n(i,r)})},fromPathSync:function(t,e){const n=ze.readFileSync(t,e);return new k9(n,!0)}};class Wf extends k9{constructor(e,n){const i=ze.readFileSync(e,"utf8");super(i,n),this.fileName=e}}class Hf{}class $f extends Hf{constructor(e){super(),this.tokenSource=e,this.tokens=[],this.index=-1,this.fetchedEOF=!1}mark(){return 0}release(e){}reset(){this.seek(0)}seek(e){this.lazyInit(),this.index=this.adjustSeekIndex(e)}get(e){return this.lazyInit(),this.tokens[e]}consume(){let e=!1;if(this.index>=0?this.fetchedEOF?e=this.index<this.tokens.length-1:e=this.index<this.tokens.length:e=!1,!e&&this.LA(1)===Y.EOF)throw"cannot consume EOF";this.sync(this.index+1)&&(this.index=this.adjustSeekIndex(this.index+1))}sync(e){const n=e-this.tokens.length+1;return n>0?this.fetch(n)>=n:!0}fetch(e){if(this.fetchedEOF)return 0;for(let n=0;n<e;n++){const i=this.tokenSource.nextToken();if(i.tokenIndex=this.tokens.length,this.tokens.push(i),i.type===Y.EOF)return this.fetchedEOF=!0,n+1}return e}getTokens(e,n,i){if(i===void 0&&(i=null),e<0||n<0)return null;this.lazyInit();const s=[];n>=this.tokens.length&&(n=this.tokens.length-1);for(let r=e;r<n;r++){const o=this.tokens[r];if(o.type===Y.EOF)break;(i===null||i.contains(o.type))&&s.push(o)}return s}LA(e){return this.LT(e).type}LB(e){return this.index-e<0?null:this.tokens[this.index-e]}LT(e){if(this.lazyInit(),e===0)return null;if(e<0)return this.LB(-e);const n=this.index+e-1;return this.sync(n),n>=this.tokens.length?this.tokens[this.tokens.length-1]:this.tokens[n]}adjustSeekIndex(e){return e}lazyInit(){this.index===-1&&this.setup()}setup(){this.sync(0),this.index=this.adjustSeekIndex(0)}setTokenSource(e){this.tokenSource=e,this.tokens=[],this.index=-1,this.fetchedEOF=!1}nextTokenOnChannel(e,n){if(this.sync(e),e>=this.tokens.length)return-1;let i=this.tokens[e];for(;i.channel!==this.channel;){if(i.type===Y.EOF)return-1;e+=1,this.sync(e),i=this.tokens[e]}return e}previousTokenOnChannel(e,n){for(;e>=0&&this.tokens[e].channel!==n;)e-=1;return e}getHiddenTokensToRight(e,n){if(n===void 0&&(n=-1),this.lazyInit(),e<0||e>=this.tokens.length)throw""+e+" not in 0.."+this.tokens.length-1;const i=this.nextTokenOnChannel(e+1,u1.DEFAULT_TOKEN_CHANNEL),s=e+1,r=i===-1?this.tokens.length-1:i;return this.filterForChannel(s,r,n)}getHiddenTokensToLeft(e,n){if(n===void 0&&(n=-1),this.lazyInit(),e<0||e>=this.tokens.length)throw""+e+" not in 0.."+this.tokens.length-1;const i=this.previousTokenOnChannel(e-1,u1.DEFAULT_TOKEN_CHANNEL);if(i===e-1)return null;const s=i+1,r=e-1;return this.filterForChannel(s,r,n)}filterForChannel(e,n,i){const s=[];for(let r=e;r<n+1;r++){const o=this.tokens[r];i===-1?o.channel!==u1.DEFAULT_TOKEN_CHANNEL&&s.push(o):o.channel===i&&s.push(o)}return s.length===0?null:s}getSourceName(){return this.tokenSource.getSourceName()}getText(e){this.lazyInit(),this.fill(),e==null&&(e=new q2(0,this.tokens.length-1));let n=e.start;n instanceof Y&&(n=n.tokenIndex);let i=e.stop;if(i instanceof Y&&(i=i.tokenIndex),n===null||i===null||n<0||i<0)return"";i>=this.tokens.length&&(i=this.tokens.length-1);let s="";for(let r=n;r<i+1;r++){const o=this.tokens[r];if(o.type===Y.EOF)break;s=s+o.text}return s}fill(){for(this.lazyInit();this.fetch(1e3)===1e3;);}}class Vf extends $f{constructor(e,n){super(e),this.channel=n===void 0?Y.DEFAULT_CHANNEL:n}adjustSeekIndex(e){return this.nextTokenOnChannel(e,this.channel)}LB(e){if(e===0||this.index-e<0)return null;let n=this.index,i=1;for(;i<=e;)n=this.previousTokenOnChannel(n-1,this.channel),i+=1;return n<0?null:this.tokens[n]}LT(e){if(this.lazyInit(),e===0)return null;if(e<0)return this.LB(-e);let n=this.index,i=1;for(;i<e;)this.sync(n+1)&&(n=this.nextTokenOnChannel(n+1,this.channel)),i+=1;return this.tokens[n]}getNumberOfOnChannelTokens(){let e=0;this.fill();for(let n=0;n<this.tokens.length;n++){const i=this.tokens[n];if(i.channel===this.channel&&(e+=1),i.type===Y.EOF)break}return e}}class Gf extends mo{constructor(e){super(),this.parser=e}enterEveryRule(e){console.log("enter "+this.parser.ruleNames[e.ruleIndex]+", LT(1)="+this.parser._input.LT(1).text)}visitTerminal(e){console.log("consume "+e.symbol+" rule "+this.parser.ruleNames[this.parser._ctx.ruleIndex])}exitEveryRule(e){console.log("exit "+this.parser.ruleNames[e.ruleIndex]+", LT(1)="+this.parser._input.LT(1).text)}}class xo extends q8{constructor(e){super(),this._input=null,this._errHandler=new Be,this._precedenceStack=[],this._precedenceStack.push(0),this._ctx=null,this.buildParseTrees=!0,this._tracer=null,this._parseListeners=null,this._syntaxErrors=0,this.setInputStream(e)}reset(){this._input!==null&&this._input.seek(0),this._errHandler.reset(this),this._ctx=null,this._syntaxErrors=0,this.setTrace(!1),this._precedenceStack=[],this._precedenceStack.push(0),this._interp!==null&&this._interp.reset()}match(e){let n=this.getCurrentToken();return n.type===e?(this._errHandler.reportMatch(this),this.consume()):(n=this._errHandler.recoverInline(this),this.buildParseTrees&&n.tokenIndex===-1&&this._ctx.addErrorNode(n)),n}matchWildcard(){let e=this.getCurrentToken();return e.type>0?(this._errHandler.reportMatch(this),this.consume()):(e=this._errHandler.recoverInline(this),this._buildParseTrees&&e.tokenIndex===-1&&this._ctx.addErrorNode(e)),e}getParseListeners(){return this._parseListeners||[]}addParseListener(e){if(e===null)throw"listener";this._parseListeners===null&&(this._parseListeners=[]),this._parseListeners.push(e)}removeParseListener(e){if(this._parseListeners!==null){const n=this._parseListeners.indexOf(e);n>=0&&this._parseListeners.splice(n,1),this._parseListeners.length===0&&(this._parseListeners=null)}}removeParseListeners(){this._parseListeners=null}triggerEnterRuleEvent(){if(this._parseListeners!==null){const e=this._ctx;this._parseListeners.forEach(function(n){n.enterEveryRule(e),e.enterRule(n)})}}triggerExitRuleEvent(){if(this._parseListeners!==null){const e=this._ctx;this._parseListeners.slice(0).reverse().forEach(function(n){e.exitRule(n),n.exitEveryRule(e)})}}getTokenFactory(){return this._input.tokenSource._factory}setTokenFactory(e){this._input.tokenSource._factory=e}getATNWithBypassAlts(){const e=this.getSerializedATN();if(e===null)throw"The current parser does not support an ATN with bypass alternatives.";let n=this.bypassAltsAtnCache[e];if(n===null){const i=new a5;i.generateRuleBypassTransitions=!0,n=new uo(i).deserialize(e),this.bypassAltsAtnCache[e]=n}return n}getInputStream(){return this.getTokenStream()}setInputStream(e){this.setTokenStream(e)}getTokenStream(){return this._input}setTokenStream(e){this._input=null,this.reset(),this._input=e}getCurrentToken(){return this._input.LT(1)}notifyErrorListeners(e,n,i){n=n||null,i=i||null,n===null&&(n=this.getCurrentToken()),this._syntaxErrors+=1;const s=n.line,r=n.column;this.getErrorListenerDispatch().syntaxError(this,n,s,r,e,i)}consume(){const e=this.getCurrentToken();e.type!==Y.EOF&&this.getInputStream().consume();const n=this._parseListeners!==null&&this._parseListeners.length>0;if(this.buildParseTrees||n){let i;this._errHandler.inErrorRecoveryMode(this)?i=this._ctx.addErrorNode(e):i=this._ctx.addTokenNode(e),i.invokingState=this.state,n&&this._parseListeners.forEach(function(s){i instanceof U8||i.isErrorNode!==void 0&&i.isErrorNode()?s.visitErrorNode(i):i instanceof R4&&s.visitTerminal(i)})}return e}addContextToParseTree(){this._ctx.parentCtx!==null&&this._ctx.parentCtx.addChild(this._ctx)}enterRule(e,n,i){this.state=n,this._ctx=e,this._ctx.start=this._input.LT(1),this.buildParseTrees&&this.addContextToParseTree(),this.triggerEnterRuleEvent()}exitRule(){this._ctx.stop=this._input.LT(-1),this.triggerExitRuleEvent(),this.state=this._ctx.invokingState,this._ctx=this._ctx.parentCtx}enterOuterAlt(e,n){e.setAltNumber(n),this.buildParseTrees&&this._ctx!==e&&this._ctx.parentCtx!==null&&(this._ctx.parentCtx.removeLastChild(),this._ctx.parentCtx.addChild(e)),this._ctx=e}getPrecedence(){return this._precedenceStack.length===0?-1:this._precedenceStack[this._precedenceStack.length-1]}enterRecursionRule(e,n,i,s){this.state=n,this._precedenceStack.push(s),this._ctx=e,this._ctx.start=this._input.LT(1),this.triggerEnterRuleEvent()}pushNewRecursionContext(e,n,i){const s=this._ctx;s.parentCtx=e,s.invokingState=n,s.stop=this._input.LT(-1),this._ctx=e,this._ctx.start=s.start,this.buildParseTrees&&this._ctx.addChild(s),this.triggerEnterRuleEvent()}unrollRecursionContexts(e){this._precedenceStack.pop(),this._ctx.stop=this._input.LT(-1);const n=this._ctx,i=this.getParseListeners();if(i!==null&&i.length>0)for(;this._ctx!==e;)this.triggerExitRuleEvent(),this._ctx=this._ctx.parentCtx;else this._ctx=e;n.parentCtx=e,this.buildParseTrees&&e!==null&&e.addChild(n)}getInvokingContext(e){let n=this._ctx;for(;n!==null;){if(n.ruleIndex===e)return n;n=n.parentCtx}return null}precpred(e,n){return n>=this._precedenceStack[this._precedenceStack.length-1]}inContext(e){return!1}isExpectedToken(e){const n=this._interp.atn;let i=this._ctx;const s=n.states[this.state];let r=n.nextTokens(s);if(r.contains(e))return!0;if(!r.contains(Y.EPSILON))return!1;for(;i!==null&&i.invokingState>=0&&r.contains(Y.EPSILON);){const l=n.states[i.invokingState].transitions[0];if(r=n.nextTokens(l.followState),r.contains(e))return!0;i=i.parentCtx}return!!(r.contains(Y.EPSILON)&&e===Y.EOF)}getExpectedTokens(){return this._interp.atn.getExpectedTokens(this.state,this._ctx)}getExpectedTokensWithinCurrentRule(){const e=this._interp.atn,n=e.states[this.state];return e.nextTokens(n)}getRuleIndex(e){const n=this.getRuleIndexMap()[e];return n!==null?n:-1}getRuleInvocationStack(e){e=e||null,e===null&&(e=this._ctx);const n=[];for(;e!==null;){const i=e.ruleIndex;i<0?n.push("n/a"):n.push(this.ruleNames[i]),e=e.parentCtx}return n}getDFAStrings(){return this._interp.decisionToDFA.toString()}dumpDFA(){let e=!1;for(let n=0;n<this._interp.decisionToDFA.length;n++){const i=this._interp.decisionToDFA[n];i.states.length>0&&(e&&console.log(),this.printer.println("Decision "+i.decision+":"),this.printer.print(i.toString(this.literalNames,this.symbolicNames)),e=!0)}}getSourceName(){return this._input.sourceName}setTrace(e){e?(this._tracer!==null&&this.removeParseListener(this._tracer),this._tracer=new Gf(this),this.addParseListener(this._tracer)):(this.removeParseListener(this._tracer),this._tracer=null)}}xo.bypassAltsAtnCache={};class jf{constructor(){this.cache=new l5}add(e){if(e===P2.EMPTY)return P2.EMPTY;const n=this.cache.get(e)||null;return n!==null?n:(this.cache.set(e,e),e)}get(e){return this.cache.get(e)||null}get length(){return this.cache.length}}class _o extends R4{constructor(e){super(),this.parentCtx=null,this.symbol=e}getChild(e){return null}getSymbol(){return this.symbol}getParent(){return this.parentCtx}getPayload(){return this.symbol}getSourceInterval(){if(this.symbol===null)return q2.INVALID_INTERVAL;const e=this.symbol.tokenIndex;return new q2(e,e)}getChildCount(){return 0}accept(e){return e.visitTerminal(this)}getText(){return this.symbol.text}toString(){return this.symbol.type===Y.EOF?"<EOF>":this.symbol.text}}class vo extends _o{constructor(e){super(e)}isErrorNode(){return!0}accept(e){return e.visitErrorNode(this)}}class Mo extends a0{constructor(e,n){e=e||null,n=n||null,super(e,n),this.ruleIndex=-1,this.children=null,this.start=null,this.stop=null,this.exception=null}copyFrom(e){this.parentCtx=e.parentCtx,this.invokingState=e.invokingState,this.children=null,this.start=e.start,this.stop=e.stop,e.children&&(this.children=[],e.children.map(function(n){n instanceof vo&&(this.children.push(n),n.parentCtx=this)},this))}enterRule(e){}exitRule(e){}addChild(e){return this.children===null&&(this.children=[]),this.children.push(e),e}removeLastChild(){this.children!==null&&this.children.pop()}addTokenNode(e){const n=new _o(e);return this.addChild(n),n.parentCtx=this,n}addErrorNode(e){const n=new vo(e);return this.addChild(n),n.parentCtx=this,n}getChild(e,n){if(n=n||null,this.children===null||e<0||e>=this.children.length)return null;if(n===null)return this.children[e];for(let i=0;i<this.children.length;i++){const s=this.children[i];if(s instanceof n){if(e===0)return s;e-=1}}return null}getToken(e,n){if(this.children===null||n<0||n>=this.children.length)return null;for(let i=0;i<this.children.length;i++){const s=this.children[i];if(s instanceof R4&&s.symbol.type===e){if(n===0)return s;n-=1}}return null}getTokens(e){if(this.children===null)return[];{const n=[];for(let i=0;i<this.children.length;i++){const s=this.children[i];s instanceof R4&&s.symbol.type===e&&n.push(s)}return n}}getTypedRuleContext(e,n){return this.getChild(n,e)}getTypedRuleContexts(e){if(this.children===null)return[];{const n=[];for(let i=0;i<this.children.length;i++){const s=this.children[i];s instanceof e&&n.push(s)}return n}}getChildCount(){return this.children===null?0:this.children.length}getSourceInterval(){return this.start===null||this.stop===null?q2.INVALID_INTERVAL:new q2(this.start.tokenIndex,this.stop.tokenIndex)}}a0.EMPTY=new Mo;const T={atn:bf,dfa:If,tree:Of,error:zf,Token:Y,CommonToken:A9,CharStreams:Uf,InputStream:k9,FileStream:Wf,CommonTokenStream:Vf,Lexer:u1,Parser:xo,PredictionContextCache:jf,ParserRuleContext:Mo,Interval:q2,IntervalSet:E3,LL1Analyzer:c0,Utils:{arrayToString:$4}},qf=[4,0,68,544,6,-1,6,-1,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,1,0,1,0,1,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,5,1,5,1,5,1,5,1,5,1,5,1,5,1,5,1,6,1,6,1,6,1,6,1,7,1,7,1,7,1,8,1,8,1,8,1,9,1,9,1,9,1,10,1,10,1,11,1,11,4,11,207,8,11,11,11,12,11,208,1,12,1,12,1,12,1,13,1,13,1,13,1,14,1,14,1,14,1,15,1,15,1,15,1,16,1,16,1,17,1,17,1,18,1,18,1,18,1,19,1,19,1,19,1,20,1,20,1,21,1,21,1,22,1,22,1,23,1,23,1,24,1,24,1,25,1,25,1,26,1,26,1,27,1,27,1,28,1,28,1,29,1,29,1,30,1,30,1,31,1,31,1,32,1,32,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,35,1,35,1,35,1,35,1,35,1,35,1,36,1,36,1,36,1,36,1,36,1,36,1,36,3,36,279,8,36,1,37,1,37,1,37,1,38,1,38,1,38,1,38,1,38,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,3,39,315,8,39,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,42,1,42,1,42,1,42,1,43,1,43,1,43,1,43,1,43,1,43,1,44,1,44,1,44,1,44,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,3,46,363,8,46,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,49,1,49,1,49,1,49,1,50,1,50,1,50,1,50,1,50,1,50,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,52,1,52,1,52,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,3,53,409,8,53,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,3,54,437,8,54,1,55,1,55,5,55,441,8,55,10,55,12,55,444,9,55,1,56,1,56,1,57,1,57,5,57,450,8,57,10,57,12,57,453,9,57,1,58,4,58,456,8,58,11,58,12,58,457,1,59,4,59,461,8,59,11,59,12,59,462,1,59,1,59,5,59,467,8,59,10,59,12,59,470,9,59,1,59,1,59,4,59,474,8,59,11,59,12,59,475,3,59,478,8,59,1,60,1,60,1,60,1,60,5,60,484,8,60,10,60,12,60,487,9,60,1,60,3,60,490,8,60,1,61,1,61,1,61,1,61,1,62,1,62,1,62,1,62,5,62,500,8,62,10,62,12,62,503,9,62,1,62,1,62,1,62,1,62,1,63,1,63,1,64,1,64,5,64,513,8,64,10,64,12,64,516,9,64,1,64,1,64,1,64,1,64,5,64,522,8,64,10,64,12,64,525,9,64,1,65,4,65,528,8,65,11,65,12,65,529,1,66,1,66,1,66,1,66,1,67,4,67,537,8,67,11,67,12,67,538,1,68,1,68,1,68,1,68,1,501,0,69,3,1,5,2,7,3,9,4,11,5,13,6,15,7,17,8,19,9,21,10,23,0,25,11,27,12,29,13,31,14,33,15,35,16,37,17,39,18,41,19,43,20,45,21,47,22,49,23,51,24,53,25,55,26,57,27,59,28,61,29,63,30,65,31,67,32,69,33,71,34,73,35,75,36,77,37,79,38,81,39,83,40,85,41,87,42,89,43,91,44,93,45,95,46,97,47,99,48,101,49,103,50,105,51,107,52,109,53,111,54,113,55,115,56,117,57,119,58,121,59,123,60,125,61,127,62,129,63,131,64,133,65,135,66,137,67,139,68,3,0,1,2,7,2,0,9,9,32,32,3,0,48,57,65,70,97,102,4,0,48,57,65,90,95,95,97,122,3,0,65,90,95,95,97,122,1,0,48,57,3,0,10,10,13,13,34,34,2,0,10,10,13,13,566,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,0,87,1,0,0,0,0,89,1,0,0,0,0,91,1,0,0,0,0,93,1,0,0,0,0,95,1,0,0,0,0,97,1,0,0,0,0,99,1,0,0,0,0,101,1,0,0,0,0,103,1,0,0,0,0,105,1,0,0,0,0,107,1,0,0,0,0,109,1,0,0,0,0,111,1,0,0,0,0,113,1,0,0,0,0,115,1,0,0,0,0,117,1,0,0,0,0,119,1,0,0,0,0,121,1,0,0,0,0,123,1,0,0,0,0,125,1,0,0,0,0,127,1,0,0,0,0,129,1,0,0,0,0,131,1,0,0,0,1,133,1,0,0,0,1,135,1,0,0,0,2,137,1,0,0,0,2,139,1,0,0,0,3,141,1,0,0,0,5,145,1,0,0,0,7,153,1,0,0,0,9,164,1,0,0,0,11,173,1,0,0,0,13,181,1,0,0,0,15,189,1,0,0,0,17,193,1,0,0,0,19,196,1,0,0,0,21,199,1,0,0,0,23,202,1,0,0,0,25,204,1,0,0,0,27,210,1,0,0,0,29,213,1,0,0,0,31,216,1,0,0,0,33,219,1,0,0,0,35,222,1,0,0,0,37,224,1,0,0,0,39,226,1,0,0,0,41,229,1,0,0,0,43,232,1,0,0,0,45,234,1,0,0,0,47,236,1,0,0,0,49,238,1,0,0,0,51,240,1,0,0,0,53,242,1,0,0,0,55,244,1,0,0,0,57,246,1,0,0,0,59,248,1,0,0,0,61,250,1,0,0,0,63,252,1,0,0,0,65,254,1,0,0,0,67,256,1,0,0,0,69,258,1,0,0,0,71,260,1,0,0,0,73,265,1,0,0,0,75,278,1,0,0,0,77,280,1,0,0,0,79,283,1,0,0,0,81,314,1,0,0,0,83,316,1,0,0,0,85,323,1,0,0,0,87,327,1,0,0,0,89,331,1,0,0,0,91,337,1,0,0,0,93,341,1,0,0,0,95,362,1,0,0,0,97,364,1,0,0,0,99,368,1,0,0,0,101,371,1,0,0,0,103,375,1,0,0,0,105,381,1,0,0,0,107,389,1,0,0,0,109,408,1,0,0,0,111,436,1,0,0,0,113,438,1,0,0,0,115,445,1,0,0,0,117,447,1,0,0,0,119,455,1,0,0,0,121,477,1,0,0,0,123,479,1,0,0,0,125,491,1,0,0,0,127,495,1,0,0,0,129,508,1,0,0,0,131,510,1,0,0,0,133,527,1,0,0,0,135,531,1,0,0,0,137,536,1,0,0,0,139,540,1,0,0,0,141,142,7,0,0,0,142,143,1,0,0,0,143,144,6,0,0,0,144,4,1,0,0,0,145,146,5,99,0,0,146,147,5,111,0,0,147,148,5,110,0,0,148,149,5,115,0,0,149,150,5,116,0,0,150,151,1,0,0,0,151,152,6,1,1,0,152,6,1,0,0,0,153,154,5,114,0,0,154,155,5,101,0,0,155,156,5,97,0,0,156,157,5,100,0,0,157,158,5,111,0,0,158,159,5,110,0,0,159,160,5,108,0,0,160,161,5,121,0,0,161,162,1,0,0,0,162,163,6,2,1,0,163,8,1,0,0,0,164,165,5,115,0,0,165,166,5,116,0,0,166,167,5,97,0,0,167,168,5,116,0,0,168,169,5,105,0,0,169,170,5,99,0,0,170,171,1,0,0,0,171,172,6,3,1,0,172,10,1,0,0,0,173,174,5,97,0,0,174,175,5,119,0,0,175,176,5,97,0,0,176,177,5,105,0,0,177,178,5,116,0,0,178,179,1,0,0,0,179,180,6,4,1,0,180,12,1,0,0,0,181,182,5,116,0,0,182,183,5,105,0,0,183,184,5,116,0,0,184,185,5,108,0,0,185,186,5,101,0,0,186,187,1,0,0,0,187,188,6,5,2,0,188,14,1,0,0,0,189,190,5,58,0,0,190,191,1,0,0,0,191,192,6,6,3,0,192,16,1,0,0,0,193,194,5,60,0,0,194,195,5,60,0,0,195,18,1,0,0,0,196,197,5,62,0,0,197,198,5,62,0,0,198,20,1,0,0,0,199,200,5,45,0,0,200,201,5,62,0,0,201,22,1,0,0,0,202,203,7,1,0,0,203,24,1,0,0,0,204,206,5,35,0,0,205,207,3,23,10,0,206,205,1,0,0,0,207,208,1,0,0,0,208,206,1,0,0,0,208,209,1,0,0,0,209,26,1,0,0,0,210,211,5,124,0,0,211,212,5,124,0,0,212,28,1,0,0,0,213,214,5,38,0,0,214,215,5,38,0,0,215,30,1,0,0,0,216,217,5,61,0,0,217,218,5,61,0,0,218,32,1,0,0,0,219,220,5,33,0,0,220,221,5,61,0,0,221,34,1,0,0,0,222,223,5,62,0,0,223,36,1,0,0,0,224,225,5,60,0,0,225,38,1,0,0,0,226,227,5,62,0,0,227,228,5,61,0,0,228,40,1,0,0,0,229,230,5,60,0,0,230,231,5,61,0,0,231,42,1,0,0,0,232,233,5,43,0,0,233,44,1,0,0,0,234,235,5,45,0,0,235,46,1,0,0,0,236,237,5,42,0,0,237,48,1,0,0,0,238,239,5,47,0,0,239,50,1,0,0,0,240,241,5,37,0,0,241,52,1,0,0,0,242,243,5,94,0,0,243,54,1,0,0,0,244,245,5,33,0,0,245,56,1,0,0,0,246,247,5,59,0,0,247,58,1,0,0,0,248,249,5,44,0,0,249,60,1,0,0,0,250,251,5,61,0,0,251,62,1,0,0,0,252,253,5,40,0,0,253,64,1,0,0,0,254,255,5,41,0,0,255,66,1,0,0,0,256,257,5,123,0,0,257,68,1,0,0,0,258,259,5,125,0,0,259,70,1,0,0,0,260,261,5,116,0,0,261,262,5,114,0,0,262,263,5,117,0,0,263,264,5,101,0,0,264,72,1,0,0,0,265,266,5,102,0,0,266,267,5,97,0,0,267,268,5,108,0,0,268,269,5,115,0,0,269,270,5,101,0,0,270,74,1,0,0,0,271,272,5,110,0,0,272,273,5,105,0,0,273,279,5,108,0,0,274,275,5,110,0,0,275,276,5,117,0,0,276,277,5,108,0,0,277,279,5,108,0,0,278,271,1,0,0,0,278,274,1,0,0,0,279,76,1,0,0,0,280,281,5,105,0,0,281,282,5,102,0,0,282,78,1,0,0,0,283,284,5,101,0,0,284,285,5,108,0,0,285,286,5,115,0,0,286,287,5,101,0,0,287,80,1,0,0,0,288,289,5,119,0,0,289,290,5,104,0,0,290,291,5,105,0,0,291,292,5,108,0,0,292,315,5,101,0,0,293,294,5,102,0,0,294,295,5,111,0,0,295,315,5,114,0,0,296,297,5,102,0,0,297,298,5,111,0,0,298,299,5,114,0,0,299,300,5,101,0,0,300,301,5,97,0,0,301,302,5,99,0,0,302,315,5,104,0,0,303,304,5,102,0,0,304,305,5,111,0,0,305,306,5,114,0,0,306,307,5,69,0,0,307,308,5,97,0,0,308,309,5,99,0,0,309,315,5,104,0,0,310,311,5,108,0,0,311,312,5,111,0,0,312,313,5,111,0,0,313,315,5,112,0,0,314,288,1,0,0,0,314,293,1,0,0,0,314,296,1,0,0,0,314,303,1,0,0,0,314,310,1,0,0,0,315,82,1,0,0,0,316,317,5,114,0,0,317,318,5,101,0,0,318,319,5,116,0,0,319,320,5,117,0,0,320,321,5,114,0,0,321,322,5,110,0,0,322,84,1,0,0,0,323,324,5,110,0,0,324,325,5,101,0,0,325,326,5,119,0,0,326,86,1,0,0,0,327,328,5,112,0,0,328,329,5,97,0,0,329,330,5,114,0,0,330,88,1,0,0,0,331,332,5,103,0,0,332,333,5,114,0,0,333,334,5,111,0,0,334,335,5,117,0,0,335,336,5,112,0,0,336,90,1,0,0,0,337,338,5,111,0,0,338,339,5,112,0,0,339,340,5,116,0,0,340,92,1,0,0,0,341,342,5,99,0,0,342,343,5,114,0,0,343,344,5,105,0,0,344,345,5,116,0,0,345,346,5,105,0,0,346,347,5,99,0,0,347,348,5,97,0,0,348,349,5,108,0,0,349,94,1,0,0,0,350,351,5,115,0,0,351,352,5,101,0,0,352,353,5,99,0,0,353,354,5,116,0,0,354,355,5,105,0,0,355,356,5,111,0,0,356,363,5,110,0,0,357,358,5,102,0,0,358,359,5,114,0,0,359,360,5,97,0,0,360,361,5,109,0,0,361,363,5,101,0,0,362,350,1,0,0,0,362,357,1,0,0,0,363,96,1,0,0,0,364,365,5,114,0,0,365,366,5,101,0,0,366,367,5,102,0,0,367,98,1,0,0,0,368,369,5,97,0,0,369,370,5,115,0,0,370,100,1,0,0,0,371,372,5,116,0,0,372,373,5,114,0,0,373,374,5,121,0,0,374,102,1,0,0,0,375,376,5,99,0,0,376,377,5,97,0,0,377,378,5,116,0,0,378,379,5,99,0,0,379,380,5,104,0,0,380,104,1,0,0,0,381,382,5,102,0,0,382,383,5,105,0,0,383,384,5,110,0,0,384,385,5,97,0,0,385,386,5,108,0,0,386,387,5,108,0,0,387,388,5,121,0,0,388,106,1,0,0,0,389,390,5,105,0,0,390,391,5,110,0,0,391,108,1,0,0,0,392,393,5,64,0,0,393,394,5,83,0,0,394,395,5,116,0,0,395,396,5,97,0,0,396,397,5,114,0,0,397,398,5,116,0,0,398,399,5,101,0,0,399,409,5,114,0,0,400,401,5,64,0,0,401,402,5,115,0,0,402,403,5,116,0,0,403,404,5,97,0,0,404,405,5,114,0,0,405,406,5,116,0,0,406,407,5,101,0,0,407,409,5,114,0,0,408,392,1,0,0,0,408,400,1,0,0,0,409,110,1,0,0,0,410,411,5,64,0,0,411,412,5,82,0,0,412,413,5,101,0,0,413,414,5,116,0,0,414,415,5,117,0,0,415,416,5,114,0,0,416,437,5,110,0,0,417,418,5,64,0,0,418,419,5,114,0,0,419,420,5,101,0,0,420,421,5,116,0,0,421,422,5,117,0,0,422,423,5,114,0,0,423,437,5,110,0,0,424,425,5,64,0,0,425,426,5,82,0,0,426,427,5,101,0,0,427,428,5,112,0,0,428,429,5,108,0,0,429,437,5,121,0,0,430,431,5,64,0,0,431,432,5,114,0,0,432,433,5,101,0,0,433,434,5,112,0,0,434,435,5,108,0,0,435,437,5,121,0,0,436,410,1,0,0,0,436,417,1,0,0,0,436,424,1,0,0,0,436,430,1,0,0,0,437,112,1,0,0,0,438,442,5,64,0,0,439,441,7,2,0,0,440,439,1,0,0,0,441,444,1,0,0,0,442,440,1,0,0,0,442,443,1,0,0,0,443,114,1,0,0,0,444,442,1,0,0,0,445,446,5,46,0,0,446,116,1,0,0,0,447,451,7,3,0,0,448,450,7,2,0,0,449,448,1,0,0,0,450,453,1,0,0,0,451,449,1,0,0,0,451,452,1,0,0,0,452,118,1,0,0,0,453,451,1,0,0,0,454,456,7,4,0,0,455,454,1,0,0,0,456,457,1,0,0,0,457,455,1,0,0,0,457,458,1,0,0,0,458,120,1,0,0,0,459,461,7,4,0,0,460,459,1,0,0,0,461,462,1,0,0,0,462,460,1,0,0,0,462,463,1,0,0,0,463,464,1,0,0,0,464,468,5,46,0,0,465,467,7,4,0,0,466,465,1,0,0,0,467,470,1,0,0,0,468,466,1,0,0,0,468,469,1,0,0,0,469,478,1,0,0,0,470,468,1,0,0,0,471,473,5,46,0,0,472,474,7,4,0,0,473,472,1,0,0,0,474,475,1,0,0,0,475,473,1,0,0,0,475,476,1,0,0,0,476,478,1,0,0,0,477,460,1,0,0,0,477,471,1,0,0,0,478,122,1,0,0,0,479,485,5,34,0,0,480,484,8,5,0,0,481,482,5,34,0,0,482,484,5,34,0,0,483,480,1,0,0,0,483,481,1,0,0,0,484,487,1,0,0,0,485,483,1,0,0,0,485,486,1,0,0,0,486,489,1,0,0,0,487,485,1,0,0,0,488,490,7,5,0,0,489,488,1,0,0,0,489,490,1,0,0,0,490,124,1,0,0,0,491,492,7,6,0,0,492,493,1,0,0,0,493,494,6,61,0,0,494,126,1,0,0,0,495,496,5,47,0,0,496,497,5,47,0,0,497,501,1,0,0,0,498,500,9,0,0,0,499,498,1,0,0,0,500,503,1,0,0,0,501,502,1,0,0,0,501,499,1,0,0,0,502,504,1,0,0,0,503,501,1,0,0,0,504,505,5,10,0,0,505,506,1,0,0,0,506,507,6,62,4,0,507,128,1,0,0,0,508,509,9,0,0,0,509,130,1,0,0,0,510,514,4,64,0,0,511,513,3,3,0,0,512,511,1,0,0,0,513,516,1,0,0,0,514,512,1,0,0,0,514,515,1,0,0,0,515,517,1,0,0,0,516,514,1,0,0,0,517,518,5,61,0,0,518,519,5,61,0,0,519,523,1,0,0,0,520,522,8,6,0,0,521,520,1,0,0,0,522,525,1,0,0,0,523,521,1,0,0,0,523,524,1,0,0,0,524,132,1,0,0,0,525,523,1,0,0,0,526,528,8,6,0,0,527,526,1,0,0,0,528,529,1,0,0,0,529,527,1,0,0,0,529,530,1,0,0,0,530,134,1,0,0,0,531,532,7,6,0,0,532,533,1,0,0,0,533,534,6,66,5,0,534,136,1,0,0,0,535,537,8,6,0,0,536,535,1,0,0,0,537,538,1,0,0,0,538,536,1,0,0,0,538,539,1,0,0,0,539,138,1,0,0,0,540,541,7,6,0,0,541,542,1,0,0,0,542,543,6,68,5,0,543,140,1,0,0,0,24,0,1,2,208,278,314,362,408,436,442,451,457,462,468,475,477,483,485,489,501,514,523,529,538,6,0,1,0,0,3,0,5,2,0,5,1,0,0,2,0,4,0,0],Ue=new T.atn.ATNDeserializer().deserialize(qf),Kf=Ue.decisionToState.map((t,e)=>new T.dfa.DFA(t,e));class s2 extends T.Lexer{constructor(e){super(e),this._interp=new T.atn.LexerATNSimulator(this,Ue,Kf,new T.PredictionContextCache)}get atn(){return Ue}}i2(s2,"grammarFileName","sequenceLexer.g4"),i2(s2,"channelNames",["DEFAULT_TOKEN_CHANNEL","HIDDEN","COMMENT_CHANNEL","MODIFIER_CHANNEL"]),i2(s2,"modeNames",["DEFAULT_MODE","EVENT","TITLE_MODE"]),i2(s2,"literalNames",[null,null,"'const'","'readonly'","'static'","'await'","'title'","':'","'<<'","'>>'","'->'",null,"'||'","'&&'","'=='","'!='","'>'","'<'","'>='","'<='","'+'","'-'","'*'","'/'","'%'","'^'","'!'","';'","','","'='","'('","')'","'{'","'}'","'true'","'false'",null,"'if'","'else'",null,"'return'","'new'","'par'","'group'","'opt'","'critical'",null,"'ref'","'as'","'try'","'catch'","'finally'","'in'",null,null,null,"'.'"]),i2(s2,"symbolicNames",[null,"WS","CONSTANT","READONLY","STATIC","AWAIT","TITLE","COL","SOPEN","SCLOSE","ARROW","COLOR","OR","AND","EQ","NEQ","GT","LT","GTEQ","LTEQ","PLUS","MINUS","MULT","DIV","MOD","POW","NOT","SCOL","COMMA","ASSIGN","OPAR","CPAR","OBRACE","CBRACE","TRUE","FALSE","NIL","IF","ELSE","WHILE","RETURN","NEW","PAR","GROUP","OPT","CRITICAL","SECTION","REF","AS","TRY","CATCH","FINALLY","IN","STARTER_LXR","ANNOTATION_RET","ANNOTATION","DOT","ID","INT","FLOAT","STRING","CR","COMMENT","OTHER","DIVIDER","EVENT_PAYLOAD_LXR","EVENT_END","TITLE_CONTENT","TITLE_END"]),i2(s2,"ruleNames",["WS","CONSTANT","READONLY","STATIC","AWAIT","TITLE","COL","SOPEN","SCLOSE","ARROW","HEX","COLOR","OR","AND","EQ","NEQ","GT","LT","GTEQ","LTEQ","PLUS","MINUS","MULT","DIV","MOD","POW","NOT","SCOL","COMMA","ASSIGN","OPAR","CPAR","OBRACE","CBRACE","TRUE","FALSE","NIL","IF","ELSE","WHILE","RETURN","NEW","PAR","GROUP","OPT","CRITICAL","SECTION","REF","AS","TRY","CATCH","FINALLY","IN","STARTER_LXR","ANNOTATION_RET","ANNOTATION","DOT","ID","INT","FLOAT","STRING","CR","COMMENT","OTHER","DIVIDER","EVENT_PAYLOAD_LXR","EVENT_END","TITLE_CONTENT","TITLE_END"]),s2.EOF=T.Token.EOF,s2.WS=1,s2.CONSTANT=2,s2.READONLY=3,s2.STATIC=4,s2.AWAIT=5,s2.TITLE=6,s2.COL=7,s2.SOPEN=8,s2.SCLOSE=9,s2.ARROW=10,s2.COLOR=11,s2.OR=12,s2.AND=13,s2.EQ=14,s2.NEQ=15,s2.GT=16,s2.LT=17,s2.GTEQ=18,s2.LTEQ=19,s2.PLUS=20,s2.MINUS=21,s2.MULT=22,s2.DIV=23,s2.MOD=24,s2.POW=25,s2.NOT=26,s2.SCOL=27,s2.COMMA=28,s2.ASSIGN=29,s2.OPAR=30,s2.CPAR=31,s2.OBRACE=32,s2.CBRACE=33,s2.TRUE=34,s2.FALSE=35,s2.NIL=36,s2.IF=37,s2.ELSE=38,s2.WHILE=39,s2.RETURN=40,s2.NEW=41,s2.PAR=42,s2.GROUP=43,s2.OPT=44,s2.CRITICAL=45,s2.SECTION=46,s2.REF=47,s2.AS=48,s2.TRY=49,s2.CATCH=50,s2.FINALLY=51,s2.IN=52,s2.STARTER_LXR=53,s2.ANNOTATION_RET=54,s2.ANNOTATION=55,s2.DOT=56,s2.ID=57,s2.INT=58,s2.FLOAT=59,s2.STRING=60,s2.CR=61,s2.COMMENT=62,s2.OTHER=63,s2.DIVIDER=64,s2.EVENT_PAYLOAD_LXR=65,s2.EVENT_END=66,s2.TITLE_CONTENT=67,s2.TITLE_END=68,s2.COMMENT_CHANNEL=2,s2.MODIFIER_CHANNEL=3,s2.EVENT=1,s2.TITLE_MODE=2,s2.prototype.sempred=function(t,e,n){switch(e){case 64:return this.DIVIDER_sempred(t,n);default:throw"No registered predicate for:"+e}},s2.prototype.DIVIDER_sempred=function(t,e){switch(e){case 0:return this.column===0;default:throw"No predicate with index:"+e}};class E extends T.tree.ParseTreeListener{enterProg(e){}exitProg(e){}enterTitle(e){}exitTitle(e){}enterHead(e){}exitHead(e){}enterGroup(e){}exitGroup(e){}enterStarterExp(e){}exitStarterExp(e){}enterStarter(e){}exitStarter(e){}enterParticipant(e){}exitParticipant(e){}enterStereotype(e){}exitStereotype(e){}enterLabel(e){}exitLabel(e){}enterParticipantType(e){}exitParticipantType(e){}enterName(e){}exitName(e){}enterWidth(e){}exitWidth(e){}enterBlock(e){}exitBlock(e){}enterRet(e){}exitRet(e){}enterDivider(e){}exitDivider(e){}enterDividerNote(e){}exitDividerNote(e){}enterStat(e){}exitStat(e){}enterPar(e){}exitPar(e){}enterOpt(e){}exitOpt(e){}enterCritical(e){}exitCritical(e){}enterSection(e){}exitSection(e){}enterCreation(e){}exitCreation(e){}enterRef(e){}exitRef(e){}enterCreationBody(e){}exitCreationBody(e){}enterMessage(e){}exitMessage(e){}enterMessageBody(e){}exitMessageBody(e){}enterFunc(e){}exitFunc(e){}enterFrom(e){}exitFrom(e){}enterTo(e){}exitTo(e){}enterSignature(e){}exitSignature(e){}enterInvocation(e){}exitInvocation(e){}enterAssignment(e){}exitAssignment(e){}enterAsyncMessage(e){}exitAsyncMessage(e){}enterContent(e){}exitContent(e){}enterConstruct(e){}exitConstruct(e){}enterType(e){}exitType(e){}enterAssignee(e){}exitAssignee(e){}enterMethodName(e){}exitMethodName(e){}enterParameters(e){}exitParameters(e){}enterParameter(e){}exitParameter(e){}enterDeclaration(e){}exitDeclaration(e){}enterTcf(e){}exitTcf(e){}enterTryBlock(e){}exitTryBlock(e){}enterCatchBlock(e){}exitCatchBlock(e){}enterFinallyBlock(e){}exitFinallyBlock(e){}enterAlt(e){}exitAlt(e){}enterIfBlock(e){}exitIfBlock(e){}enterElseIfBlock(e){}exitElseIfBlock(e){}enterElseBlock(e){}exitElseBlock(e){}enterBraceBlock(e){}exitBraceBlock(e){}enterLoop(e){}exitLoop(e){}enterAssignmentExpr(e){}exitAssignmentExpr(e){}enterFuncExpr(e){}exitFuncExpr(e){}enterAtomExpr(e){}exitAtomExpr(e){}enterOrExpr(e){}exitOrExpr(e){}enterAdditiveExpr(e){}exitAdditiveExpr(e){}enterRelationalExpr(e){}exitRelationalExpr(e){}enterPlusExpr(e){}exitPlusExpr(e){}enterNotExpr(e){}exitNotExpr(e){}enterUnaryMinusExpr(e){}exitUnaryMinusExpr(e){}enterCreationExpr(e){}exitCreationExpr(e){}enterParenthesizedExpr(e){}exitParenthesizedExpr(e){}enterMultiplicationExpr(e){}exitMultiplicationExpr(e){}enterEqualityExpr(e){}exitEqualityExpr(e){}enterAndExpr(e){}exitAndExpr(e){}enterNumberAtom(e){}exitNumberAtom(e){}enterBooleanAtom(e){}exitBooleanAtom(e){}enterIdAtom(e){}exitIdAtom(e){}enterStringAtom(e){}exitStringAtom(e){}enterNilAtom(e){}exitNilAtom(e){}enterParExpr(e){}exitParExpr(e){}enterCondition(e){}exitCondition(e){}enterInExpr(e){}exitInExpr(e){}}const Yf=[4,1,68,605,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,1,0,3,0,114,8,0,1,0,1,0,3,0,118,8,0,1,0,1,0,1,0,1,0,3,0,124,8,0,1,0,3,0,127,8,0,1,0,1,0,1,0,3,0,132,8,0,1,1,1,1,3,1,136,8,1,1,1,3,1,139,8,1,1,2,1,2,4,2,143,8,2,11,2,12,2,144,1,2,1,2,5,2,149,8,2,10,2,12,2,152,9,2,1,2,3,2,155,8,2,1,3,1,3,3,3,159,8,3,1,3,1,3,5,3,163,8,3,10,3,12,3,166,9,3,1,3,1,3,1,3,3,3,171,8,3,1,3,1,3,1,3,3,3,176,8,3,3,3,178,8,3,1,4,1,4,1,4,3,4,183,8,4,1,4,3,4,186,8,4,1,4,3,4,189,8,4,1,5,1,5,1,6,3,6,194,8,6,1,6,3,6,197,8,6,1,6,1,6,3,6,201,8,6,1,6,3,6,204,8,6,1,6,3,6,207,8,6,1,6,1,6,3,6,211,8,6,1,7,1,7,1,7,1,7,1,7,1,7,1,7,3,7,220,8,7,1,7,1,7,3,7,224,8,7,3,7,226,8,7,1,8,1,8,1,8,3,8,231,8,8,1,9,1,9,1,10,1,10,1,11,1,11,1,12,4,12,240,8,12,11,12,12,12,241,1,13,1,13,3,13,246,8,13,1,13,3,13,249,8,13,1,13,1,13,1,13,3,13,254,8,13,3,13,256,8,13,1,14,1,14,1,15,1,15,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,3,16,273,8,16,1,16,1,16,1,16,1,16,1,16,3,16,280,8,16,1,17,1,17,1,17,3,17,285,8,17,1,18,1,18,1,18,3,18,290,8,18,1,19,1,19,1,19,3,19,295,8,19,1,19,3,19,298,8,19,1,19,1,19,3,19,302,8,19,1,20,1,20,1,20,3,20,307,8,20,1,20,3,20,310,8,20,1,20,1,20,3,20,314,8,20,1,21,1,21,1,21,3,21,319,8,21,1,22,1,22,1,22,1,22,1,22,5,22,326,8,22,10,22,12,22,329,9,22,5,22,331,8,22,10,22,12,22,334,9,22,1,22,1,22,3,22,338,8,22,1,23,3,23,341,8,23,1,23,1,23,1,23,1,23,3,23,347,8,23,1,23,3,23,350,8,23,1,23,3,23,353,8,23,1,23,3,23,356,8,23,1,24,1,24,1,24,3,24,361,8,24,1,25,3,25,364,8,25,1,25,1,25,1,25,3,25,369,8,25,1,25,1,25,1,25,3,25,374,8,25,1,25,1,25,1,25,1,25,1,25,3,25,381,8,25,1,25,1,25,1,25,3,25,386,8,25,1,26,1,26,1,26,5,26,391,8,26,10,26,12,26,394,9,26,1,27,1,27,1,28,1,28,1,29,1,29,3,29,402,8,29,1,30,1,30,3,30,406,8,30,1,30,1,30,1,31,3,31,411,8,31,1,31,1,31,1,31,1,32,1,32,1,32,3,32,419,8,32,1,32,1,32,1,32,3,32,424,8,32,1,32,1,32,1,32,3,32,429,8,32,3,32,431,8,32,1,33,1,33,1,34,1,34,1,35,1,35,1,36,1,36,1,36,1,36,5,36,443,8,36,10,36,12,36,446,9,36,1,36,3,36,449,8,36,1,37,1,37,1,38,1,38,1,38,5,38,456,8,38,10,38,12,38,459,9,38,1,38,3,38,462,8,38,1,39,1,39,3,39,466,8,39,1,40,1,40,1,40,1,41,1,41,5,41,473,8,41,10,41,12,41,476,9,41,1,41,3,41,479,8,41,1,42,1,42,1,42,1,43,1,43,3,43,486,8,43,1,43,1,43,1,44,1,44,1,44,1,45,1,45,5,45,495,8,45,10,45,12,45,498,9,45,1,45,3,45,501,8,45,1,46,1,46,1,46,1,46,1,47,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,49,1,49,3,49,517,8,49,1,49,1,49,1,50,1,50,1,50,1,50,1,50,1,50,1,50,3,50,528,8,50,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,3,51,539,8,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,3,51,550,8,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,5,51,573,8,51,10,51,12,51,576,9,51,1,52,1,52,1,52,1,52,1,52,3,52,583,8,52,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,3,53,594,8,53,1,54,1,54,1,54,3,54,599,8,54,1,55,1,55,1,55,1,55,1,55,0,1,102,56,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,0,10,2,0,57,57,60,60,2,0,8,8,17,17,2,0,9,9,16,16,2,0,10,10,21,21,1,0,22,24,1,0,20,21,1,0,16,19,1,0,14,15,1,0,58,59,1,0,34,35,672,0,131,1,0,0,0,2,133,1,0,0,0,4,154,1,0,0,0,6,177,1,0,0,0,8,188,1,0,0,0,10,190,1,0,0,0,12,210,1,0,0,0,14,225,1,0,0,0,16,230,1,0,0,0,18,232,1,0,0,0,20,234,1,0,0,0,22,236,1,0,0,0,24,239,1,0,0,0,26,255,1,0,0,0,28,257,1,0,0,0,30,259,1,0,0,0,32,279,1,0,0,0,34,284,1,0,0,0,36,289,1,0,0,0,38,301,1,0,0,0,40,313,1,0,0,0,42,315,1,0,0,0,44,320,1,0,0,0,46,355,1,0,0,0,48,357,1,0,0,0,50,385,1,0,0,0,52,387,1,0,0,0,54,395,1,0,0,0,56,397,1,0,0,0,58,399,1,0,0,0,60,403,1,0,0,0,62,410,1,0,0,0,64,430,1,0,0,0,66,432,1,0,0,0,68,434,1,0,0,0,70,436,1,0,0,0,72,448,1,0,0,0,74,450,1,0,0,0,76,452,1,0,0,0,78,465,1,0,0,0,80,467,1,0,0,0,82,470,1,0,0,0,84,480,1,0,0,0,86,483,1,0,0,0,88,489,1,0,0,0,90,492,1,0,0,0,92,502,1,0,0,0,94,506,1,0,0,0,96,511,1,0,0,0,98,514,1,0,0,0,100,527,1,0,0,0,102,549,1,0,0,0,104,582,1,0,0,0,106,593,1,0,0,0,108,598,1,0,0,0,110,600,1,0,0,0,112,114,3,2,1,0,113,112,1,0,0,0,113,114,1,0,0,0,114,115,1,0,0,0,115,132,5,0,0,1,116,118,3,2,1,0,117,116,1,0,0,0,117,118,1,0,0,0,118,119,1,0,0,0,119,120,3,4,2,0,120,121,5,0,0,1,121,132,1,0,0,0,122,124,3,2,1,0,123,122,1,0,0,0,123,124,1,0,0,0,124,126,1,0,0,0,125,127,3,4,2,0,126,125,1,0,0,0,126,127,1,0,0,0,127,128,1,0,0,0,128,129,3,24,12,0,129,130,5,0,0,1,130,132,1,0,0,0,131,113,1,0,0,0,131,117,1,0,0,0,131,123,1,0,0,0,132,1,1,0,0,0,133,135,5,6,0,0,134,136,5,67,0,0,135,134,1,0,0,0,135,136,1,0,0,0,136,138,1,0,0,0,137,139,5,68,0,0,138,137,1,0,0,0,138,139,1,0,0,0,139,3,1,0,0,0,140,143,3,6,3,0,141,143,3,12,6,0,142,140,1,0,0,0,142,141,1,0,0,0,143,144,1,0,0,0,144,142,1,0,0,0,144,145,1,0,0,0,145,155,1,0,0,0,146,149,3,6,3,0,147,149,3,12,6,0,148,146,1,0,0,0,148,147,1,0,0,0,149,152,1,0,0,0,150,148,1,0,0,0,150,151,1,0,0,0,151,153,1,0,0,0,152,150,1,0,0,0,153,155,3,8,4,0,154,142,1,0,0,0,154,150,1,0,0,0,155,5,1,0,0,0,156,158,5,43,0,0,157,159,3,20,10,0,158,157,1,0,0,0,158,159,1,0,0,0,159,160,1,0,0,0,160,164,5,32,0,0,161,163,3,12,6,0,162,161,1,0,0,0,163,166,1,0,0,0,164,162,1,0,0,0,164,165,1,0,0,0,165,167,1,0,0,0,166,164,1,0,0,0,167,178,5,33,0,0,168,170,5,43,0,0,169,171,3,20,10,0,170,169,1,0,0,0,170,171,1,0,0,0,171,172,1,0,0,0,172,178,5,32,0,0,173,175,5,43,0,0,174,176,3,20,10,0,175,174,1,0,0,0,175,176,1,0,0,0,176,178,1,0,0,0,177,156,1,0,0,0,177,168,1,0,0,0,177,173,1,0,0,0,178,7,1,0,0,0,179,185,5,53,0,0,180,182,5,30,0,0,181,183,3,10,5,0,182,181,1,0,0,0,182,183,1,0,0,0,183,184,1,0,0,0,184,186,5,31,0,0,185,180,1,0,0,0,185,186,1,0,0,0,186,189,1,0,0,0,187,189,5,55,0,0,188,179,1,0,0,0,188,187,1,0,0,0,189,9,1,0,0,0,190,191,7,0,0,0,191,11,1,0,0,0,192,194,3,18,9,0,193,192,1,0,0,0,193,194,1,0,0,0,194,196,1,0,0,0,195,197,3,14,7,0,196,195,1,0,0,0,196,197,1,0,0,0,197,198,1,0,0,0,198,200,3,20,10,0,199,201,3,22,11,0,200,199,1,0,0,0,200,201,1,0,0,0,201,203,1,0,0,0,202,204,3,16,8,0,203,202,1,0,0,0,203,204,1,0,0,0,204,206,1,0,0,0,205,207,5,11,0,0,206,205,1,0,0,0,206,207,1,0,0,0,207,211,1,0,0,0,208,211,3,14,7,0,209,211,3,18,9,0,210,193,1,0,0,0,210,208,1,0,0,0,210,209,1,0,0,0,211,13,1,0,0,0,212,213,5,8,0,0,213,214,3,20,10,0,214,215,5,9,0,0,215,226,1,0,0,0,216,217,5,8,0,0,217,219,3,20,10,0,218,220,5,16,0,0,219,218,1,0,0,0,219,220,1,0,0,0,220,226,1,0,0,0,221,223,7,1,0,0,222,224,7,2,0,0,223,222,1,0,0,0,223,224,1,0,0,0,224,226,1,0,0,0,225,212,1,0,0,0,225,216,1,0,0,0,225,221,1,0,0,0,226,15,1,0,0,0,227,228,5,48,0,0,228,231,3,20,10,0,229,231,5,48,0,0,230,227,1,0,0,0,230,229,1,0,0,0,231,17,1,0,0,0,232,233,5,55,0,0,233,19,1,0,0,0,234,235,7,0,0,0,235,21,1,0,0,0,236,237,5,58,0,0,237,23,1,0,0,0,238,240,3,32,16,0,239,238,1,0,0,0,240,241,1,0,0,0,241,239,1,0,0,0,241,242,1,0,0,0,242,25,1,0,0,0,243,245,5,40,0,0,244,246,3,102,51,0,245,244,1,0,0,0,245,246,1,0,0,0,246,248,1,0,0,0,247,249,5,27,0,0,248,247,1,0,0,0,248,249,1,0,0,0,249,256,1,0,0,0,250,251,5,54,0,0,251,253,3,64,32,0,252,254,5,66,0,0,253,252,1,0,0,0,253,254,1,0,0,0,254,256,1,0,0,0,255,243,1,0,0,0,255,250,1,0,0,0,256,27,1,0,0,0,257,258,3,30,15,0,258,29,1,0,0,0,259,260,5,64,0,0,260,31,1,0,0,0,261,280,3,90,45,0,262,280,3,34,17,0,263,280,3,36,18,0,264,280,3,38,19,0,265,280,3,40,20,0,266,280,3,44,22,0,267,280,3,100,50,0,268,280,3,42,21,0,269,280,3,48,24,0,270,272,3,64,32,0,271,273,5,66,0,0,272,271,1,0,0,0,272,273,1,0,0,0,273,280,1,0,0,0,274,280,3,26,13,0,275,280,3,28,14,0,276,280,3,82,41,0,277,278,5,63,0,0,278,280,6,16,-1,0,279,261,1,0,0,0,279,262,1,0,0,0,279,263,1,0,0,0,279,264,1,0,0,0,279,265,1,0,0,0,279,266,1,0,0,0,279,267,1,0,0,0,279,268,1,0,0,0,279,269,1,0,0,0,279,270,1,0,0,0,279,274,1,0,0,0,279,275,1,0,0,0,279,276,1,0,0,0,279,277,1,0,0,0,280,33,1,0,0,0,281,282,5,42,0,0,282,285,3,98,49,0,283,285,5,42,0,0,284,281,1,0,0,0,284,283,1,0,0,0,285,35,1,0,0,0,286,287,5,44,0,0,287,290,3,98,49,0,288,290,5,44,0,0,289,286,1,0,0,0,289,288,1,0,0,0,290,37,1,0,0,0,291,297,5,45,0,0,292,294,5,30,0,0,293,295,3,104,52,0,294,293,1,0,0,0,294,295,1,0,0,0,295,296,1,0,0,0,296,298,5,31,0,0,297,292,1,0,0,0,297,298,1,0,0,0,298,299,1,0,0,0,299,302,3,98,49,0,300,302,5,45,0,0,301,291,1,0,0,0,301,300,1,0,0,0,302,39,1,0,0,0,303,309,5,46,0,0,304,306,5,30,0,0,305,307,3,104,52,0,306,305,1,0,0,0,306,307,1,0,0,0,307,308,1,0,0,0,308,310,5,31,0,0,309,304,1,0,0,0,309,310,1,0,0,0,310,311,1,0,0,0,311,314,3,98,49,0,312,314,5,46,0,0,313,303,1,0,0,0,313,312,1,0,0,0,314,41,1,0,0,0,315,318,3,46,23,0,316,319,5,27,0,0,317,319,3,98,49,0,318,316,1,0,0,0,318,317,1,0,0,0,318,319,1,0,0,0,319,43,1,0,0,0,320,321,5,47,0,0,321,322,5,30,0,0,322,332,3,20,10,0,323,327,5,28,0,0,324,326,3,20,10,0,325,324,1,0,0,0,326,329,1,0,0,0,327,325,1,0,0,0,327,328,1,0,0,0,328,331,1,0,0,0,329,327,1,0,0,0,330,323,1,0,0,0,331,334,1,0,0,0,332,330,1,0,0,0,332,333,1,0,0,0,333,335,1,0,0,0,334,332,1,0,0,0,335,337,5,31,0,0,336,338,5,27,0,0,337,336,1,0,0,0,337,338,1,0,0,0,338,45,1,0,0,0,339,341,3,62,31,0,340,339,1,0,0,0,340,341,1,0,0,0,341,342,1,0,0,0,342,343,5,41,0,0,343,349,3,68,34,0,344,346,5,30,0,0,345,347,3,76,38,0,346,345,1,0,0,0,346,347,1,0,0,0,347,348,1,0,0,0,348,350,5,31,0,0,349,344,1,0,0,0,349,350,1,0,0,0,350,356,1,0,0,0,351,353,3,62,31,0,352,351,1,0,0,0,352,353,1,0,0,0,353,354,1,0,0,0,354,356,5,41,0,0,355,340,1,0,0,0,355,352,1,0,0,0,356,47,1,0,0,0,357,360,3,50,25,0,358,361,5,27,0,0,359,361,3,98,49,0,360,358,1,0,0,0,360,359,1,0,0,0,360,361,1,0,0,0,361,49,1,0,0,0,362,364,3,62,31,0,363,362,1,0,0,0,363,364,1,0,0,0,364,373,1,0,0,0,365,366,3,54,27,0,366,367,5,10,0,0,367,369,1,0,0,0,368,365,1,0,0,0,368,369,1,0,0,0,369,370,1,0,0,0,370,371,3,56,28,0,371,372,5,56,0,0,372,374,1,0,0,0,373,368,1,0,0,0,373,374,1,0,0,0,374,375,1,0,0,0,375,386,3,52,26,0,376,386,3,62,31,0,377,378,3,54,27,0,378,379,5,10,0,0,379,381,1,0,0,0,380,377,1,0,0,0,380,381,1,0,0,0,381,382,1,0,0,0,382,383,3,56,28,0,383,384,5,56,0,0,384,386,1,0,0,0,385,363,1,0,0,0,385,376,1,0,0,0,385,380,1,0,0,0,386,51,1,0,0,0,387,392,3,58,29,0,388,389,5,56,0,0,389,391,3,58,29,0,390,388,1,0,0,0,391,394,1,0,0,0,392,390,1,0,0,0,392,393,1,0,0,0,393,53,1,0,0,0,394,392,1,0,0,0,395,396,7,0,0,0,396,55,1,0,0,0,397,398,7,0,0,0,398,57,1,0,0,0,399,401,3,74,37,0,400,402,3,60,30,0,401,400,1,0,0,0,401,402,1,0,0,0,402,59,1,0,0,0,403,405,5,30,0,0,404,406,3,76,38,0,405,404,1,0,0,0,405,406,1,0,0,0,406,407,1,0,0,0,407,408,5,31,0,0,408,61,1,0,0,0,409,411,3,70,35,0,410,409,1,0,0,0,410,411,1,0,0,0,411,412,1,0,0,0,412,413,3,72,36,0,413,414,5,29,0,0,414,63,1,0,0,0,415,416,3,54,27,0,416,417,5,10,0,0,417,419,1,0,0,0,418,415,1,0,0,0,418,419,1,0,0,0,419,420,1,0,0,0,420,421,3,56,28,0,421,423,5,7,0,0,422,424,3,66,33,0,423,422,1,0,0,0,423,424,1,0,0,0,424,431,1,0,0,0,425,426,3,54,27,0,426,428,7,3,0,0,427,429,3,56,28,0,428,427,1,0,0,0,428,429,1,0,0,0,429,431,1,0,0,0,430,418,1,0,0,0,430,425,1,0,0,0,431,65,1,0,0,0,432,433,5,65,0,0,433,67,1,0,0,0,434,435,7,0,0,0,435,69,1,0,0,0,436,437,7,0,0,0,437,71,1,0,0,0,438,449,3,104,52,0,439,444,5,57,0,0,440,441,5,28,0,0,441,443,5,57,0,0,442,440,1,0,0,0,443,446,1,0,0,0,444,442,1,0,0,0,444,445,1,0,0,0,445,449,1,0,0,0,446,444,1,0,0,0,447,449,5,60,0,0,448,438,1,0,0,0,448,439,1,0,0,0,448,447,1,0,0,0,449,73,1,0,0,0,450,451,7,0,0,0,451,75,1,0,0,0,452,457,3,78,39,0,453,454,5,28,0,0,454,456,3,78,39,0,455,453,1,0,0,0,456,459,1,0,0,0,457,455,1,0,0,0,457,458,1,0,0,0,458,461,1,0,0,0,459,457,1,0,0,0,460,462,5,28,0,0,461,460,1,0,0,0,461,462,1,0,0,0,462,77,1,0,0,0,463,466,3,80,40,0,464,466,3,102,51,0,465,463,1,0,0,0,465,464,1,0,0,0,466,79,1,0,0,0,467,468,3,70,35,0,468,469,5,57,0,0,469,81,1,0,0,0,470,474,3,84,42,0,471,473,3,86,43,0,472,471,1,0,0,0,473,476,1,0,0,0,474,472,1,0,0,0,474,475,1,0,0,0,475,478,1,0,0,0,476,474,1,0,0,0,477,479,3,88,44,0,478,477,1,0,0,0,478,479,1,0,0,0,479,83,1,0,0,0,480,481,5,49,0,0,481,482,3,98,49,0,482,85,1,0,0,0,483,485,5,50,0,0,484,486,3,60,30,0,485,484,1,0,0,0,485,486,1,0,0,0,486,487,1,0,0,0,487,488,3,98,49,0,488,87,1,0,0,0,489,490,5,51,0,0,490,491,3,98,49,0,491,89,1,0,0,0,492,496,3,92,46,0,493,495,3,94,47,0,494,493,1,0,0,0,495,498,1,0,0,0,496,494,1,0,0,0,496,497,1,0,0,0,497,500,1,0,0,0,498,496,1,0,0,0,499,501,3,96,48,0,500,499,1,0,0,0,500,501,1,0,0,0,501,91,1,0,0,0,502,503,5,37,0,0,503,504,3,106,53,0,504,505,3,98,49,0,505,93,1,0,0,0,506,507,5,38,0,0,507,508,5,37,0,0,508,509,3,106,53,0,509,510,3,98,49,0,510,95,1,0,0,0,511,512,5,38,0,0,512,513,3,98,49,0,513,97,1,0,0,0,514,516,5,32,0,0,515,517,3,24,12,0,516,515,1,0,0,0,516,517,1,0,0,0,517,518,1,0,0,0,518,519,5,33,0,0,519,99,1,0,0,0,520,521,5,39,0,0,521,522,3,106,53,0,522,523,3,98,49,0,523,528,1,0,0,0,524,525,5,39,0,0,525,528,3,106,53,0,526,528,5,39,0,0,527,520,1,0,0,0,527,524,1,0,0,0,527,526,1,0,0,0,528,101,1,0,0,0,529,530,6,51,-1,0,530,550,3,104,52,0,531,532,5,21,0,0,532,550,3,102,51,13,533,534,5,26,0,0,534,550,3,102,51,12,535,536,3,56,28,0,536,537,5,56,0,0,537,539,1,0,0,0,538,535,1,0,0,0,538,539,1,0,0,0,539,540,1,0,0,0,540,550,3,52,26,0,541,550,3,42,21,0,542,543,5,30,0,0,543,544,3,102,51,0,544,545,5,31,0,0,545,550,1,0,0,0,546,547,3,62,31,0,547,548,3,102,51,1,548,550,1,0,0,0,549,529,1,0,0,0,549,531,1,0,0,0,549,533,1,0,0,0,549,538,1,0,0,0,549,541,1,0,0,0,549,542,1,0,0,0,549,546,1,0,0,0,550,574,1,0,0,0,551,552,10,11,0,0,552,553,7,4,0,0,553,573,3,102,51,12,554,555,10,10,0,0,555,556,7,5,0,0,556,573,3,102,51,11,557,558,10,9,0,0,558,559,7,6,0,0,559,573,3,102,51,10,560,561,10,8,0,0,561,562,7,7,0,0,562,573,3,102,51,9,563,564,10,7,0,0,564,565,5,13,0,0,565,573,3,102,51,8,566,567,10,6,0,0,567,568,5,12,0,0,568,573,3,102,51,7,569,570,10,5,0,0,570,571,5,20,0,0,571,573,3,102,51,6,572,551,1,0,0,0,572,554,1,0,0,0,572,557,1,0,0,0,572,560,1,0,0,0,572,563,1,0,0,0,572,566,1,0,0,0,572,569,1,0,0,0,573,576,1,0,0,0,574,572,1,0,0,0,574,575,1,0,0,0,575,103,1,0,0,0,576,574,1,0,0,0,577,583,7,8,0,0,578,583,7,9,0,0,579,583,5,57,0,0,580,583,5,60,0,0,581,583,5,36,0,0,582,577,1,0,0,0,582,578,1,0,0,0,582,579,1,0,0,0,582,580,1,0,0,0,582,581,1,0,0,0,583,105,1,0,0,0,584,585,5,30,0,0,585,586,3,108,54,0,586,587,5,31,0,0,587,594,1,0,0,0,588,589,5,30,0,0,589,594,3,108,54,0,590,591,5,30,0,0,591,594,5,31,0,0,592,594,5,30,0,0,593,584,1,0,0,0,593,588,1,0,0,0,593,590,1,0,0,0,593,592,1,0,0,0,594,107,1,0,0,0,595,599,3,104,52,0,596,599,3,102,51,0,597,599,3,110,55,0,598,595,1,0,0,0,598,596,1,0,0,0,598,597,1,0,0,0,599,109,1,0,0,0,600,601,5,57,0,0,601,602,5,52,0,0,602,603,5,57,0,0,603,111,1,0,0,0,87,113,117,123,126,131,135,138,142,144,148,150,154,158,164,170,175,177,182,185,188,193,196,200,203,206,210,219,223,225,230,241,245,248,253,255,272,279,284,289,294,297,301,306,309,313,318,327,332,337,340,346,349,352,355,360,363,368,373,380,385,392,401,405,410,418,423,428,430,444,448,457,461,465,474,478,485,496,500,516,527,538,549,572,574,582,593,598],We=new T.atn.ATNDeserializer().deserialize(Yf),Xf=We.decisionToState.map((t,e)=>new T.dfa.DFA(t,e)),Qf=new T.PredictionContextCache,A=class extends T.Parser{constructor(e){super(e),this._interp=new T.atn.ParserATNSimulator(this,We,Xf,Qf),this.ruleNames=A.ruleNames,this.literalNames=A.literalNames,this.symbolicNames=A.symbolicNames}get atn(){return We}sempred(e,n,i){switch(n){case 51:return this.expr_sempred(e,i);default:throw"No predicate with index:"+n}}expr_sempred(e,n){switch(n){case 0:return this.precpred(this._ctx,11);case 1:return this.precpred(this._ctx,10);case 2:return this.precpred(this._ctx,9);case 3:return this.precpred(this._ctx,8);case 4:return this.precpred(this._ctx,7);case 5:return this.precpred(this._ctx,6);case 6:return this.precpred(this._ctx,5);default:throw"No predicate with index:"+n}}prog(){let e=new yo(this,this._ctx,this.state);this.enterRule(e,0,A.RULE_prog);var n=0;try{this.state=131,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,4,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=113,this._errHandler.sync(this),n=this._input.LA(1),n===6&&(this.state=112,this.title()),this.state=115,this.match(A.EOF);break;case 2:this.enterOuterAlt(e,2),this.state=117,this._errHandler.sync(this),n=this._input.LA(1),n===6&&(this.state=116,this.title()),this.state=119,this.head(),this.state=120,this.match(A.EOF);break;case 3:this.enterOuterAlt(e,3),this.state=123,this._errHandler.sync(this),n=this._input.LA(1),n===6&&(this.state=122,this.title()),this.state=126,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,3,this._ctx);i===1&&(this.state=125,this.head()),this.state=128,this.block(),this.state=129,this.match(A.EOF);break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}title(){let e=new He(this,this._ctx,this.state);this.enterRule(e,2,A.RULE_title);var n=0;try{this.enterOuterAlt(e,1),this.state=133,this.match(A.TITLE),this.state=135,this._errHandler.sync(this),n=this._input.LA(1),n===67&&(this.state=134,this.match(A.TITLE_CONTENT)),this.state=138,this._errHandler.sync(this),n=this._input.LA(1),n===68&&(this.state=137,this.match(A.TITLE_END))}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}head(){let e=new $e(this,this._ctx,this.state);this.enterRule(e,4,A.RULE_head);try{this.state=154,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,11,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=142,this._errHandler.sync(this);var i=1;do{switch(i){case 1:switch(this.state=142,this._errHandler.sync(this),this._input.LA(1)){case 43:this.state=140,this.group();break;case 8:case 17:case 55:case 57:case 60:this.state=141,this.participant();break;default:throw new T.error.NoViableAltException(this)}break;default:throw new T.error.NoViableAltException(this)}this.state=144,this._errHandler.sync(this),i=this._interp.adaptivePredict(this._input,8,this._ctx)}while(i!=2&&i!=T.atn.ATN.INVALID_ALT_NUMBER);break;case 2:this.enterOuterAlt(e,2),this.state=150,this._errHandler.sync(this);for(var i=this._interp.adaptivePredict(this._input,10,this._ctx);i!=2&&i!=T.atn.ATN.INVALID_ALT_NUMBER;){if(i===1)switch(this.state=148,this._errHandler.sync(this),this._input.LA(1)){case 43:this.state=146,this.group();break;case 8:case 17:case 55:case 57:case 60:this.state=147,this.participant();break;default:throw new T.error.NoViableAltException(this)}this.state=152,this._errHandler.sync(this),i=this._interp.adaptivePredict(this._input,10,this._ctx)}this.state=153,this.starterExp();break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}group(){let e=new K8(this,this._ctx,this.state);this.enterRule(e,6,A.RULE_group);var n=0;try{this.state=177,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,16,this._ctx);switch(i){case 1:for(this.enterOuterAlt(e,1),this.state=156,this.match(A.GROUP),this.state=158,this._errHandler.sync(this),n=this._input.LA(1),(n===57||n===60)&&(this.state=157,this.name()),this.state=160,this.match(A.OBRACE),this.state=164,this._errHandler.sync(this),n=this._input.LA(1);n===8||n===17||(n-55&-32)==0&&(1<<n-55&37)!==0;)this.state=161,this.participant(),this.state=166,this._errHandler.sync(this),n=this._input.LA(1);this.state=167,this.match(A.CBRACE);break;case 2:this.enterOuterAlt(e,2),this.state=168,this.match(A.GROUP),this.state=170,this._errHandler.sync(this),n=this._input.LA(1),(n===57||n===60)&&(this.state=169,this.name()),this.state=172,this.match(A.OBRACE);break;case 3:this.enterOuterAlt(e,3),this.state=173,this.match(A.GROUP),this.state=175,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,15,this._ctx);i===1&&(this.state=174,this.name());break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}starterExp(){let e=new Ve(this,this._ctx,this.state);this.enterRule(e,8,A.RULE_starterExp);var n=0;try{switch(this.state=188,this._errHandler.sync(this),this._input.LA(1)){case 53:this.enterOuterAlt(e,1),this.state=179,this.match(A.STARTER_LXR),this.state=185,this._errHandler.sync(this),n=this._input.LA(1),n===30&&(this.state=180,this.match(A.OPAR),this.state=182,this._errHandler.sync(this),n=this._input.LA(1),(n===57||n===60)&&(this.state=181,this.starter()),this.state=184,this.match(A.CPAR));break;case 55:this.enterOuterAlt(e,2),this.state=187,this.match(A.ANNOTATION);break;default:throw new T.error.NoViableAltException(this)}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}starter(){let e=new Ge(this,this._ctx,this.state);this.enterRule(e,10,A.RULE_starter);var n=0;try{this.enterOuterAlt(e,1),this.state=190,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}participant(){let e=new f0(this,this._ctx,this.state);this.enterRule(e,12,A.RULE_participant);var n=0;try{this.state=210,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,25,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=193,this._errHandler.sync(this),n=this._input.LA(1),n===55&&(this.state=192,this.participantType()),this.state=196,this._errHandler.sync(this),n=this._input.LA(1),(n===8||n===17)&&(this.state=195,this.stereotype()),this.state=198,this.name(),this.state=200,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,22,this._ctx);i===1&&(this.state=199,this.width()),this.state=203,this._errHandler.sync(this),n=this._input.LA(1),n===48&&(this.state=202,this.label()),this.state=206,this._errHandler.sync(this),n=this._input.LA(1),n===11&&(this.state=205,this.match(A.COLOR));break;case 2:this.enterOuterAlt(e,2),this.state=208,this.stereotype();break;case 3:this.enterOuterAlt(e,3),this.state=209,this.participantType();break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}stereotype(){let e=new je(this,this._ctx,this.state);this.enterRule(e,14,A.RULE_stereotype);var n=0;try{this.state=225,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,28,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=212,this.match(A.SOPEN),this.state=213,this.name(),this.state=214,this.match(A.SCLOSE);break;case 2:this.enterOuterAlt(e,2),this.state=216,this.match(A.SOPEN),this.state=217,this.name(),this.state=219,this._errHandler.sync(this),n=this._input.LA(1),n===16&&(this.state=218,this.match(A.GT));break;case 3:this.enterOuterAlt(e,3),this.state=221,n=this._input.LA(1),n===8||n===17?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this),this.state=223,this._errHandler.sync(this),n=this._input.LA(1),(n===9||n===16)&&(this.state=222,n=this._input.LA(1),n===9||n===16?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this));break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}label(){let e=new qe(this,this._ctx,this.state);this.enterRule(e,16,A.RULE_label);try{this.state=230,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,29,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=227,this.match(A.AS),this.state=228,this.name();break;case 2:this.enterOuterAlt(e,2),this.state=229,this.match(A.AS);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}participantType(){let e=new Ke(this,this._ctx,this.state);this.enterRule(e,18,A.RULE_participantType);try{this.enterOuterAlt(e,1),this.state=232,this.match(A.ANNOTATION)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}name(){let e=new G4(this,this._ctx,this.state);this.enterRule(e,20,A.RULE_name);var n=0;try{this.enterOuterAlt(e,1),this.state=234,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}width(){let e=new Ye(this,this._ctx,this.state);this.enterRule(e,22,A.RULE_width);try{this.enterOuterAlt(e,1),this.state=236,this.match(A.INT)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}block(){let e=new Y8(this,this._ctx,this.state);this.enterRule(e,24,A.RULE_block);var n=0;try{this.enterOuterAlt(e,1),this.state=239,this._errHandler.sync(this),n=this._input.LA(1);do this.state=238,this.stat(),this.state=241,this._errHandler.sync(this),n=this._input.LA(1);while((n-34&-32)==0&&(1<<n-34&1737539055)!==0)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}ret(){let e=new Xe(this,this._ctx,this.state);this.enterRule(e,26,A.RULE_ret);var n=0;try{switch(this.state=255,this._errHandler.sync(this),this._input.LA(1)){case 40:this.enterOuterAlt(e,1),this.state=243,this.match(A.RETURN),this.state=245,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,31,this._ctx);i===1&&(this.state=244,this.expr(0)),this.state=248,this._errHandler.sync(this),n=this._input.LA(1),n===27&&(this.state=247,this.match(A.SCOL));break;case 54:this.enterOuterAlt(e,2),this.state=250,this.match(A.ANNOTATION_RET),this.state=251,this.asyncMessage(),this.state=253,this._errHandler.sync(this),n=this._input.LA(1),n===66&&(this.state=252,this.match(A.EVENT_END));break;default:throw new T.error.NoViableAltException(this)}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}divider(){let e=new Qe(this,this._ctx,this.state);this.enterRule(e,28,A.RULE_divider);try{this.enterOuterAlt(e,1),this.state=257,this.dividerNote()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}dividerNote(){let e=new Je(this,this._ctx,this.state);this.enterRule(e,30,A.RULE_dividerNote);try{this.enterOuterAlt(e,1),this.state=259,this.match(A.DIVIDER)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}stat(){let e=new X8(this,this._ctx,this.state);this.enterRule(e,32,A.RULE_stat);var n=0;try{this.state=279,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,36,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=261,this.alt();break;case 2:this.enterOuterAlt(e,2),this.state=262,this.par();break;case 3:this.enterOuterAlt(e,3),this.state=263,this.opt();break;case 4:this.enterOuterAlt(e,4),this.state=264,this.critical();break;case 5:this.enterOuterAlt(e,5),this.state=265,this.section();break;case 6:this.enterOuterAlt(e,6),this.state=266,this.ref();break;case 7:this.enterOuterAlt(e,7),this.state=267,this.loop();break;case 8:this.enterOuterAlt(e,8),this.state=268,this.creation();break;case 9:this.enterOuterAlt(e,9),this.state=269,this.message();break;case 10:this.enterOuterAlt(e,10),this.state=270,this.asyncMessage(),this.state=272,this._errHandler.sync(this),n=this._input.LA(1),n===66&&(this.state=271,this.match(A.EVENT_END));break;case 11:this.enterOuterAlt(e,11),this.state=274,this.ret();break;case 12:this.enterOuterAlt(e,12),this.state=275,this.divider();break;case 13:this.enterOuterAlt(e,13),this.state=276,this.tcf();break;case 14:this.enterOuterAlt(e,14),this.state=277,e._OTHER=this.match(A.OTHER),console.log("unknown char: "+(e._OTHER===null?null:e._OTHER.text));break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}par(){let e=new et(this,this._ctx,this.state);this.enterRule(e,34,A.RULE_par);try{this.state=284,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,37,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=281,this.match(A.PAR),this.state=282,this.braceBlock();break;case 2:this.enterOuterAlt(e,2),this.state=283,this.match(A.PAR);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}opt(){let e=new tt(this,this._ctx,this.state);this.enterRule(e,36,A.RULE_opt);try{this.state=289,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,38,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=286,this.match(A.OPT),this.state=287,this.braceBlock();break;case 2:this.enterOuterAlt(e,2),this.state=288,this.match(A.OPT);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}critical(){let e=new nt(this,this._ctx,this.state);this.enterRule(e,38,A.RULE_critical);var n=0;try{this.state=301,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,41,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=291,this.match(A.CRITICAL),this.state=297,this._errHandler.sync(this),n=this._input.LA(1),n===30&&(this.state=292,this.match(A.OPAR),this.state=294,this._errHandler.sync(this),n=this._input.LA(1),(n-34&-32)==0&&(1<<n-34&125829127)!==0&&(this.state=293,this.atom()),this.state=296,this.match(A.CPAR)),this.state=299,this.braceBlock();break;case 2:this.enterOuterAlt(e,2),this.state=300,this.match(A.CRITICAL);break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}section(){let e=new it(this,this._ctx,this.state);this.enterRule(e,40,A.RULE_section);var n=0;try{this.state=313,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,44,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=303,this.match(A.SECTION),this.state=309,this._errHandler.sync(this),n=this._input.LA(1),n===30&&(this.state=304,this.match(A.OPAR),this.state=306,this._errHandler.sync(this),n=this._input.LA(1),(n-34&-32)==0&&(1<<n-34&125829127)!==0&&(this.state=305,this.atom()),this.state=308,this.match(A.CPAR)),this.state=311,this.braceBlock();break;case 2:this.enterOuterAlt(e,2),this.state=312,this.match(A.SECTION);break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}creation(){let e=new Q8(this,this._ctx,this.state);this.enterRule(e,42,A.RULE_creation);try{this.enterOuterAlt(e,1),this.state=315,this.creationBody(),this.state=318,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,45,this._ctx);n===1?(this.state=316,this.match(A.SCOL)):n===2&&(this.state=317,this.braceBlock())}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}ref(){let e=new st(this,this._ctx,this.state);this.enterRule(e,44,A.RULE_ref);var n=0;try{for(this.enterOuterAlt(e,1),this.state=320,this.match(A.REF),this.state=321,this.match(A.OPAR),this.state=322,this.name(),this.state=332,this._errHandler.sync(this),n=this._input.LA(1);n===28;){for(this.state=323,this.match(A.COMMA),this.state=327,this._errHandler.sync(this),n=this._input.LA(1);n===57||n===60;)this.state=324,this.name(),this.state=329,this._errHandler.sync(this),n=this._input.LA(1);this.state=334,this._errHandler.sync(this),n=this._input.LA(1)}this.state=335,this.match(A.CPAR),this.state=337,this._errHandler.sync(this),n=this._input.LA(1),n===27&&(this.state=336,this.match(A.SCOL))}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}creationBody(){let e=new rt(this,this._ctx,this.state);this.enterRule(e,46,A.RULE_creationBody);var n=0;try{this.state=355,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,53,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=340,this._errHandler.sync(this),n=this._input.LA(1),(n-34&-32)==0&&(1<<n-34&125829127)!==0&&(this.state=339,this.assignment()),this.state=342,this.match(A.NEW),this.state=343,this.construct(),this.state=349,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,51,this._ctx);i===1&&(this.state=344,this.match(A.OPAR),this.state=346,this._errHandler.sync(this),n=this._input.LA(1),((n&-32)==0&&(1<<n&1142947840)!==0||(n-34&-32)==0&&(1<<n-34&125829255)!==0)&&(this.state=345,this.parameters()),this.state=348,this.match(A.CPAR));break;case 2:this.enterOuterAlt(e,2),this.state=352,this._errHandler.sync(this),n=this._input.LA(1),(n-34&-32)==0&&(1<<n-34&125829127)!==0&&(this.state=351,this.assignment()),this.state=354,this.match(A.NEW);break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}message(){let e=new ot(this,this._ctx,this.state);this.enterRule(e,48,A.RULE_message);try{switch(this.enterOuterAlt(e,1),this.state=357,this.messageBody(),this.state=360,this._errHandler.sync(this),this._input.LA(1)){case 27:this.state=358,this.match(A.SCOL);break;case 32:this.state=359,this.braceBlock();break;case-1:case 33:case 34:case 35:case 36:case 37:case 39:case 40:case 41:case 42:case 44:case 45:case 46:case 47:case 49:case 54:case 57:case 58:case 59:case 60:case 63:case 64:break;default:break}}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}messageBody(){let e=new lt(this,this._ctx,this.state);this.enterRule(e,50,A.RULE_messageBody);try{this.state=385,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,59,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=363,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,55,this._ctx);n===1&&(this.state=362,this.assignment()),this.state=373,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,57,this._ctx);if(n===1){this.state=368,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,56,this._ctx);n===1&&(this.state=365,this.from(),this.state=366,this.match(A.ARROW)),this.state=370,this.to(),this.state=371,this.match(A.DOT)}this.state=375,this.func();break;case 2:this.enterOuterAlt(e,2),this.state=376,this.assignment();break;case 3:this.enterOuterAlt(e,3),this.state=380,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,58,this._ctx);n===1&&(this.state=377,this.from(),this.state=378,this.match(A.ARROW)),this.state=382,this.to(),this.state=383,this.match(A.DOT);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}func(){let e=new J8(this,this._ctx,this.state);this.enterRule(e,52,A.RULE_func);try{this.enterOuterAlt(e,1),this.state=387,this.signature(),this.state=392,this._errHandler.sync(this);for(var n=this._interp.adaptivePredict(this._input,60,this._ctx);n!=2&&n!=T.atn.ATN.INVALID_ALT_NUMBER;)n===1&&(this.state=388,this.match(A.DOT),this.state=389,this.signature()),this.state=394,this._errHandler.sync(this),n=this._interp.adaptivePredict(this._input,60,this._ctx)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}from(){let e=new e7(this,this._ctx,this.state);this.enterRule(e,54,A.RULE_from);var n=0;try{this.enterOuterAlt(e,1),this.state=395,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}to(){let e=new u5(this,this._ctx,this.state);this.enterRule(e,56,A.RULE_to);var n=0;try{this.enterOuterAlt(e,1),this.state=397,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}signature(){let e=new t7(this,this._ctx,this.state);this.enterRule(e,58,A.RULE_signature);try{this.enterOuterAlt(e,1),this.state=399,this.methodName(),this.state=401,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,61,this._ctx);n===1&&(this.state=400,this.invocation())}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}invocation(){let e=new n7(this,this._ctx,this.state);this.enterRule(e,60,A.RULE_invocation);var n=0;try{this.enterOuterAlt(e,1),this.state=403,this.match(A.OPAR),this.state=405,this._errHandler.sync(this),n=this._input.LA(1),((n&-32)==0&&(1<<n&1142947840)!==0||(n-34&-32)==0&&(1<<n-34&125829255)!==0)&&(this.state=404,this.parameters()),this.state=407,this.match(A.CPAR)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}assignment(){let e=new h5(this,this._ctx,this.state);this.enterRule(e,62,A.RULE_assignment);try{this.enterOuterAlt(e,1),this.state=410,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,63,this._ctx);n===1&&(this.state=409,this.type()),this.state=412,this.assignee(),this.state=413,this.match(A.ASSIGN)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}asyncMessage(){let e=new i7(this,this._ctx,this.state);this.enterRule(e,64,A.RULE_asyncMessage);var n=0;try{this.state=430,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,67,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=418,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,64,this._ctx);i===1&&(this.state=415,this.from(),this.state=416,this.match(A.ARROW)),this.state=420,this.to(),this.state=421,this.match(A.COL),this.state=423,this._errHandler.sync(this),n=this._input.LA(1),n===65&&(this.state=422,this.content());break;case 2:this.enterOuterAlt(e,2),this.state=425,this.from(),this.state=426,n=this._input.LA(1),n===10||n===21?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this),this.state=428,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,66,this._ctx);i===1&&(this.state=427,this.to());break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}content(){let e=new Lt(this,this._ctx,this.state);this.enterRule(e,66,A.RULE_content);try{this.enterOuterAlt(e,1),this.state=432,this.match(A.EVENT_PAYLOAD_LXR)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}construct(){let e=new at(this,this._ctx,this.state);this.enterRule(e,68,A.RULE_construct);var n=0;try{this.enterOuterAlt(e,1),this.state=434,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}type(){let e=new s7(this,this._ctx,this.state);this.enterRule(e,70,A.RULE_type);var n=0;try{this.enterOuterAlt(e,1),this.state=436,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}assignee(){let e=new ct(this,this._ctx,this.state);this.enterRule(e,72,A.RULE_assignee);var n=0;try{this.state=448,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,69,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=438,this.atom();break;case 2:for(this.enterOuterAlt(e,2),this.state=439,this.match(A.ID),this.state=444,this._errHandler.sync(this),n=this._input.LA(1);n===28;)this.state=440,this.match(A.COMMA),this.state=441,this.match(A.ID),this.state=446,this._errHandler.sync(this),n=this._input.LA(1);break;case 3:this.enterOuterAlt(e,3),this.state=447,this.match(A.STRING);break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}methodName(){let e=new Ct(this,this._ctx,this.state);this.enterRule(e,74,A.RULE_methodName);var n=0;try{this.enterOuterAlt(e,1),this.state=450,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}parameters(){let e=new r7(this,this._ctx,this.state);this.enterRule(e,76,A.RULE_parameters);var n=0;try{this.enterOuterAlt(e,1),this.state=452,this.parameter(),this.state=457,this._errHandler.sync(this);for(var i=this._interp.adaptivePredict(this._input,70,this._ctx);i!=2&&i!=T.atn.ATN.INVALID_ALT_NUMBER;)i===1&&(this.state=453,this.match(A.COMMA),this.state=454,this.parameter()),this.state=459,this._errHandler.sync(this),i=this._interp.adaptivePredict(this._input,70,this._ctx);this.state=461,this._errHandler.sync(this),n=this._input.LA(1),n===28&&(this.state=460,this.match(A.COMMA))}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}parameter(){let e=new o7(this,this._ctx,this.state);this.enterRule(e,78,A.RULE_parameter);try{this.state=465,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,72,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=463,this.declaration();break;case 2:this.enterOuterAlt(e,2),this.state=464,this.expr(0);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}declaration(){let e=new ut(this,this._ctx,this.state);this.enterRule(e,80,A.RULE_declaration);try{this.enterOuterAlt(e,1),this.state=467,this.type(),this.state=468,this.match(A.ID)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}tcf(){let e=new ht(this,this._ctx,this.state);this.enterRule(e,82,A.RULE_tcf);var n=0;try{for(this.enterOuterAlt(e,1),this.state=470,this.tryBlock(),this.state=474,this._errHandler.sync(this),n=this._input.LA(1);n===50;)this.state=471,this.catchBlock(),this.state=476,this._errHandler.sync(this),n=this._input.LA(1);this.state=478,this._errHandler.sync(this),n=this._input.LA(1),n===51&&(this.state=477,this.finallyBlock())}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}tryBlock(){let e=new dt(this,this._ctx,this.state);this.enterRule(e,84,A.RULE_tryBlock);try{this.enterOuterAlt(e,1),this.state=480,this.match(A.TRY),this.state=481,this.braceBlock()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}catchBlock(){let e=new l7(this,this._ctx,this.state);this.enterRule(e,86,A.RULE_catchBlock);var n=0;try{this.enterOuterAlt(e,1),this.state=483,this.match(A.CATCH),this.state=485,this._errHandler.sync(this),n=this._input.LA(1),n===30&&(this.state=484,this.invocation()),this.state=487,this.braceBlock()}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}finallyBlock(){let e=new ft(this,this._ctx,this.state);this.enterRule(e,88,A.RULE_finallyBlock);try{this.enterOuterAlt(e,1),this.state=489,this.match(A.FINALLY),this.state=490,this.braceBlock()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}alt(){let e=new gt(this,this._ctx,this.state);this.enterRule(e,90,A.RULE_alt);var n=0;try{this.enterOuterAlt(e,1),this.state=492,this.ifBlock(),this.state=496,this._errHandler.sync(this);for(var i=this._interp.adaptivePredict(this._input,76,this._ctx);i!=2&&i!=T.atn.ATN.INVALID_ALT_NUMBER;)i===1&&(this.state=493,this.elseIfBlock()),this.state=498,this._errHandler.sync(this),i=this._interp.adaptivePredict(this._input,76,this._ctx);this.state=500,this._errHandler.sync(this),n=this._input.LA(1),n===38&&(this.state=499,this.elseBlock())}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}ifBlock(){let e=new pt(this,this._ctx,this.state);this.enterRule(e,92,A.RULE_ifBlock);try{this.enterOuterAlt(e,1),this.state=502,this.match(A.IF),this.state=503,this.parExpr(),this.state=504,this.braceBlock()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}elseIfBlock(){let e=new L7(this,this._ctx,this.state);this.enterRule(e,94,A.RULE_elseIfBlock);try{this.enterOuterAlt(e,1),this.state=506,this.match(A.ELSE),this.state=507,this.match(A.IF),this.state=508,this.parExpr(),this.state=509,this.braceBlock()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}elseBlock(){let e=new mt(this,this._ctx,this.state);this.enterRule(e,96,A.RULE_elseBlock);try{this.enterOuterAlt(e,1),this.state=511,this.match(A.ELSE),this.state=512,this.braceBlock()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}braceBlock(){let e=new Y1(this,this._ctx,this.state);this.enterRule(e,98,A.RULE_braceBlock);var n=0;try{this.enterOuterAlt(e,1),this.state=514,this.match(A.OBRACE),this.state=516,this._errHandler.sync(this),n=this._input.LA(1),(n-34&-32)==0&&(1<<n-34&1737539055)!==0&&(this.state=515,this.block()),this.state=518,this.match(A.CBRACE)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}loop(){let e=new wt(this,this._ctx,this.state);this.enterRule(e,100,A.RULE_loop);try{this.state=527,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,79,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=520,this.match(A.WHILE),this.state=521,this.parExpr(),this.state=522,this.braceBlock();break;case 2:this.enterOuterAlt(e,2),this.state=524,this.match(A.WHILE),this.state=525,this.parExpr();break;case 3:this.enterOuterAlt(e,3),this.state=526,this.match(A.WHILE);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}expr(e){e===void 0&&(e=0);const n=this._ctx,i=this.state;let s=new b2(this,this._ctx,i),r=s;const o=102;this.enterRecursionRule(s,102,A.RULE_expr,e);var l=0;try{this.enterOuterAlt(s,1),this.state=549,this._errHandler.sync(this);var L=this._interp.adaptivePredict(this._input,81,this._ctx);switch(L){case 1:s=new ko(this,s),this._ctx=s,r=s,this.state=530,this.atom();break;case 2:s=new Io(this,s),this._ctx=s,r=s,this.state=531,this.match(A.MINUS),this.state=532,this.expr(13);break;case 3:s=new Eo(this,s),this._ctx=s,r=s,this.state=533,this.match(A.NOT),this.state=534,this.expr(12);break;case 4:s=new Ao(this,s),this._ctx=s,r=s,this.state=538,this._errHandler.sync(this);var L=this._interp.adaptivePredict(this._input,80,this._ctx);L===1&&(this.state=535,this.to(),this.state=536,this.match(A.DOT)),this.state=540,this.func();break;case 5:s=new Fo(this,s),this._ctx=s,r=s,this.state=541,this.creation();break;case 6:s=new Oo(this,s),this._ctx=s,r=s,this.state=542,this.match(A.OPAR),this.state=543,this.expr(0),this.state=544,this.match(A.CPAR);break;case 7:s=new Ro(this,s),this._ctx=s,r=s,this.state=546,this.assignment(),this.state=547,this.expr(1);break}this._ctx.stop=this._input.LT(-1),this.state=574,this._errHandler.sync(this);for(var a=this._interp.adaptivePredict(this._input,83,this._ctx);a!=2&&a!=T.atn.ATN.INVALID_ALT_NUMBER;){if(a===1){this._parseListeners!==null&&this.triggerExitRuleEvent(),r=s,this.state=572,this._errHandler.sync(this);var L=this._interp.adaptivePredict(this._input,82,this._ctx);switch(L){case 1:if(s=new No(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=551,!this.precpred(this._ctx,11))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 11)");this.state=552,s.op=this._input.LT(1),l=this._input.LA(1),(l&-32)==0&&(1<<l&29360128)!==0?(this._errHandler.reportMatch(this),this.consume()):s.op=this._errHandler.recoverInline(this),this.state=553,this.expr(12);break;case 2:if(s=new To(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=554,!this.precpred(this._ctx,10))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 10)");this.state=555,s.op=this._input.LT(1),l=this._input.LA(1),l===20||l===21?(this._errHandler.reportMatch(this),this.consume()):s.op=this._errHandler.recoverInline(this),this.state=556,this.expr(11);break;case 3:if(s=new So(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=557,!this.precpred(this._ctx,9))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 9)");this.state=558,s.op=this._input.LT(1),l=this._input.LA(1),(l&-32)==0&&(1<<l&983040)!==0?(this._errHandler.reportMatch(this),this.consume()):s.op=this._errHandler.recoverInline(this),this.state=559,this.expr(10);break;case 4:if(s=new Do(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=560,!this.precpred(this._ctx,8))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 8)");this.state=561,s.op=this._input.LT(1),l=this._input.LA(1),l===14||l===15?(this._errHandler.reportMatch(this),this.consume()):s.op=this._errHandler.recoverInline(this),this.state=562,this.expr(9);break;case 5:if(s=new Po(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=563,!this.precpred(this._ctx,7))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 7)");this.state=564,this.match(A.AND),this.state=565,this.expr(8);break;case 6:if(s=new Zo(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=566,!this.precpred(this._ctx,6))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 6)");this.state=567,this.match(A.OR),this.state=568,this.expr(7);break;case 7:if(s=new bo(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=569,!this.precpred(this._ctx,5))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 5)");this.state=570,this.match(A.PLUS),this.state=571,this.expr(6);break}}this.state=576,this._errHandler.sync(this),a=this._interp.adaptivePredict(this._input,83,this._ctx)}}catch(c){if(c instanceof T.error.RecognitionException)s.exception=c,this._errHandler.reportError(this,c),this._errHandler.recover(this,c);else throw c}finally{this.unrollRecursionContexts(n)}return s}atom(){let e=new I3(this,this._ctx,this.state);this.enterRule(e,104,A.RULE_atom);var n=0;try{switch(this.state=582,this._errHandler.sync(this),this._input.LA(1)){case 58:case 59:e=new Ho(this,e),this.enterOuterAlt(e,1),this.state=577,n=this._input.LA(1),n===58||n===59?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this);break;case 34:case 35:e=new Bo(this,e),this.enterOuterAlt(e,2),this.state=578,n=this._input.LA(1),n===34||n===35?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this);break;case 57:e=new zo(this,e),this.enterOuterAlt(e,3),this.state=579,this.match(A.ID);break;case 60:e=new Uo(this,e),this.enterOuterAlt(e,4),this.state=580,this.match(A.STRING);break;case 36:e=new Wo(this,e),this.enterOuterAlt(e,5),this.state=581,this.match(A.NIL);break;default:throw new T.error.NoViableAltException(this)}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}parExpr(){let e=new d5(this,this._ctx,this.state);this.enterRule(e,106,A.RULE_parExpr);try{this.state=593,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,85,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=584,this.match(A.OPAR),this.state=585,this.condition(),this.state=586,this.match(A.CPAR);break;case 2:this.enterOuterAlt(e,2),this.state=588,this.match(A.OPAR),this.state=589,this.condition();break;case 3:this.enterOuterAlt(e,3),this.state=590,this.match(A.OPAR),this.state=591,this.match(A.CPAR);break;case 4:this.enterOuterAlt(e,4),this.state=592,this.match(A.OPAR);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}condition(){let e=new xt(this,this._ctx,this.state);this.enterRule(e,108,A.RULE_condition);try{this.state=598,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,86,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=595,this.atom();break;case 2:this.enterOuterAlt(e,2),this.state=596,this.expr(0);break;case 3:this.enterOuterAlt(e,3),this.state=597,this.inExpr();break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}inExpr(){let e=new _t(this,this._ctx,this.state);this.enterRule(e,110,A.RULE_inExpr);try{this.enterOuterAlt(e,1),this.state=600,this.match(A.ID),this.state=601,this.match(A.IN),this.state=602,this.match(A.ID)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}};let d=A;i2(d,"grammarFileName","java-escape"),i2(d,"literalNames",[null,null,"'const'","'readonly'","'static'","'await'","'title'","':'","'<<'","'>>'","'->'",null,"'||'","'&&'","'=='","'!='","'>'","'<'","'>='","'<='","'+'","'-'","'*'","'/'","'%'","'^'","'!'","';'","','","'='","'('","')'","'{'","'}'","'true'","'false'",null,"'if'","'else'",null,"'return'","'new'","'par'","'group'","'opt'","'critical'",null,"'ref'","'as'","'try'","'catch'","'finally'","'in'",null,null,null,"'.'"]),i2(d,"symbolicNames",[null,"WS","CONSTANT","READONLY","STATIC","AWAIT","TITLE","COL","SOPEN","SCLOSE","ARROW","COLOR","OR","AND","EQ","NEQ","GT","LT","GTEQ","LTEQ","PLUS","MINUS","MULT","DIV","MOD","POW","NOT","SCOL","COMMA","ASSIGN","OPAR","CPAR","OBRACE","CBRACE","TRUE","FALSE","NIL","IF","ELSE","WHILE","RETURN","NEW","PAR","GROUP","OPT","CRITICAL","SECTION","REF","AS","TRY","CATCH","FINALLY","IN","STARTER_LXR","ANNOTATION_RET","ANNOTATION","DOT","ID","INT","FLOAT","STRING","CR","COMMENT","OTHER","DIVIDER","EVENT_PAYLOAD_LXR","EVENT_END","TITLE_CONTENT","TITLE_END"]),i2(d,"ruleNames",["prog","title","head","group","starterExp","starter","participant","stereotype","label","participantType","name","width","block","ret","divider","dividerNote","stat","par","opt","critical","section","creation","ref","creationBody","message","messageBody","func","from","to","signature","invocation","assignment","asyncMessage","content","construct","type","assignee","methodName","parameters","parameter","declaration","tcf","tryBlock","catchBlock","finallyBlock","alt","ifBlock","elseIfBlock","elseBlock","braceBlock","loop","expr","atom","parExpr","condition","inExpr"]),d.EOF=T.Token.EOF,d.WS=1,d.CONSTANT=2,d.READONLY=3,d.STATIC=4,d.AWAIT=5,d.TITLE=6,d.COL=7,d.SOPEN=8,d.SCLOSE=9,d.ARROW=10,d.COLOR=11,d.OR=12,d.AND=13,d.EQ=14,d.NEQ=15,d.GT=16,d.LT=17,d.GTEQ=18,d.LTEQ=19,d.PLUS=20,d.MINUS=21,d.MULT=22,d.DIV=23,d.MOD=24,d.POW=25,d.NOT=26,d.SCOL=27,d.COMMA=28,d.ASSIGN=29,d.OPAR=30,d.CPAR=31,d.OBRACE=32,d.CBRACE=33,d.TRUE=34,d.FALSE=35,d.NIL=36,d.IF=37,d.ELSE=38,d.WHILE=39,d.RETURN=40,d.NEW=41,d.PAR=42,d.GROUP=43,d.OPT=44,d.CRITICAL=45,d.SECTION=46,d.REF=47,d.AS=48,d.TRY=49,d.CATCH=50,d.FINALLY=51,d.IN=52,d.STARTER_LXR=53,d.ANNOTATION_RET=54,d.ANNOTATION=55,d.DOT=56,d.ID=57,d.INT=58,d.FLOAT=59,d.STRING=60,d.CR=61,d.COMMENT=62,d.OTHER=63,d.DIVIDER=64,d.EVENT_PAYLOAD_LXR=65,d.EVENT_END=66,d.TITLE_CONTENT=67,d.TITLE_END=68,d.RULE_prog=0,d.RULE_title=1,d.RULE_head=2,d.RULE_group=3,d.RULE_starterExp=4,d.RULE_starter=5,d.RULE_participant=6,d.RULE_stereotype=7,d.RULE_label=8,d.RULE_participantType=9,d.RULE_name=10,d.RULE_width=11,d.RULE_block=12,d.RULE_ret=13,d.RULE_divider=14,d.RULE_dividerNote=15,d.RULE_stat=16,d.RULE_par=17,d.RULE_opt=18,d.RULE_critical=19,d.RULE_section=20,d.RULE_creation=21,d.RULE_ref=22,d.RULE_creationBody=23,d.RULE_message=24,d.RULE_messageBody=25,d.RULE_func=26,d.RULE_from=27,d.RULE_to=28,d.RULE_signature=29,d.RULE_invocation=30,d.RULE_assignment=31,d.RULE_asyncMessage=32,d.RULE_content=33,d.RULE_construct=34,d.RULE_type=35,d.RULE_assignee=36,d.RULE_methodName=37,d.RULE_parameters=38,d.RULE_parameter=39,d.RULE_declaration=40,d.RULE_tcf=41,d.RULE_tryBlock=42,d.RULE_catchBlock=43,d.RULE_finallyBlock=44,d.RULE_alt=45,d.RULE_ifBlock=46,d.RULE_elseIfBlock=47,d.RULE_elseBlock=48,d.RULE_braceBlock=49,d.RULE_loop=50,d.RULE_expr=51,d.RULE_atom=52,d.RULE_parExpr=53,d.RULE_condition=54,d.RULE_inExpr=55;class yo extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_prog}EOF(){return this.getToken(d.EOF,0)}title(){return this.getTypedRuleContext(He,0)}head(){return this.getTypedRuleContext($e,0)}block(){return this.getTypedRuleContext(Y8,0)}enterRule(e){e instanceof E&&e.enterProg(this)}exitRule(e){e instanceof E&&e.exitProg(this)}}class He extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_title}TITLE(){return this.getToken(d.TITLE,0)}TITLE_CONTENT(){return this.getToken(d.TITLE_CONTENT,0)}TITLE_END(){return this.getToken(d.TITLE_END,0)}enterRule(e){e instanceof E&&e.enterTitle(this)}exitRule(e){e instanceof E&&e.exitTitle(this)}}class $e extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"group",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(K8):this.getTypedRuleContext(K8,n)});i2(this,"participant",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(f0):this.getTypedRuleContext(f0,n)});this.parser=n,this.ruleIndex=d.RULE_head}starterExp(){return this.getTypedRuleContext(Ve,0)}enterRule(n){n instanceof E&&n.enterHead(this)}exitRule(n){n instanceof E&&n.exitHead(this)}}class K8 extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"participant",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(f0):this.getTypedRuleContext(f0,n)});this.parser=n,this.ruleIndex=d.RULE_group}GROUP(){return this.getToken(d.GROUP,0)}OBRACE(){return this.getToken(d.OBRACE,0)}CBRACE(){return this.getToken(d.CBRACE,0)}name(){return this.getTypedRuleContext(G4,0)}enterRule(n){n instanceof E&&n.enterGroup(this)}exitRule(n){n instanceof E&&n.exitGroup(this)}}class Ve extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_starterExp}STARTER_LXR(){return this.getToken(d.STARTER_LXR,0)}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}starter(){return this.getTypedRuleContext(Ge,0)}ANNOTATION(){return this.getToken(d.ANNOTATION,0)}enterRule(e){e instanceof E&&e.enterStarterExp(this)}exitRule(e){e instanceof E&&e.exitStarterExp(this)}}class Ge extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_starter}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterStarter(this)}exitRule(e){e instanceof E&&e.exitStarter(this)}}class f0 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_participant}name(){return this.getTypedRuleContext(G4,0)}participantType(){return this.getTypedRuleContext(Ke,0)}stereotype(){return this.getTypedRuleContext(je,0)}width(){return this.getTypedRuleContext(Ye,0)}label(){return this.getTypedRuleContext(qe,0)}COLOR(){return this.getToken(d.COLOR,0)}enterRule(e){e instanceof E&&e.enterParticipant(this)}exitRule(e){e instanceof E&&e.exitParticipant(this)}}class je extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_stereotype}SOPEN(){return this.getToken(d.SOPEN,0)}name(){return this.getTypedRuleContext(G4,0)}SCLOSE(){return this.getToken(d.SCLOSE,0)}GT(){return this.getToken(d.GT,0)}LT(){return this.getToken(d.LT,0)}enterRule(e){e instanceof E&&e.enterStereotype(this)}exitRule(e){e instanceof E&&e.exitStereotype(this)}}class qe extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_label}AS(){return this.getToken(d.AS,0)}name(){return this.getTypedRuleContext(G4,0)}enterRule(e){e instanceof E&&e.enterLabel(this)}exitRule(e){e instanceof E&&e.exitLabel(this)}}class Ke extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_participantType}ANNOTATION(){return this.getToken(d.ANNOTATION,0)}enterRule(e){e instanceof E&&e.enterParticipantType(this)}exitRule(e){e instanceof E&&e.exitParticipantType(this)}}class G4 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_name}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterName(this)}exitRule(e){e instanceof E&&e.exitName(this)}}class Ye extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_width}INT(){return this.getToken(d.INT,0)}enterRule(e){e instanceof E&&e.enterWidth(this)}exitRule(e){e instanceof E&&e.exitWidth(this)}}class Y8 extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"stat",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(X8):this.getTypedRuleContext(X8,n)});this.parser=n,this.ruleIndex=d.RULE_block}enterRule(n){n instanceof E&&n.enterBlock(this)}exitRule(n){n instanceof E&&n.exitBlock(this)}}class Xe extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_ret}RETURN(){return this.getToken(d.RETURN,0)}expr(){return this.getTypedRuleContext(b2,0)}SCOL(){return this.getToken(d.SCOL,0)}ANNOTATION_RET(){return this.getToken(d.ANNOTATION_RET,0)}asyncMessage(){return this.getTypedRuleContext(i7,0)}EVENT_END(){return this.getToken(d.EVENT_END,0)}enterRule(e){e instanceof E&&e.enterRet(this)}exitRule(e){e instanceof E&&e.exitRet(this)}}class Qe extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_divider}dividerNote(){return this.getTypedRuleContext(Je,0)}enterRule(e){e instanceof E&&e.enterDivider(this)}exitRule(e){e instanceof E&&e.exitDivider(this)}}class Je extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_dividerNote}DIVIDER(){return this.getToken(d.DIVIDER,0)}enterRule(e){e instanceof E&&e.enterDividerNote(this)}exitRule(e){e instanceof E&&e.exitDividerNote(this)}}class X8 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_stat,this._OTHER=null}alt(){return this.getTypedRuleContext(gt,0)}par(){return this.getTypedRuleContext(et,0)}opt(){return this.getTypedRuleContext(tt,0)}critical(){return this.getTypedRuleContext(nt,0)}section(){return this.getTypedRuleContext(it,0)}ref(){return this.getTypedRuleContext(st,0)}loop(){return this.getTypedRuleContext(wt,0)}creation(){return this.getTypedRuleContext(Q8,0)}message(){return this.getTypedRuleContext(ot,0)}asyncMessage(){return this.getTypedRuleContext(i7,0)}EVENT_END(){return this.getToken(d.EVENT_END,0)}ret(){return this.getTypedRuleContext(Xe,0)}divider(){return this.getTypedRuleContext(Qe,0)}tcf(){return this.getTypedRuleContext(ht,0)}OTHER(){return this.getToken(d.OTHER,0)}enterRule(e){e instanceof E&&e.enterStat(this)}exitRule(e){e instanceof E&&e.exitStat(this)}}class et extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_par}PAR(){return this.getToken(d.PAR,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterPar(this)}exitRule(e){e instanceof E&&e.exitPar(this)}}class tt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_opt}OPT(){return this.getToken(d.OPT,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterOpt(this)}exitRule(e){e instanceof E&&e.exitOpt(this)}}class nt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_critical}CRITICAL(){return this.getToken(d.CRITICAL,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}atom(){return this.getTypedRuleContext(I3,0)}enterRule(e){e instanceof E&&e.enterCritical(this)}exitRule(e){e instanceof E&&e.exitCritical(this)}}class it extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_section}SECTION(){return this.getToken(d.SECTION,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}atom(){return this.getTypedRuleContext(I3,0)}enterRule(e){e instanceof E&&e.enterSection(this)}exitRule(e){e instanceof E&&e.exitSection(this)}}class Q8 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_creation}creationBody(){return this.getTypedRuleContext(rt,0)}SCOL(){return this.getToken(d.SCOL,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterCreation(this)}exitRule(e){e instanceof E&&e.exitCreation(this)}}class st extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"name",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(G4):this.getTypedRuleContext(G4,n)});i2(this,"COMMA",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.COMMA):this.getToken(d.COMMA,n)});this.parser=n,this.ruleIndex=d.RULE_ref}REF(){return this.getToken(d.REF,0)}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}SCOL(){return this.getToken(d.SCOL,0)}enterRule(n){n instanceof E&&n.enterRef(this)}exitRule(n){n instanceof E&&n.exitRef(this)}}class rt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_creationBody}NEW(){return this.getToken(d.NEW,0)}construct(){return this.getTypedRuleContext(at,0)}assignment(){return this.getTypedRuleContext(h5,0)}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}parameters(){return this.getTypedRuleContext(r7,0)}enterRule(e){e instanceof E&&e.enterCreationBody(this)}exitRule(e){e instanceof E&&e.exitCreationBody(this)}}class ot extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_message}messageBody(){return this.getTypedRuleContext(lt,0)}SCOL(){return this.getToken(d.SCOL,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterMessage(this)}exitRule(e){e instanceof E&&e.exitMessage(this)}}class lt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_messageBody}func(){return this.getTypedRuleContext(J8,0)}assignment(){return this.getTypedRuleContext(h5,0)}to(){return this.getTypedRuleContext(u5,0)}DOT(){return this.getToken(d.DOT,0)}from(){return this.getTypedRuleContext(e7,0)}ARROW(){return this.getToken(d.ARROW,0)}enterRule(e){e instanceof E&&e.enterMessageBody(this)}exitRule(e){e instanceof E&&e.exitMessageBody(this)}}class J8 extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"signature",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(t7):this.getTypedRuleContext(t7,n)});i2(this,"DOT",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.DOT):this.getToken(d.DOT,n)});this.parser=n,this.ruleIndex=d.RULE_func}enterRule(n){n instanceof E&&n.enterFunc(this)}exitRule(n){n instanceof E&&n.exitFunc(this)}}class e7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_from}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterFrom(this)}exitRule(e){e instanceof E&&e.exitFrom(this)}}class u5 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_to}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterTo(this)}exitRule(e){e instanceof E&&e.exitTo(this)}}class t7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_signature}methodName(){return this.getTypedRuleContext(Ct,0)}invocation(){return this.getTypedRuleContext(n7,0)}enterRule(e){e instanceof E&&e.enterSignature(this)}exitRule(e){e instanceof E&&e.exitSignature(this)}}class n7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_invocation}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}parameters(){return this.getTypedRuleContext(r7,0)}enterRule(e){e instanceof E&&e.enterInvocation(this)}exitRule(e){e instanceof E&&e.exitInvocation(this)}}class h5 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_assignment}assignee(){return this.getTypedRuleContext(ct,0)}ASSIGN(){return this.getToken(d.ASSIGN,0)}type(){return this.getTypedRuleContext(s7,0)}enterRule(e){e instanceof E&&e.enterAssignment(this)}exitRule(e){e instanceof E&&e.exitAssignment(this)}}class i7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_asyncMessage}to(){return this.getTypedRuleContext(u5,0)}COL(){return this.getToken(d.COL,0)}from(){return this.getTypedRuleContext(e7,0)}ARROW(){return this.getToken(d.ARROW,0)}content(){return this.getTypedRuleContext(Lt,0)}MINUS(){return this.getToken(d.MINUS,0)}enterRule(e){e instanceof E&&e.enterAsyncMessage(this)}exitRule(e){e instanceof E&&e.exitAsyncMessage(this)}}class Lt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_content}EVENT_PAYLOAD_LXR(){return this.getToken(d.EVENT_PAYLOAD_LXR,0)}enterRule(e){e instanceof E&&e.enterContent(this)}exitRule(e){e instanceof E&&e.exitContent(this)}}class at extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_construct}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterConstruct(this)}exitRule(e){e instanceof E&&e.exitConstruct(this)}}class s7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_type}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterType(this)}exitRule(e){e instanceof E&&e.exitType(this)}}class ct extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"ID",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.ID):this.getToken(d.ID,n)});i2(this,"COMMA",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.COMMA):this.getToken(d.COMMA,n)});this.parser=n,this.ruleIndex=d.RULE_assignee}atom(){return this.getTypedRuleContext(I3,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(n){n instanceof E&&n.enterAssignee(this)}exitRule(n){n instanceof E&&n.exitAssignee(this)}}class Ct extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_methodName}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterMethodName(this)}exitRule(e){e instanceof E&&e.exitMethodName(this)}}class r7 extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"parameter",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(o7):this.getTypedRuleContext(o7,n)});i2(this,"COMMA",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.COMMA):this.getToken(d.COMMA,n)});this.parser=n,this.ruleIndex=d.RULE_parameters}enterRule(n){n instanceof E&&n.enterParameters(this)}exitRule(n){n instanceof E&&n.exitParameters(this)}}class o7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_parameter}declaration(){return this.getTypedRuleContext(ut,0)}expr(){return this.getTypedRuleContext(b2,0)}enterRule(e){e instanceof E&&e.enterParameter(this)}exitRule(e){e instanceof E&&e.exitParameter(this)}}class ut extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_declaration}type(){return this.getTypedRuleContext(s7,0)}ID(){return this.getToken(d.ID,0)}enterRule(e){e instanceof E&&e.enterDeclaration(this)}exitRule(e){e instanceof E&&e.exitDeclaration(this)}}class ht extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"catchBlock",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(l7):this.getTypedRuleContext(l7,n)});this.parser=n,this.ruleIndex=d.RULE_tcf}tryBlock(){return this.getTypedRuleContext(dt,0)}finallyBlock(){return this.getTypedRuleContext(ft,0)}enterRule(n){n instanceof E&&n.enterTcf(this)}exitRule(n){n instanceof E&&n.exitTcf(this)}}class dt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_tryBlock}TRY(){return this.getToken(d.TRY,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterTryBlock(this)}exitRule(e){e instanceof E&&e.exitTryBlock(this)}}class l7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_catchBlock}CATCH(){return this.getToken(d.CATCH,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}invocation(){return this.getTypedRuleContext(n7,0)}enterRule(e){e instanceof E&&e.enterCatchBlock(this)}exitRule(e){e instanceof E&&e.exitCatchBlock(this)}}class ft extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_finallyBlock}FINALLY(){return this.getToken(d.FINALLY,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterFinallyBlock(this)}exitRule(e){e instanceof E&&e.exitFinallyBlock(this)}}class gt extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"elseIfBlock",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(L7):this.getTypedRuleContext(L7,n)});this.parser=n,this.ruleIndex=d.RULE_alt}ifBlock(){return this.getTypedRuleContext(pt,0)}elseBlock(){return this.getTypedRuleContext(mt,0)}enterRule(n){n instanceof E&&n.enterAlt(this)}exitRule(n){n instanceof E&&n.exitAlt(this)}}class pt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_ifBlock}IF(){return this.getToken(d.IF,0)}parExpr(){return this.getTypedRuleContext(d5,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterIfBlock(this)}exitRule(e){e instanceof E&&e.exitIfBlock(this)}}class L7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_elseIfBlock}ELSE(){return this.getToken(d.ELSE,0)}IF(){return this.getToken(d.IF,0)}parExpr(){return this.getTypedRuleContext(d5,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterElseIfBlock(this)}exitRule(e){e instanceof E&&e.exitElseIfBlock(this)}}class mt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_elseBlock}ELSE(){return this.getToken(d.ELSE,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterElseBlock(this)}exitRule(e){e instanceof E&&e.exitElseBlock(this)}}class Y1 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_braceBlock}OBRACE(){return this.getToken(d.OBRACE,0)}CBRACE(){return this.getToken(d.CBRACE,0)}block(){return this.getTypedRuleContext(Y8,0)}enterRule(e){e instanceof E&&e.enterBraceBlock(this)}exitRule(e){e instanceof E&&e.exitBraceBlock(this)}}class wt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_loop}WHILE(){return this.getToken(d.WHILE,0)}parExpr(){return this.getTypedRuleContext(d5,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterLoop(this)}exitRule(e){e instanceof E&&e.exitLoop(this)}}class b2 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_expr}copyFrom(e){super.copyFrom(e)}}class Ro extends b2{constructor(e,n){super(e),super.copyFrom(n)}assignment(){return this.getTypedRuleContext(h5,0)}expr(){return this.getTypedRuleContext(b2,0)}enterRule(e){e instanceof E&&e.enterAssignmentExpr(this)}exitRule(e){e instanceof E&&e.exitAssignmentExpr(this)}}d.AssignmentExprContext=Ro;class Ao extends b2{constructor(e,n){super(e),super.copyFrom(n)}func(){return this.getTypedRuleContext(J8,0)}to(){return this.getTypedRuleContext(u5,0)}DOT(){return this.getToken(d.DOT,0)}enterRule(e){e instanceof E&&e.enterFuncExpr(this)}exitRule(e){e instanceof E&&e.exitFuncExpr(this)}}d.FuncExprContext=Ao;class ko extends b2{constructor(e,n){super(e),super.copyFrom(n)}atom(){return this.getTypedRuleContext(I3,0)}enterRule(e){e instanceof E&&e.enterAtomExpr(this)}exitRule(e){e instanceof E&&e.exitAtomExpr(this)}}d.AtomExprContext=ko;class Zo extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});super.copyFrom(i)}OR(){return this.getToken(d.OR,0)}enterRule(n){n instanceof E&&n.enterOrExpr(this)}exitRule(n){n instanceof E&&n.exitOrExpr(this)}}d.OrExprContext=Zo;class To extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});this.op=null,super.copyFrom(i)}PLUS(){return this.getToken(d.PLUS,0)}MINUS(){return this.getToken(d.MINUS,0)}enterRule(n){n instanceof E&&n.enterAdditiveExpr(this)}exitRule(n){n instanceof E&&n.exitAdditiveExpr(this)}}d.AdditiveExprContext=To;class So extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});this.op=null,super.copyFrom(i)}LTEQ(){return this.getToken(d.LTEQ,0)}GTEQ(){return this.getToken(d.GTEQ,0)}LT(){return this.getToken(d.LT,0)}GT(){return this.getToken(d.GT,0)}enterRule(n){n instanceof E&&n.enterRelationalExpr(this)}exitRule(n){n instanceof E&&n.exitRelationalExpr(this)}}d.RelationalExprContext=So;class bo extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});super.copyFrom(i)}PLUS(){return this.getToken(d.PLUS,0)}enterRule(n){n instanceof E&&n.enterPlusExpr(this)}exitRule(n){n instanceof E&&n.exitPlusExpr(this)}}d.PlusExprContext=bo;class Eo extends b2{constructor(e,n){super(e),super.copyFrom(n)}NOT(){return this.getToken(d.NOT,0)}expr(){return this.getTypedRuleContext(b2,0)}enterRule(e){e instanceof E&&e.enterNotExpr(this)}exitRule(e){e instanceof E&&e.exitNotExpr(this)}}d.NotExprContext=Eo;class Io extends b2{constructor(e,n){super(e),super.copyFrom(n)}MINUS(){return this.getToken(d.MINUS,0)}expr(){return this.getTypedRuleContext(b2,0)}enterRule(e){e instanceof E&&e.enterUnaryMinusExpr(this)}exitRule(e){e instanceof E&&e.exitUnaryMinusExpr(this)}}d.UnaryMinusExprContext=Io;class Fo extends b2{constructor(e,n){super(e),super.copyFrom(n)}creation(){return this.getTypedRuleContext(Q8,0)}enterRule(e){e instanceof E&&e.enterCreationExpr(this)}exitRule(e){e instanceof E&&e.exitCreationExpr(this)}}d.CreationExprContext=Fo;class Oo extends b2{constructor(e,n){super(e),super.copyFrom(n)}OPAR(){return this.getToken(d.OPAR,0)}expr(){return this.getTypedRuleContext(b2,0)}CPAR(){return this.getToken(d.CPAR,0)}enterRule(e){e instanceof E&&e.enterParenthesizedExpr(this)}exitRule(e){e instanceof E&&e.exitParenthesizedExpr(this)}}d.ParenthesizedExprContext=Oo;class No extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});this.op=null,super.copyFrom(i)}MULT(){return this.getToken(d.MULT,0)}DIV(){return this.getToken(d.DIV,0)}MOD(){return this.getToken(d.MOD,0)}enterRule(n){n instanceof E&&n.enterMultiplicationExpr(this)}exitRule(n){n instanceof E&&n.exitMultiplicationExpr(this)}}d.MultiplicationExprContext=No;class Do extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});this.op=null,super.copyFrom(i)}EQ(){return this.getToken(d.EQ,0)}NEQ(){return this.getToken(d.NEQ,0)}enterRule(n){n instanceof E&&n.enterEqualityExpr(this)}exitRule(n){n instanceof E&&n.exitEqualityExpr(this)}}d.EqualityExprContext=Do;class Po extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});super.copyFrom(i)}AND(){return this.getToken(d.AND,0)}enterRule(n){n instanceof E&&n.enterAndExpr(this)}exitRule(n){n instanceof E&&n.exitAndExpr(this)}}d.AndExprContext=Po;class I3 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_atom}copyFrom(e){super.copyFrom(e)}}class Bo extends I3{constructor(e,n){super(e),super.copyFrom(n)}TRUE(){return this.getToken(d.TRUE,0)}FALSE(){return this.getToken(d.FALSE,0)}enterRule(e){e instanceof E&&e.enterBooleanAtom(this)}exitRule(e){e instanceof E&&e.exitBooleanAtom(this)}}d.BooleanAtomContext=Bo;class zo extends I3{constructor(e,n){super(e),super.copyFrom(n)}ID(){return this.getToken(d.ID,0)}enterRule(e){e instanceof E&&e.enterIdAtom(this)}exitRule(e){e instanceof E&&e.exitIdAtom(this)}}d.IdAtomContext=zo;class Uo extends I3{constructor(e,n){super(e),super.copyFrom(n)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterStringAtom(this)}exitRule(e){e instanceof E&&e.exitStringAtom(this)}}d.StringAtomContext=Uo;class Wo extends I3{constructor(e,n){super(e),super.copyFrom(n)}NIL(){return this.getToken(d.NIL,0)}enterRule(e){e instanceof E&&e.enterNilAtom(this)}exitRule(e){e instanceof E&&e.exitNilAtom(this)}}d.NilAtomContext=Wo;class Ho extends I3{constructor(e,n){super(e),super.copyFrom(n)}INT(){return this.getToken(d.INT,0)}FLOAT(){return this.getToken(d.FLOAT,0)}enterRule(e){e instanceof E&&e.enterNumberAtom(this)}exitRule(e){e instanceof E&&e.exitNumberAtom(this)}}d.NumberAtomContext=Ho;class d5 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_parExpr}OPAR(){return this.getToken(d.OPAR,0)}condition(){return this.getTypedRuleContext(xt,0)}CPAR(){return this.getToken(d.CPAR,0)}enterRule(e){e instanceof E&&e.enterParExpr(this)}exitRule(e){e instanceof E&&e.exitParExpr(this)}}class xt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_condition}atom(){return this.getTypedRuleContext(I3,0)}expr(){return this.getTypedRuleContext(b2,0)}inExpr(){return this.getTypedRuleContext(_t,0)}enterRule(e){e instanceof E&&e.enterCondition(this)}exitRule(e){e instanceof E&&e.exitCondition(this)}}class _t extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"ID",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.ID):this.getToken(d.ID,n)});this.parser=n,this.ruleIndex=d.RULE_inExpr}IN(){return this.getToken(d.IN,0)}enterRule(n){n instanceof E&&n.enterInExpr(this)}exitRule(n){n instanceof E&&n.exitInExpr(this)}}d.ProgContext=yo,d.TitleContext=He,d.HeadContext=$e,d.GroupContext=K8,d.StarterExpContext=Ve,d.StarterContext=Ge,d.ParticipantContext=f0,d.StereotypeContext=je,d.LabelContext=qe,d.ParticipantTypeContext=Ke,d.NameContext=G4,d.WidthContext=Ye,d.BlockContext=Y8,d.RetContext=Xe,d.DividerContext=Qe,d.DividerNoteContext=Je,d.StatContext=X8,d.ParContext=et,d.OptContext=tt,d.CriticalContext=nt,d.SectionContext=it,d.CreationContext=Q8,d.RefContext=st,d.CreationBodyContext=rt,d.MessageContext=ot,d.MessageBodyContext=lt,d.FuncContext=J8,d.FromContext=e7,d.ToContext=u5,d.SignatureContext=t7,d.InvocationContext=n7,d.AssignmentContext=h5,d.AsyncMessageContext=i7,d.ContentContext=Lt,d.ConstructContext=at,d.TypeContext=s7,d.AssigneeContext=ct,d.MethodNameContext=Ct,d.ParametersContext=r7,d.ParameterContext=o7,d.DeclarationContext=ut,d.TcfContext=ht,d.TryBlockContext=dt,d.CatchBlockContext=l7,d.FinallyBlockContext=ft,d.AltContext=gt,d.IfBlockContext=pt,d.ElseIfBlockContext=L7,d.ElseBlockContext=mt,d.BraceBlockContext=Y1,d.LoopContext=wt,d.ExprContext=b2,d.AtomContext=I3,d.ParExprContext=d5,d.ConditionContext=xt,d.InExprContext=_t;class Jf{constructor(e,n){i2(this,"name");i2(this,"stereotype");i2(this,"width");i2(this,"groupId");i2(this,"explicit");i2(this,"isStarter");i2(this,"label");i2(this,"type");i2(this,"color");i2(this,"comment");i2(this,"assignee");i2(this,"positions",new Set);i2(this,"assigneePositions",new Set);this.name=e,this.mergeOptions(n)}mergeOptions(e){const{stereotype:n,width:i,groupId:s,label:r,explicit:o,isStarter:l,type:L,color:a,comment:c,assignee:C}=e;this.stereotype||(this.stereotype=n),this.width||(this.width=i),this.groupId||(this.groupId=s),this.explicit||(this.explicit=o),this.isStarter||(this.isStarter=l),this.label||(this.label=r),this.type||(this.type=L),this.color||(this.color=a),this.comment||(this.comment=c),this.assignee||(this.assignee=C)}Type(){var e;switch((e=this.type)==null?void 0:e.toLowerCase()){case"@actor":return 1;case"@boundary":return 2;case"@collection":return 3;case"@control":return 4;case"@database":return 5;case"@entity":return 6;case"@queue":return 7;case"@ec2":return 8;case"@ecs":return 9;case"@iam":return 10;case"@lambda":return 11;case"@rds":return 12;case"@s3":return 13}return 14}AddPosition(e){this.positions.add(e)}ToValue(){return{name:this.name,stereotype:this.stereotype,width:this.width,groupId:this.groupId,explicit:this.explicit,isStarter:this.isStarter,label:this.label,type:this.type,color:this.color,comment:this.comment,assignee:this.assignee,positions:this.positions,assigneePositions:this.assigneePositions}}}class eg{constructor(){i2(this,"participants",new Map)}Add(e,n={}){let i=this.Get(e);i?i==null||i.mergeOptions(n):(i=new Jf(e,n),this.participants.set(e,i));const{position:s,assigneePosition:r}=n;s&&i.AddPosition(s),r&&i.assigneePositions.add(r)}ImplicitArray(){return this.Array().filter(e=>{var n;return!((n=this.Get(e.name))!=null&&n.explicit)&&!e.isStarter})}Array(){return Array.from(this.participants.entries()).map(e=>e[1])}Names(){return Array.from(this.participants.keys())}First(){return this.participants.values().next().value}Get(e){return this.participants.get(e)}Size(){return this.participants.size}Starter(){const e=this.First();return e!=null&&e.isStarter?e:void 0}GetPositions(e){var n;return(n=this.participants.get(e))==null?void 0:n.positions}GetAssigneePositions(e){var n;return(n=this.participants.get(e))==null?void 0:n.assigneePositions}}const tg=d.ProgContext;let X1,Z9=!1,vt;const Q1=new E,ng=function(t){var h,f,w,_,p,g;if(Z9)return;const e=(h=t==null?void 0:t.participantType())==null?void 0:h.getFormattedText().replace("@",""),n=((f=t==null?void 0:t.name())==null?void 0:f.getFormattedText())||"Missing `Participant`",i=(_=(w=t.stereotype())==null?void 0:w.name())==null?void 0:_.getFormattedText(),s=t.width&&t.width()&&Number.parseInt(t.width().getText())||void 0,r=t.label&&t.label(),o=(p=r==null?void 0:r.name())==null?void 0:p.getFormattedText(),l=!0,L=(g=t.COLOR())==null?void 0:g.getText(),a=t.getComment(),c=t.name();let C,u;if(r){const m=r.name();m&&(C=m.start.start,u=m.stop.stop+1)}else c&&(C=c.start.start,u=c.stop.stop+1);X1.Add(n,{isStarter:!1,type:e,stereotype:i,width:s,groupId:vt,label:o,explicit:l,color:L,comment:a,position:[C,u]})};Q1.enterParticipant=ng;const $o=function(t){if(Z9)return;let e=t.getFormattedText();const n=X1.Get(e);if(n!=null&&n.label)X1.Add(e,{isStarter:!1});else if(n!=null&&n.assignee){const s=[t.start.start+n.assignee.length+2,t.stop.stop],r=[t.start.start+1,t.start.start+n.assignee.length+1];X1.Add(e,{isStarter:!1,position:s,assigneePosition:r})}else X1.Add(e,{isStarter:!1,position:[t.start.start,t.stop.stop+1]})};Q1.enterFrom=$o,Q1.enterTo=$o,Q1.enterStarter=function(t){let e=t.getFormattedText();X1.Add(e,{isStarter:!0,position:[t.start.start,t.stop.stop+1]})},Q1.enterCreation=function(t){var s;if(Z9)return;const e=t.Owner(),n=(s=t==null?void 0:t.creationBody())==null?void 0:s.construct(),i=X1.Get(e);if(n&&!(i!=null&&i.label)){const r=t.Assignee(),o=t.AssigneePosition();X1.Add(e,{isStarter:!1,position:[n.start.start,n.stop.stop+1],assignee:r,assigneePosition:o})}else X1.Add(e,{isStarter:!1})},Q1.enterRef=function(t){t.Participants().forEach(e=>{X1.Add(e.getText(),{isStarter:!1,position:[e.start.start,e.stop.stop+1]})})},Q1.enterParameters=function(){Z9=!0},Q1.exitParameters=function(){Z9=!1},Q1.enterCondition=function(){Z9=!0},Q1.exitCondition=function(){Z9=!1},Q1.enterGroup=function(t){var e;vt=(e=t.name())==null?void 0:e.getFormattedText()},Q1.exitGroup=function(){vt=void 0},Q1.enterRet=function(t){t.asyncMessage()||(X1.Add(t.From()),X1.Add(t.ReturnTo()))};const ig=T.tree.ParseTreeWalker.DEFAULT;Q1.getParticipants=function(t,e){return X1=new eg,e&&t instanceof tg&&X1.Add(t.Starter(),{isStarter:!0}),ig.walk(this,t),X1};const sg=T.tree.ParseTreeWalker.DEFAULT;let J1=new E,p1=0,P1=0;J1.enterTcf=function(){p1++},J1.enterOpt=function(){p1++},J1.enterPar=function(){p1++},J1.enterAlt=function(){p1++},J1.enterLoop=function(){p1++},J1.enterSection=function(){p1++},J1.enterCritical=function(){p1++},J1.exitTcf=function(){P1=Math.max(P1,p1),p1--},J1.exitOpt=function(){P1=Math.max(P1,p1),p1--},J1.exitPar=function(){P1=Math.max(P1,p1),p1--},J1.exitAlt=function(){P1=Math.max(P1,p1),p1--},J1.exitLoop=function(){P1=Math.max(P1,p1),p1--},J1.exitSection=function(){P1=Math.max(P1,p1),p1--},J1.exitCritical=function(){P1=Math.max(P1,p1),p1--},J1.depth=function(t){return function(e){return p1=0,P1=0,e.children.map(function(n){sg.walk(t,n)}),P1}};const rg=d.TitleContext;rg.prototype.content=function(){return this.children.length<2?"":this.children[1].getText().trim()};const Vo=d,Mt=Vo.CreationContext;Mt.prototype.Body=Mt.prototype.creationBody,Mt.prototype.isCurrent=function(t){return Go.bind(this)(t)};const yt=Vo.MessageContext;yt.prototype.Body=yt.prototype.messageBody,yt.prototype.isCurrent=function(t){return Go.bind(this)(t)};function Go(t){try{if(t==null)return!1;const e=this.start.start,n=this.Body().stop.stop+1;return t>=e&&t<=n}catch{return!1}}const Rt=d,g0=Rt.CreationContext,At=Rt.MessageContext,jo=Rt.AsyncMessageContext;g0.prototype.Assignee=function(){var t,e,n;return(n=(e=(t=this.creationBody())==null?void 0:t.assignment())==null?void 0:e.assignee())==null?void 0:n.getFormattedText()},g0.prototype.AssigneePosition=function(){var e,n;const t=(n=(e=this.creationBody())==null?void 0:e.assignment())==null?void 0:n.assignee();if(!!t)return[t.start.start,t.stop.stop+1]},g0.prototype.Constructor=function(){var t,e;return(e=(t=this.creationBody())==null?void 0:t.construct())==null?void 0:e.getFormattedText()},g0.prototype.To=function(){return this.Constructor()},g0.prototype.Owner=function(){if(!this.Constructor())return"Missing Constructor";const t=this.Assignee(),e=this.Constructor();return t?`${t}:${e}`:e},At.prototype.To=function(){var t,e;return(e=(t=this.messageBody())==null?void 0:t.to())==null?void 0:e.getFormattedText()},At.prototype.Owner=function(){return this.To()||qo(this.parentCtx)};function qo(t){for(;t;){if(t instanceof g0||t instanceof At)return t.Owner();t=t.parentCtx}}jo.prototype.To=function(){var t;return(t=this.to())==null?void 0:t.getFormattedText()},jo.prototype.Owner=function(){return this.To()||qo(this.parentCtx)};const og=d.ProgContext;og.prototype.Starter=function(){var r,o,l,L,a,c,C,u,h,f,w,_;const t=(l=(o=(r=this.head())==null?void 0:r.starterExp())==null?void 0:o.starter())==null?void 0:l.getFormattedText();let e,n,i;const s=(L=this.block())==null?void 0:L.stat();if(s&&s[0]){const p=(C=(c=(a=s[0].message())==null?void 0:a.messageBody())==null?void 0:c.from())==null?void 0:C.getFormattedText(),g=(h=(u=s[0].asyncMessage())==null?void 0:u.from())==null?void 0:h.getFormattedText();e=p||g}else{const p=(f=this.head())==null?void 0:f.children;if(p&&p[0]){const g=p[0];if(g instanceof d.ParticipantContext&&(n=(w=g.name())==null?void 0:w.getFormattedText()),g instanceof d.GroupContext){const m=g.participant();m&&m[0]&&(i=(_=m[0].name())==null?void 0:_.getFormattedText())}}}return t||e||n||i||"_STARTER_"};const a7=d,lg=a7.RetContext,Ko=a7.ProgContext,Yo=a7.MessageContext,Lg=a7.CreationContext;lg.prototype.ReturnTo=function(){var i,s;const n=this.parentCtx.parentCtx.parentCtx;if(n instanceof Ko)return n.Starter();{let r=n;for(;r&&!(r instanceof Yo)&&!(r instanceof Lg);){if(r instanceof Ko)return r.Starter();r=r.parentCtx}return r instanceof Yo&&((s=(i=r.messageBody())==null?void 0:i.from())==null?void 0:s.getFormattedText())||r.ClosestAncestorStat().Origin()}};const Xo=d.RefContext;Xo.prototype.Content=function(){return this.name()[0]},Xo.prototype.Participants=function(){var t;return(t=this.name().slice(1))!=null?t:[]};const ag=T.ParserRuleContext,Qo=d.StatContext,kt=d.ProgContext,cg=d.MessageContext,Cg=d.CreationContext;ag.prototype.Origin=function(){let t=this.parentCtx;for(;t&&!(t instanceof Qo||t instanceof kt);)t=this.parentCtx;return t.Origin()},Qo.prototype.Origin=function(){let t=this.parentCtx;for(;t;){if(t instanceof kt)return t.Starter();if(t instanceof cg||t instanceof Cg){const e=t.Owner();if(e)return e}t=t.parentCtx}},kt.prototype.Origin=function(){return this.Starter()};const ug=d.DividerContext;ug.prototype.Note=function(){var e;const t=(e=this.dividerNote())==null?void 0:e.getFormattedText().trim();if(!t.startsWith("=="))throw new Error("Divider note must start with ==");return t==null?void 0:t.replace(/^=+|=+$/g,"")};const Zt=d,hg=Zt.MessageContext,dg=Zt.AsyncMessageContext,Jo=Zt.CreationContext;hg.prototype.SignatureText=function(){var t,e,n;return(n=(e=(t=this.messageBody())==null?void 0:t.func())==null?void 0:e.signature())==null?void 0:n.map(i=>i==null?void 0:i.getFormattedText()).join(".")},dg.prototype.SignatureText=function(){var t;return(t=this.content())==null?void 0:t.getFormattedText()},Jo.prototype.SignatureText=function(){var n;const t=this.creationBody().parameters();return"\xAB"+(((n=t==null?void 0:t.parameter())==null?void 0:n.length)>0?t.getFormattedText():"create")+"\xBB"},Jo.prototype.isParamValid=function(){var t,e;return((e=(t=this.creationBody().parameters())==null?void 0:t.parameter())==null?void 0:e.length)>0};const fg=d.MessageContext;class gg{constructor(e,n){i2(this,"assignee");i2(this,"type");if(n&&!e)throw new Error("assignee must be defined if type is defined");this.assignee=e||"",this.type=n||""}getText(){return[this.assignee,this.type].filter(Boolean).join(":")}}fg.prototype.Assignment=function(){var i,s;const t=this.messageBody().assignment(),e=(i=t==null?void 0:t.assignee())==null?void 0:i.getFormattedText(),n=(s=t==null?void 0:t.type())==null?void 0:s.getFormattedText();if(e)return new gg(e,n)};const f5=d,pg=f5.CreationContext,mg=f5.StatContext,el=f5.MessageContext,wg=f5.AsyncMessageContext,xg=f5.RetContext;pg.prototype.From=function(){if(this.parentCtx instanceof mg)return this.ClosestAncestorStat().Origin()},el.prototype.ProvidedFrom=function(){var t,e;return(e=(t=this.messageBody())==null?void 0:t.from())==null?void 0:e.getFormattedText()},el.prototype.From=function(){return this.ProvidedFrom()||this.ClosestAncestorStat().Origin()},wg.prototype.From=function(){return this.from()?this.from().getFormattedText():this.ClosestAncestorStat().Origin()},xg.prototype.From=function(){return this.ClosestAncestorStat().Origin()},T.ParserRuleContext.prototype.Key=function(){return`${this.start.start}:${this.stop.stop}`};const tl=d,nl=tl.StatContext;T.ParserRuleContext.prototype.ClosestAncestorStat=function(){let t=this;for(;!(t instanceof nl);)t=t.parentCtx;if(t instanceof nl)return t},T.ParserRuleContext.prototype.ClosestAncestorBlock=function(){var e;const t=(e=this.ClosestAncestorStat())==null?void 0:e.parentCtx;if(t instanceof tl.BlockContext)return t;console.warn("Cannot find closest ancestor block for context:",this)};function _g(t,e){switch(t){case 0:return function(){return e.apply(this,arguments)};case 1:return function(n){return e.apply(this,arguments)};case 2:return function(n,i){return e.apply(this,arguments)};case 3:return function(n,i,s){return e.apply(this,arguments)};case 4:return function(n,i,s,r){return e.apply(this,arguments)};case 5:return function(n,i,s,r,o){return e.apply(this,arguments)};case 6:return function(n,i,s,r,o,l){return e.apply(this,arguments)};case 7:return function(n,i,s,r,o,l,L){return e.apply(this,arguments)};case 8:return function(n,i,s,r,o,l,L,a){return e.apply(this,arguments)};case 9:return function(n,i,s,r,o,l,L,a,c){return e.apply(this,arguments)};case 10:return function(n,i,s,r,o,l,L,a,c,C){return e.apply(this,arguments)};default:throw new Error("First argument to _arity must be a non-negative integer no greater than ten")}}var il=_g;function vg(t,e){return function(){return e.call(this,t.apply(this,arguments))}}var Mg=vg;function yg(t){return t!=null&&typeof t=="object"&&t["@@functional/placeholder"]===!0}var Tt=yg,Rg=Tt;function Ag(t){return function e(n){return arguments.length===0||Rg(n)?e:t.apply(this,arguments)}}var c7=Ag,St=c7,g5=Tt;function kg(t){return function e(n,i){switch(arguments.length){case 0:return e;case 1:return g5(n)?e:St(function(s){return t(n,s)});default:return g5(n)&&g5(i)?e:g5(n)?St(function(s){return t(s,i)}):g5(i)?St(function(s){return t(n,s)}):t(n,i)}}}var sl=kg,C7=c7,p0=sl,b1=Tt;function Zg(t){return function e(n,i,s){switch(arguments.length){case 0:return e;case 1:return b1(n)?e:p0(function(r,o){return t(n,r,o)});case 2:return b1(n)&&b1(i)?e:b1(n)?p0(function(r,o){return t(r,i,o)}):b1(i)?p0(function(r,o){return t(n,r,o)}):C7(function(r){return t(n,i,r)});default:return b1(n)&&b1(i)&&b1(s)?e:b1(n)&&b1(i)?p0(function(r,o){return t(r,o,s)}):b1(n)&&b1(s)?p0(function(r,o){return t(r,i,o)}):b1(i)&&b1(s)?p0(function(r,o){return t(n,r,o)}):b1(n)?C7(function(r){return t(r,i,s)}):b1(i)?C7(function(r){return t(n,r,s)}):b1(s)?C7(function(r){return t(n,i,r)}):t(n,i,s)}}}var bt=Zg,rl=Array.isArray||function(e){return e!=null&&e.length>=0&&Object.prototype.toString.call(e)==="[object Array]"};function Tg(t){return Object.prototype.toString.call(t)==="[object String]"}var Sg=Tg,bg=c7,Eg=rl,Ig=Sg,Fg=bg(function(e){return Eg(e)?!0:!e||typeof e!="object"||Ig(e)?!1:e.length===0?!0:e.length>0?e.hasOwnProperty(0)&&e.hasOwnProperty(e.length-1):!1}),Og=Fg,Ng=function(){function t(e){this.f=e}return t.prototype["@@transducer/init"]=function(){throw new Error("init not implemented on XWrap")},t.prototype["@@transducer/result"]=function(e){return e},t.prototype["@@transducer/step"]=function(e,n){return this.f(e,n)},t}();function Dg(t){return new Ng(t)}var Pg=Dg,Bg=il,zg=sl,Ug=zg(function(e,n){return Bg(e.length,function(){return e.apply(n,arguments)})}),Wg=Ug,Hg=Og,$g=Pg,Vg=Wg;function Gg(t,e,n){for(var i=0,s=n.length;i<s;){if(e=t["@@transducer/step"](e,n[i]),e&&e["@@transducer/reduced"]){e=e["@@transducer/value"];break}i+=1}return t["@@transducer/result"](e)}function ol(t,e,n){for(var i=n.next();!i.done;){if(e=t["@@transducer/step"](e,i.value),e&&e["@@transducer/reduced"]){e=e["@@transducer/value"];break}i=n.next()}return t["@@transducer/result"](e)}function ll(t,e,n,i){return t["@@transducer/result"](n[i](Vg(t["@@transducer/step"],t),e))}var Ll=typeof Symbol<"u"?Symbol.iterator:"@@iterator";function jg(t,e,n){if(typeof t=="function"&&(t=$g(t)),Hg(n))return Gg(t,e,n);if(typeof n["fantasy-land/reduce"]=="function")return ll(t,e,n,"fantasy-land/reduce");if(n[Ll]!=null)return ol(t,e,n[Ll]());if(typeof n.next=="function")return ol(t,e,n);if(typeof n.reduce=="function")return ll(t,e,n,"reduce");throw new TypeError("reduce: list must be array or iterable")}var qg=jg,Kg=bt,Yg=qg,Xg=Kg(Yg),Qg=Xg,Jg=rl;function ep(t,e){return function(){var n=arguments.length;if(n===0)return e();var i=arguments[n-1];return Jg(i)||typeof i[t]!="function"?e.apply(this,arguments):i[t].apply(i,Array.prototype.slice.call(arguments,0,n-1))}}var al=ep,tp=al,np=bt,ip=np(tp("slice",function(e,n,i){return Array.prototype.slice.call(i,e,n)})),sp=ip,rp=al,op=c7,lp=sp,Lp=op(rp("tail",lp(1,1/0))),ap=Lp,cp=il,Cp=Mg,up=Qg,hp=ap;function dp(){if(arguments.length===0)throw new Error("pipe requires at least one argument");return cp(arguments[0].length,up(Cp,arguments[0],hp(arguments)))}var fp=dp;const gp=fp;var pp=bt,mp=pp(function(e,n,i){return i.replace(e,n)}),wp=mp;const m0=wp,xp=m0(/[\n\r]/g," "),_p=m0(/\s+/g," "),vp=m0(/\s*([,;.])\s*/g,"$1"),Mp=m0(/\s*(\()\s*|\s*(\))/g,"$1$2"),yp=m0(/\s+$/g,""),Rp=m0(/^"(.*)"$/,"$1"),cl=gp(xp,_p,vp,Mp,yp,Rp),Et=(t,e)=>{let n=e;for(t[n]===`
15
+ `))}}}return e.length===0?null:e}getEdgeLabel(e){return e===0?"EOF":this.literalNames!==null||this.symbolicNames!==null?this.literalNames[e-1]||this.symbolicNames[e-1]:String.fromCharCode(e-1)}getStateString(e){const n=(e.isAcceptState?":":"")+"s"+e.stateNumber+(e.requiresFullContext?"^":"");return e.isAcceptState?e.predicates!==null?n+"=>"+$4(e.predicates):n+"=>"+e.prediction.toString():n}}class po extends Ne{constructor(e){super(e,null)}getEdgeLabel(e){return"'"+String.fromCharCode(e)+"'"}}class Ef{constructor(e,n){if(n===void 0&&(n=0),this.atnStartState=e,this.decision=n,this._states=new v3,this.s0=null,this.precedenceDfa=!1,e instanceof R9&&e.isPrecedenceDecision){this.precedenceDfa=!0;const i=new k4(null,new K1);i.edges=[],i.isAcceptState=!1,i.requiresFullContext=!1,this.s0=i}}getPrecedenceStartState(e){if(!this.precedenceDfa)throw"Only precedence DFAs may contain a precedence start state.";return e<0||e>=this.s0.edges.length?null:this.s0.edges[e]||null}setPrecedenceStartState(e,n){if(!this.precedenceDfa)throw"Only precedence DFAs may contain a precedence start state.";e<0||(this.s0.edges[e]=n)}setPrecedenceDfa(e){if(this.precedenceDfa!==e){if(this._states=new v3,e){const n=new k4(null,new K1);n.edges=[],n.isAcceptState=!1,n.requiresFullContext=!1,this.s0=n}else this.s0=null;this.precedenceDfa=e}}sortedStates(){return this._states.values().sort(function(n,i){return n.stateNumber-i.stateNumber})}toString(e,n){return e=e||null,n=n||null,this.s0===null?"":new Ne(this,e,n).toString()}toLexerString(){return this.s0===null?"":new po(this).toString()}get states(){return this._states}}const If={DFA:Ef,DFASerializer:Ne,LexerDFASerializer:po,PredPrediction:go};class mo{visitTerminal(e){}visitErrorNode(e){}enterEveryRule(e){}exitEveryRule(e){}}class Ff{visit(e){return Array.isArray(e)?e.map(function(n){return n.accept(this)},this):e.accept(this)}visitChildren(e){return e.children?this.visit(e.children):null}visitTerminal(e){}visitErrorNode(e){}}class De{walk(e,n){if(n instanceof U8||n.isErrorNode!==void 0&&n.isErrorNode())e.visitErrorNode(n);else if(n instanceof R4)e.visitTerminal(n);else{this.enterRule(e,n);for(let s=0;s<n.getChildCount();s++){const r=n.getChild(s);this.walk(e,r)}this.exitRule(e,n)}}enterRule(e,n){const i=n.getRuleContext();e.enterEveryRule(i),i.enterRule(e)}exitRule(e,n){const i=n.getRuleContext();i.exitRule(e),e.exitEveryRule(i)}}De.DEFAULT=new De;const Of={Trees:s4,RuleNode:z8,ErrorNode:U8,TerminalNode:R4,ParseTreeListener:mo,ParseTreeVisitor:Ff,ParseTreeWalker:De};class C5 extends V4{constructor(e){super({message:"",recognizer:e,input:e.getInputStream(),ctx:e._ctx}),this.offendingToken=e.getCurrentToken()}}class wo extends V4{constructor(e,n,i){super({message:Nf(n,i||null),recognizer:e,input:e.getInputStream(),ctx:e._ctx});const r=e._interp.atn.states[e.state].transitions[0];r instanceof Co?(this.ruleIndex=r.ruleIndex,this.predicateIndex=r.predIndex):(this.ruleIndex=0,this.predicateIndex=0),this.predicate=n,this.offendingToken=e.getCurrentToken()}}function Nf(t,e){return e!==null?e:"failed predicate: {"+t+"}?"}class Df extends j8{constructor(e){super(),e=e||!0,this.exactOnly=e}reportAmbiguity(e,n,i,s,r,o,l){if(this.exactOnly&&!r)return;const L="reportAmbiguity d="+this.getDecisionDescription(e,n)+": ambigAlts="+this.getConflictingAlts(o,l)+", input='"+e.getTokenStream().getText(new q2(i,s))+"'";e.notifyErrorListeners(L)}reportAttemptingFullContext(e,n,i,s,r,o){const l="reportAttemptingFullContext d="+this.getDecisionDescription(e,n)+", input='"+e.getTokenStream().getText(new q2(i,s))+"'";e.notifyErrorListeners(l)}reportContextSensitivity(e,n,i,s,r,o){const l="reportContextSensitivity d="+this.getDecisionDescription(e,n)+", input='"+e.getTokenStream().getText(new q2(i,s))+"'";e.notifyErrorListeners(l)}getDecisionDescription(e,n){const i=n.decision,s=n.atnStartState.ruleIndex,r=e.ruleNames;if(s<0||s>=r.length)return""+i;const o=r[s]||null;return o===null||o.length===0?""+i:`${i} (${o})`}getConflictingAlts(e,n){if(e!==null)return e;const i=new o4;for(let s=0;s<n.items.length;s++)i.add(n.items[s].alt);return`{${i.values().join(", ")}}`}}class Pe extends Error{constructor(){super(),Error.captureStackTrace(this,Pe)}}class Pf{reset(e){}recoverInline(e){}recover(e,n){}sync(e){}inErrorRecoveryMode(e){}reportError(e){}}class Be extends Pf{constructor(){super(),this.errorRecoveryMode=!1,this.lastErrorIndex=-1,this.lastErrorStates=null,this.nextTokensContext=null,this.nextTokenState=0}reset(e){this.endErrorCondition(e)}beginErrorCondition(e){this.errorRecoveryMode=!0}inErrorRecoveryMode(e){return this.errorRecoveryMode}endErrorCondition(e){this.errorRecoveryMode=!1,this.lastErrorStates=null,this.lastErrorIndex=-1}reportMatch(e){this.endErrorCondition(e)}reportError(e,n){this.inErrorRecoveryMode(e)||(this.beginErrorCondition(e),n instanceof Oe?this.reportNoViableAlternative(e,n):n instanceof C5?this.reportInputMismatch(e,n):n instanceof wo?this.reportFailedPredicate(e,n):(console.log("unknown recognition error type: "+n.constructor.name),console.log(n.stack),e.notifyErrorListeners(n.getOffendingToken(),n.getMessage(),n)))}recover(e,n){this.lastErrorIndex===e.getInputStream().index&&this.lastErrorStates!==null&&this.lastErrorStates.indexOf(e.state)>=0&&e.consume(),this.lastErrorIndex=e._input.index,this.lastErrorStates===null&&(this.lastErrorStates=[]),this.lastErrorStates.push(e.state);const i=this.getErrorRecoverySet(e);this.consumeUntil(e,i)}sync(e){if(this.inErrorRecoveryMode(e))return;const n=e._interp.atn.states[e.state],i=e.getTokenStream().LA(1),s=e.atn.nextTokens(n);if(s.contains(i)){this.nextTokensContext=null,this.nextTokenState=p2.INVALID_STATE_NUMBER;return}else if(s.contains(Y.EPSILON)){this.nextTokensContext===null&&(this.nextTokensContext=e._ctx,this.nextTokensState=e._stateNumber);return}switch(n.stateType){case p2.BLOCK_START:case p2.STAR_BLOCK_START:case p2.PLUS_BLOCK_START:case p2.STAR_LOOP_ENTRY:if(this.singleTokenDeletion(e)!==null)return;throw new C5(e);case p2.PLUS_LOOP_BACK:case p2.STAR_LOOP_BACK:{this.reportUnwantedToken(e);const r=new E3;r.addSet(e.getExpectedTokens());const o=r.addSet(this.getErrorRecoverySet(e));this.consumeUntil(e,o)}break}}reportNoViableAlternative(e,n){const i=e.getTokenStream();let s;i!==null?n.startToken.type===Y.EOF?s="<EOF>":s=i.getText(new q2(n.startToken.tokenIndex,n.offendingToken.tokenIndex)):s="<unknown input>";const r="no viable alternative at input "+this.escapeWSAndQuote(s);e.notifyErrorListeners(r,n.offendingToken,n)}reportInputMismatch(e,n){const i="mismatched input "+this.getTokenErrorDisplay(n.offendingToken)+" expecting "+n.getExpectedTokens().toString(e.literalNames,e.symbolicNames);e.notifyErrorListeners(i,n.offendingToken,n)}reportFailedPredicate(e,n){const s="rule "+e.ruleNames[e._ctx.ruleIndex]+" "+n.message;e.notifyErrorListeners(s,n.offendingToken,n)}reportUnwantedToken(e){if(this.inErrorRecoveryMode(e))return;this.beginErrorCondition(e);const n=e.getCurrentToken(),i=this.getTokenErrorDisplay(n),s=this.getExpectedTokens(e),r="extraneous input "+i+" expecting "+s.toString(e.literalNames,e.symbolicNames);e.notifyErrorListeners(r,n,null)}reportMissingToken(e){if(this.inErrorRecoveryMode(e))return;this.beginErrorCondition(e);const n=e.getCurrentToken(),s="missing "+this.getExpectedTokens(e).toString(e.literalNames,e.symbolicNames)+" at "+this.getTokenErrorDisplay(n);e.notifyErrorListeners(s,n,null)}recoverInline(e){const n=this.singleTokenDeletion(e);if(n!==null)return e.consume(),n;if(this.singleTokenInsertion(e))return this.getMissingSymbol(e);throw new C5(e)}singleTokenInsertion(e){const n=e.getTokenStream().LA(1),i=e._interp.atn,r=i.states[e.state].transitions[0].target;return i.nextTokens(r,e._ctx).contains(n)?(this.reportMissingToken(e),!0):!1}singleTokenDeletion(e){const n=e.getTokenStream().LA(2);if(this.getExpectedTokens(e).contains(n)){this.reportUnwantedToken(e),e.consume();const s=e.getCurrentToken();return this.reportMatch(e),s}else return null}getMissingSymbol(e){const n=e.getCurrentToken(),s=this.getExpectedTokens(e).first();let r;s===Y.EOF?r="<missing EOF>":r="<missing "+e.literalNames[s]+">";let o=n;const l=e.getTokenStream().LT(-1);return o.type===Y.EOF&&l!==null&&(o=l),e.getTokenFactory().create(o.source,s,r,Y.DEFAULT_CHANNEL,-1,-1,o.line,o.column)}getExpectedTokens(e){return e.getExpectedTokens()}getTokenErrorDisplay(e){if(e===null)return"<no token>";let n=e.text;return n===null&&(e.type===Y.EOF?n="<EOF>":n="<"+e.type+">"),this.escapeWSAndQuote(n)}escapeWSAndQuote(e){return e=e.replace(/\n/g,"\\n"),e=e.replace(/\r/g,"\\r"),e=e.replace(/\t/g,"\\t"),"'"+e+"'"}getErrorRecoverySet(e){const n=e._interp.atn;let i=e._ctx;const s=new E3;for(;i!==null&&i.invokingState>=0;){const o=n.states[i.invokingState].transitions[0],l=n.nextTokens(o.followState);s.addSet(l),i=i.parentCtx}return s.removeOne(Y.EPSILON),s}consumeUntil(e,n){let i=e.getTokenStream().LA(1);for(;i!==Y.EOF&&!n.contains(i);)e.consume(),i=e.getTokenStream().LA(1)}}class Bf extends Be{constructor(){super()}recover(e,n){let i=e._ctx;for(;i!==null;)i.exception=n,i=i.parentCtx;throw new Pe(n)}recoverInline(e){this.recover(e,new C5(e))}sync(e){}}const zf={RecognitionException:V4,NoViableAltException:Oe,LexerNoViableAltException:Fe,InputMismatchException:C5,FailedPredicateException:wo,DiagnosticErrorListener:Df,BailErrorStrategy:Bf,DefaultErrorStrategy:Be,ErrorListener:j8};class k9{constructor(e,n){if(this.name="<empty>",this.strdata=e,this.decodeToUnicodeCodePoints=n||!1,this._index=0,this.data=[],this.decodeToUnicodeCodePoints)for(let i=0;i<this.strdata.length;){const s=this.strdata.codePointAt(i);this.data.push(s),i+=s<=65535?1:2}else{this.data=new Array(this.strdata.length);for(let i=0;i<this.strdata.length;i++){const s=this.strdata.charCodeAt(i);this.data[i]=s}}this._size=this.data.length}reset(){this._index=0}consume(){if(this._index>=this._size)throw"cannot consume EOF";this._index+=1}LA(e){if(e===0)return 0;e<0&&(e+=1);const n=this._index+e-1;return n<0||n>=this._size?Y.EOF:this.data[n]}LT(e){return this.LA(e)}mark(){return-1}release(e){}seek(e){if(e<=this._index){this._index=e;return}this._index=Math.min(e,this._size)}getText(e,n){if(n>=this._size&&(n=this._size-1),e>=this._size)return"";if(this.decodeToUnicodeCodePoints){let i="";for(let s=e;s<=n;s++)i+=String.fromCodePoint(this.data[s]);return i}else return this.strdata.slice(e,n+1)}toString(){return this.strdata}get index(){return this._index}get size(){return this._size}}const ze={},Uf={fromString:function(t){return new k9(t,!0)},fromBlob:function(t,e,n,i){const s=new window.FileReader;s.onload=function(r){const o=new k9(r.target.result,!0);n(o)},s.onerror=i,s.readAsText(t,e)},fromBuffer:function(t,e){return new k9(t.toString(e),!0)},fromPath:function(t,e,n){ze.readFile(t,e,function(i,s){let r=null;s!==null&&(r=new k9(s,!0)),n(i,r)})},fromPathSync:function(t,e){const n=ze.readFileSync(t,e);return new k9(n,!0)}};class Wf extends k9{constructor(e,n){const i=ze.readFileSync(e,"utf8");super(i,n),this.fileName=e}}class Hf{}class $f extends Hf{constructor(e){super(),this.tokenSource=e,this.tokens=[],this.index=-1,this.fetchedEOF=!1}mark(){return 0}release(e){}reset(){this.seek(0)}seek(e){this.lazyInit(),this.index=this.adjustSeekIndex(e)}get(e){return this.lazyInit(),this.tokens[e]}consume(){let e=!1;if(this.index>=0?this.fetchedEOF?e=this.index<this.tokens.length-1:e=this.index<this.tokens.length:e=!1,!e&&this.LA(1)===Y.EOF)throw"cannot consume EOF";this.sync(this.index+1)&&(this.index=this.adjustSeekIndex(this.index+1))}sync(e){const n=e-this.tokens.length+1;return n>0?this.fetch(n)>=n:!0}fetch(e){if(this.fetchedEOF)return 0;for(let n=0;n<e;n++){const i=this.tokenSource.nextToken();if(i.tokenIndex=this.tokens.length,this.tokens.push(i),i.type===Y.EOF)return this.fetchedEOF=!0,n+1}return e}getTokens(e,n,i){if(i===void 0&&(i=null),e<0||n<0)return null;this.lazyInit();const s=[];n>=this.tokens.length&&(n=this.tokens.length-1);for(let r=e;r<n;r++){const o=this.tokens[r];if(o.type===Y.EOF)break;(i===null||i.contains(o.type))&&s.push(o)}return s}LA(e){return this.LT(e).type}LB(e){return this.index-e<0?null:this.tokens[this.index-e]}LT(e){if(this.lazyInit(),e===0)return null;if(e<0)return this.LB(-e);const n=this.index+e-1;return this.sync(n),n>=this.tokens.length?this.tokens[this.tokens.length-1]:this.tokens[n]}adjustSeekIndex(e){return e}lazyInit(){this.index===-1&&this.setup()}setup(){this.sync(0),this.index=this.adjustSeekIndex(0)}setTokenSource(e){this.tokenSource=e,this.tokens=[],this.index=-1,this.fetchedEOF=!1}nextTokenOnChannel(e,n){if(this.sync(e),e>=this.tokens.length)return-1;let i=this.tokens[e];for(;i.channel!==this.channel;){if(i.type===Y.EOF)return-1;e+=1,this.sync(e),i=this.tokens[e]}return e}previousTokenOnChannel(e,n){for(;e>=0&&this.tokens[e].channel!==n;)e-=1;return e}getHiddenTokensToRight(e,n){if(n===void 0&&(n=-1),this.lazyInit(),e<0||e>=this.tokens.length)throw""+e+" not in 0.."+this.tokens.length-1;const i=this.nextTokenOnChannel(e+1,u1.DEFAULT_TOKEN_CHANNEL),s=e+1,r=i===-1?this.tokens.length-1:i;return this.filterForChannel(s,r,n)}getHiddenTokensToLeft(e,n){if(n===void 0&&(n=-1),this.lazyInit(),e<0||e>=this.tokens.length)throw""+e+" not in 0.."+this.tokens.length-1;const i=this.previousTokenOnChannel(e-1,u1.DEFAULT_TOKEN_CHANNEL);if(i===e-1)return null;const s=i+1,r=e-1;return this.filterForChannel(s,r,n)}filterForChannel(e,n,i){const s=[];for(let r=e;r<n+1;r++){const o=this.tokens[r];i===-1?o.channel!==u1.DEFAULT_TOKEN_CHANNEL&&s.push(o):o.channel===i&&s.push(o)}return s.length===0?null:s}getSourceName(){return this.tokenSource.getSourceName()}getText(e){this.lazyInit(),this.fill(),e==null&&(e=new q2(0,this.tokens.length-1));let n=e.start;n instanceof Y&&(n=n.tokenIndex);let i=e.stop;if(i instanceof Y&&(i=i.tokenIndex),n===null||i===null||n<0||i<0)return"";i>=this.tokens.length&&(i=this.tokens.length-1);let s="";for(let r=n;r<i+1;r++){const o=this.tokens[r];if(o.type===Y.EOF)break;s=s+o.text}return s}fill(){for(this.lazyInit();this.fetch(1e3)===1e3;);}}class Vf extends $f{constructor(e,n){super(e),this.channel=n===void 0?Y.DEFAULT_CHANNEL:n}adjustSeekIndex(e){return this.nextTokenOnChannel(e,this.channel)}LB(e){if(e===0||this.index-e<0)return null;let n=this.index,i=1;for(;i<=e;)n=this.previousTokenOnChannel(n-1,this.channel),i+=1;return n<0?null:this.tokens[n]}LT(e){if(this.lazyInit(),e===0)return null;if(e<0)return this.LB(-e);let n=this.index,i=1;for(;i<e;)this.sync(n+1)&&(n=this.nextTokenOnChannel(n+1,this.channel)),i+=1;return this.tokens[n]}getNumberOfOnChannelTokens(){let e=0;this.fill();for(let n=0;n<this.tokens.length;n++){const i=this.tokens[n];if(i.channel===this.channel&&(e+=1),i.type===Y.EOF)break}return e}}class Gf extends mo{constructor(e){super(),this.parser=e}enterEveryRule(e){console.log("enter "+this.parser.ruleNames[e.ruleIndex]+", LT(1)="+this.parser._input.LT(1).text)}visitTerminal(e){console.log("consume "+e.symbol+" rule "+this.parser.ruleNames[this.parser._ctx.ruleIndex])}exitEveryRule(e){console.log("exit "+this.parser.ruleNames[e.ruleIndex]+", LT(1)="+this.parser._input.LT(1).text)}}class xo extends q8{constructor(e){super(),this._input=null,this._errHandler=new Be,this._precedenceStack=[],this._precedenceStack.push(0),this._ctx=null,this.buildParseTrees=!0,this._tracer=null,this._parseListeners=null,this._syntaxErrors=0,this.setInputStream(e)}reset(){this._input!==null&&this._input.seek(0),this._errHandler.reset(this),this._ctx=null,this._syntaxErrors=0,this.setTrace(!1),this._precedenceStack=[],this._precedenceStack.push(0),this._interp!==null&&this._interp.reset()}match(e){let n=this.getCurrentToken();return n.type===e?(this._errHandler.reportMatch(this),this.consume()):(n=this._errHandler.recoverInline(this),this.buildParseTrees&&n.tokenIndex===-1&&this._ctx.addErrorNode(n)),n}matchWildcard(){let e=this.getCurrentToken();return e.type>0?(this._errHandler.reportMatch(this),this.consume()):(e=this._errHandler.recoverInline(this),this._buildParseTrees&&e.tokenIndex===-1&&this._ctx.addErrorNode(e)),e}getParseListeners(){return this._parseListeners||[]}addParseListener(e){if(e===null)throw"listener";this._parseListeners===null&&(this._parseListeners=[]),this._parseListeners.push(e)}removeParseListener(e){if(this._parseListeners!==null){const n=this._parseListeners.indexOf(e);n>=0&&this._parseListeners.splice(n,1),this._parseListeners.length===0&&(this._parseListeners=null)}}removeParseListeners(){this._parseListeners=null}triggerEnterRuleEvent(){if(this._parseListeners!==null){const e=this._ctx;this._parseListeners.forEach(function(n){n.enterEveryRule(e),e.enterRule(n)})}}triggerExitRuleEvent(){if(this._parseListeners!==null){const e=this._ctx;this._parseListeners.slice(0).reverse().forEach(function(n){e.exitRule(n),n.exitEveryRule(e)})}}getTokenFactory(){return this._input.tokenSource._factory}setTokenFactory(e){this._input.tokenSource._factory=e}getATNWithBypassAlts(){const e=this.getSerializedATN();if(e===null)throw"The current parser does not support an ATN with bypass alternatives.";let n=this.bypassAltsAtnCache[e];if(n===null){const i=new a5;i.generateRuleBypassTransitions=!0,n=new uo(i).deserialize(e),this.bypassAltsAtnCache[e]=n}return n}getInputStream(){return this.getTokenStream()}setInputStream(e){this.setTokenStream(e)}getTokenStream(){return this._input}setTokenStream(e){this._input=null,this.reset(),this._input=e}getCurrentToken(){return this._input.LT(1)}notifyErrorListeners(e,n,i){n=n||null,i=i||null,n===null&&(n=this.getCurrentToken()),this._syntaxErrors+=1;const s=n.line,r=n.column;this.getErrorListenerDispatch().syntaxError(this,n,s,r,e,i)}consume(){const e=this.getCurrentToken();e.type!==Y.EOF&&this.getInputStream().consume();const n=this._parseListeners!==null&&this._parseListeners.length>0;if(this.buildParseTrees||n){let i;this._errHandler.inErrorRecoveryMode(this)?i=this._ctx.addErrorNode(e):i=this._ctx.addTokenNode(e),i.invokingState=this.state,n&&this._parseListeners.forEach(function(s){i instanceof U8||i.isErrorNode!==void 0&&i.isErrorNode()?s.visitErrorNode(i):i instanceof R4&&s.visitTerminal(i)})}return e}addContextToParseTree(){this._ctx.parentCtx!==null&&this._ctx.parentCtx.addChild(this._ctx)}enterRule(e,n,i){this.state=n,this._ctx=e,this._ctx.start=this._input.LT(1),this.buildParseTrees&&this.addContextToParseTree(),this.triggerEnterRuleEvent()}exitRule(){this._ctx.stop=this._input.LT(-1),this.triggerExitRuleEvent(),this.state=this._ctx.invokingState,this._ctx=this._ctx.parentCtx}enterOuterAlt(e,n){e.setAltNumber(n),this.buildParseTrees&&this._ctx!==e&&this._ctx.parentCtx!==null&&(this._ctx.parentCtx.removeLastChild(),this._ctx.parentCtx.addChild(e)),this._ctx=e}getPrecedence(){return this._precedenceStack.length===0?-1:this._precedenceStack[this._precedenceStack.length-1]}enterRecursionRule(e,n,i,s){this.state=n,this._precedenceStack.push(s),this._ctx=e,this._ctx.start=this._input.LT(1),this.triggerEnterRuleEvent()}pushNewRecursionContext(e,n,i){const s=this._ctx;s.parentCtx=e,s.invokingState=n,s.stop=this._input.LT(-1),this._ctx=e,this._ctx.start=s.start,this.buildParseTrees&&this._ctx.addChild(s),this.triggerEnterRuleEvent()}unrollRecursionContexts(e){this._precedenceStack.pop(),this._ctx.stop=this._input.LT(-1);const n=this._ctx,i=this.getParseListeners();if(i!==null&&i.length>0)for(;this._ctx!==e;)this.triggerExitRuleEvent(),this._ctx=this._ctx.parentCtx;else this._ctx=e;n.parentCtx=e,this.buildParseTrees&&e!==null&&e.addChild(n)}getInvokingContext(e){let n=this._ctx;for(;n!==null;){if(n.ruleIndex===e)return n;n=n.parentCtx}return null}precpred(e,n){return n>=this._precedenceStack[this._precedenceStack.length-1]}inContext(e){return!1}isExpectedToken(e){const n=this._interp.atn;let i=this._ctx;const s=n.states[this.state];let r=n.nextTokens(s);if(r.contains(e))return!0;if(!r.contains(Y.EPSILON))return!1;for(;i!==null&&i.invokingState>=0&&r.contains(Y.EPSILON);){const l=n.states[i.invokingState].transitions[0];if(r=n.nextTokens(l.followState),r.contains(e))return!0;i=i.parentCtx}return!!(r.contains(Y.EPSILON)&&e===Y.EOF)}getExpectedTokens(){return this._interp.atn.getExpectedTokens(this.state,this._ctx)}getExpectedTokensWithinCurrentRule(){const e=this._interp.atn,n=e.states[this.state];return e.nextTokens(n)}getRuleIndex(e){const n=this.getRuleIndexMap()[e];return n!==null?n:-1}getRuleInvocationStack(e){e=e||null,e===null&&(e=this._ctx);const n=[];for(;e!==null;){const i=e.ruleIndex;i<0?n.push("n/a"):n.push(this.ruleNames[i]),e=e.parentCtx}return n}getDFAStrings(){return this._interp.decisionToDFA.toString()}dumpDFA(){let e=!1;for(let n=0;n<this._interp.decisionToDFA.length;n++){const i=this._interp.decisionToDFA[n];i.states.length>0&&(e&&console.log(),this.printer.println("Decision "+i.decision+":"),this.printer.print(i.toString(this.literalNames,this.symbolicNames)),e=!0)}}getSourceName(){return this._input.sourceName}setTrace(e){e?(this._tracer!==null&&this.removeParseListener(this._tracer),this._tracer=new Gf(this),this.addParseListener(this._tracer)):(this.removeParseListener(this._tracer),this._tracer=null)}}xo.bypassAltsAtnCache={};class jf{constructor(){this.cache=new l5}add(e){if(e===P2.EMPTY)return P2.EMPTY;const n=this.cache.get(e)||null;return n!==null?n:(this.cache.set(e,e),e)}get(e){return this.cache.get(e)||null}get length(){return this.cache.length}}class _o extends R4{constructor(e){super(),this.parentCtx=null,this.symbol=e}getChild(e){return null}getSymbol(){return this.symbol}getParent(){return this.parentCtx}getPayload(){return this.symbol}getSourceInterval(){if(this.symbol===null)return q2.INVALID_INTERVAL;const e=this.symbol.tokenIndex;return new q2(e,e)}getChildCount(){return 0}accept(e){return e.visitTerminal(this)}getText(){return this.symbol.text}toString(){return this.symbol.type===Y.EOF?"<EOF>":this.symbol.text}}class vo extends _o{constructor(e){super(e)}isErrorNode(){return!0}accept(e){return e.visitErrorNode(this)}}class Mo extends a0{constructor(e,n){e=e||null,n=n||null,super(e,n),this.ruleIndex=-1,this.children=null,this.start=null,this.stop=null,this.exception=null}copyFrom(e){this.parentCtx=e.parentCtx,this.invokingState=e.invokingState,this.children=null,this.start=e.start,this.stop=e.stop,e.children&&(this.children=[],e.children.map(function(n){n instanceof vo&&(this.children.push(n),n.parentCtx=this)},this))}enterRule(e){}exitRule(e){}addChild(e){return this.children===null&&(this.children=[]),this.children.push(e),e}removeLastChild(){this.children!==null&&this.children.pop()}addTokenNode(e){const n=new _o(e);return this.addChild(n),n.parentCtx=this,n}addErrorNode(e){const n=new vo(e);return this.addChild(n),n.parentCtx=this,n}getChild(e,n){if(n=n||null,this.children===null||e<0||e>=this.children.length)return null;if(n===null)return this.children[e];for(let i=0;i<this.children.length;i++){const s=this.children[i];if(s instanceof n){if(e===0)return s;e-=1}}return null}getToken(e,n){if(this.children===null||n<0||n>=this.children.length)return null;for(let i=0;i<this.children.length;i++){const s=this.children[i];if(s instanceof R4&&s.symbol.type===e){if(n===0)return s;n-=1}}return null}getTokens(e){if(this.children===null)return[];{const n=[];for(let i=0;i<this.children.length;i++){const s=this.children[i];s instanceof R4&&s.symbol.type===e&&n.push(s)}return n}}getTypedRuleContext(e,n){return this.getChild(n,e)}getTypedRuleContexts(e){if(this.children===null)return[];{const n=[];for(let i=0;i<this.children.length;i++){const s=this.children[i];s instanceof e&&n.push(s)}return n}}getChildCount(){return this.children===null?0:this.children.length}getSourceInterval(){return this.start===null||this.stop===null?q2.INVALID_INTERVAL:new q2(this.start.tokenIndex,this.stop.tokenIndex)}}a0.EMPTY=new Mo;const T={atn:bf,dfa:If,tree:Of,error:zf,Token:Y,CommonToken:A9,CharStreams:Uf,InputStream:k9,FileStream:Wf,CommonTokenStream:Vf,Lexer:u1,Parser:xo,PredictionContextCache:jf,ParserRuleContext:Mo,Interval:q2,IntervalSet:E3,LL1Analyzer:c0,Utils:{arrayToString:$4}},qf=[4,0,68,544,6,-1,6,-1,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,2,56,7,56,2,57,7,57,2,58,7,58,2,59,7,59,2,60,7,60,2,61,7,61,2,62,7,62,2,63,7,63,2,64,7,64,2,65,7,65,2,66,7,66,2,67,7,67,2,68,7,68,1,0,1,0,1,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,3,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,4,1,5,1,5,1,5,1,5,1,5,1,5,1,5,1,5,1,6,1,6,1,6,1,6,1,7,1,7,1,7,1,8,1,8,1,8,1,9,1,9,1,9,1,10,1,10,1,11,1,11,4,11,207,8,11,11,11,12,11,208,1,12,1,12,1,12,1,13,1,13,1,13,1,14,1,14,1,14,1,15,1,15,1,15,1,16,1,16,1,17,1,17,1,18,1,18,1,18,1,19,1,19,1,19,1,20,1,20,1,21,1,21,1,22,1,22,1,23,1,23,1,24,1,24,1,25,1,25,1,26,1,26,1,27,1,27,1,28,1,28,1,29,1,29,1,30,1,30,1,31,1,31,1,32,1,32,1,33,1,33,1,34,1,34,1,34,1,34,1,34,1,35,1,35,1,35,1,35,1,35,1,35,1,36,1,36,1,36,1,36,1,36,1,36,1,36,3,36,279,8,36,1,37,1,37,1,37,1,38,1,38,1,38,1,38,1,38,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,1,39,3,39,315,8,39,1,40,1,40,1,40,1,40,1,40,1,40,1,40,1,41,1,41,1,41,1,41,1,42,1,42,1,42,1,42,1,43,1,43,1,43,1,43,1,43,1,43,1,44,1,44,1,44,1,44,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,1,46,3,46,363,8,46,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,49,1,49,1,49,1,49,1,50,1,50,1,50,1,50,1,50,1,50,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,52,1,52,1,52,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,3,53,409,8,53,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,1,54,3,54,437,8,54,1,55,1,55,5,55,441,8,55,10,55,12,55,444,9,55,1,56,1,56,1,57,1,57,5,57,450,8,57,10,57,12,57,453,9,57,1,58,4,58,456,8,58,11,58,12,58,457,1,59,4,59,461,8,59,11,59,12,59,462,1,59,1,59,5,59,467,8,59,10,59,12,59,470,9,59,1,59,1,59,4,59,474,8,59,11,59,12,59,475,3,59,478,8,59,1,60,1,60,1,60,1,60,5,60,484,8,60,10,60,12,60,487,9,60,1,60,3,60,490,8,60,1,61,1,61,1,61,1,61,1,62,1,62,1,62,1,62,5,62,500,8,62,10,62,12,62,503,9,62,1,62,1,62,1,62,1,62,1,63,1,63,1,64,1,64,5,64,513,8,64,10,64,12,64,516,9,64,1,64,1,64,1,64,1,64,5,64,522,8,64,10,64,12,64,525,9,64,1,65,4,65,528,8,65,11,65,12,65,529,1,66,1,66,1,66,1,66,1,67,4,67,537,8,67,11,67,12,67,538,1,68,1,68,1,68,1,68,1,501,0,69,3,1,5,2,7,3,9,4,11,5,13,6,15,7,17,8,19,9,21,10,23,0,25,11,27,12,29,13,31,14,33,15,35,16,37,17,39,18,41,19,43,20,45,21,47,22,49,23,51,24,53,25,55,26,57,27,59,28,61,29,63,30,65,31,67,32,69,33,71,34,73,35,75,36,77,37,79,38,81,39,83,40,85,41,87,42,89,43,91,44,93,45,95,46,97,47,99,48,101,49,103,50,105,51,107,52,109,53,111,54,113,55,115,56,117,57,119,58,121,59,123,60,125,61,127,62,129,63,131,64,133,65,135,66,137,67,139,68,3,0,1,2,7,2,0,9,9,32,32,3,0,48,57,65,70,97,102,4,0,48,57,65,90,95,95,97,122,3,0,65,90,95,95,97,122,1,0,48,57,3,0,10,10,13,13,34,34,2,0,10,10,13,13,566,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,0,87,1,0,0,0,0,89,1,0,0,0,0,91,1,0,0,0,0,93,1,0,0,0,0,95,1,0,0,0,0,97,1,0,0,0,0,99,1,0,0,0,0,101,1,0,0,0,0,103,1,0,0,0,0,105,1,0,0,0,0,107,1,0,0,0,0,109,1,0,0,0,0,111,1,0,0,0,0,113,1,0,0,0,0,115,1,0,0,0,0,117,1,0,0,0,0,119,1,0,0,0,0,121,1,0,0,0,0,123,1,0,0,0,0,125,1,0,0,0,0,127,1,0,0,0,0,129,1,0,0,0,0,131,1,0,0,0,1,133,1,0,0,0,1,135,1,0,0,0,2,137,1,0,0,0,2,139,1,0,0,0,3,141,1,0,0,0,5,145,1,0,0,0,7,153,1,0,0,0,9,164,1,0,0,0,11,173,1,0,0,0,13,181,1,0,0,0,15,189,1,0,0,0,17,193,1,0,0,0,19,196,1,0,0,0,21,199,1,0,0,0,23,202,1,0,0,0,25,204,1,0,0,0,27,210,1,0,0,0,29,213,1,0,0,0,31,216,1,0,0,0,33,219,1,0,0,0,35,222,1,0,0,0,37,224,1,0,0,0,39,226,1,0,0,0,41,229,1,0,0,0,43,232,1,0,0,0,45,234,1,0,0,0,47,236,1,0,0,0,49,238,1,0,0,0,51,240,1,0,0,0,53,242,1,0,0,0,55,244,1,0,0,0,57,246,1,0,0,0,59,248,1,0,0,0,61,250,1,0,0,0,63,252,1,0,0,0,65,254,1,0,0,0,67,256,1,0,0,0,69,258,1,0,0,0,71,260,1,0,0,0,73,265,1,0,0,0,75,278,1,0,0,0,77,280,1,0,0,0,79,283,1,0,0,0,81,314,1,0,0,0,83,316,1,0,0,0,85,323,1,0,0,0,87,327,1,0,0,0,89,331,1,0,0,0,91,337,1,0,0,0,93,341,1,0,0,0,95,362,1,0,0,0,97,364,1,0,0,0,99,368,1,0,0,0,101,371,1,0,0,0,103,375,1,0,0,0,105,381,1,0,0,0,107,389,1,0,0,0,109,408,1,0,0,0,111,436,1,0,0,0,113,438,1,0,0,0,115,445,1,0,0,0,117,447,1,0,0,0,119,455,1,0,0,0,121,477,1,0,0,0,123,479,1,0,0,0,125,491,1,0,0,0,127,495,1,0,0,0,129,508,1,0,0,0,131,510,1,0,0,0,133,527,1,0,0,0,135,531,1,0,0,0,137,536,1,0,0,0,139,540,1,0,0,0,141,142,7,0,0,0,142,143,1,0,0,0,143,144,6,0,0,0,144,4,1,0,0,0,145,146,5,99,0,0,146,147,5,111,0,0,147,148,5,110,0,0,148,149,5,115,0,0,149,150,5,116,0,0,150,151,1,0,0,0,151,152,6,1,1,0,152,6,1,0,0,0,153,154,5,114,0,0,154,155,5,101,0,0,155,156,5,97,0,0,156,157,5,100,0,0,157,158,5,111,0,0,158,159,5,110,0,0,159,160,5,108,0,0,160,161,5,121,0,0,161,162,1,0,0,0,162,163,6,2,1,0,163,8,1,0,0,0,164,165,5,115,0,0,165,166,5,116,0,0,166,167,5,97,0,0,167,168,5,116,0,0,168,169,5,105,0,0,169,170,5,99,0,0,170,171,1,0,0,0,171,172,6,3,1,0,172,10,1,0,0,0,173,174,5,97,0,0,174,175,5,119,0,0,175,176,5,97,0,0,176,177,5,105,0,0,177,178,5,116,0,0,178,179,1,0,0,0,179,180,6,4,1,0,180,12,1,0,0,0,181,182,5,116,0,0,182,183,5,105,0,0,183,184,5,116,0,0,184,185,5,108,0,0,185,186,5,101,0,0,186,187,1,0,0,0,187,188,6,5,2,0,188,14,1,0,0,0,189,190,5,58,0,0,190,191,1,0,0,0,191,192,6,6,3,0,192,16,1,0,0,0,193,194,5,60,0,0,194,195,5,60,0,0,195,18,1,0,0,0,196,197,5,62,0,0,197,198,5,62,0,0,198,20,1,0,0,0,199,200,5,45,0,0,200,201,5,62,0,0,201,22,1,0,0,0,202,203,7,1,0,0,203,24,1,0,0,0,204,206,5,35,0,0,205,207,3,23,10,0,206,205,1,0,0,0,207,208,1,0,0,0,208,206,1,0,0,0,208,209,1,0,0,0,209,26,1,0,0,0,210,211,5,124,0,0,211,212,5,124,0,0,212,28,1,0,0,0,213,214,5,38,0,0,214,215,5,38,0,0,215,30,1,0,0,0,216,217,5,61,0,0,217,218,5,61,0,0,218,32,1,0,0,0,219,220,5,33,0,0,220,221,5,61,0,0,221,34,1,0,0,0,222,223,5,62,0,0,223,36,1,0,0,0,224,225,5,60,0,0,225,38,1,0,0,0,226,227,5,62,0,0,227,228,5,61,0,0,228,40,1,0,0,0,229,230,5,60,0,0,230,231,5,61,0,0,231,42,1,0,0,0,232,233,5,43,0,0,233,44,1,0,0,0,234,235,5,45,0,0,235,46,1,0,0,0,236,237,5,42,0,0,237,48,1,0,0,0,238,239,5,47,0,0,239,50,1,0,0,0,240,241,5,37,0,0,241,52,1,0,0,0,242,243,5,94,0,0,243,54,1,0,0,0,244,245,5,33,0,0,245,56,1,0,0,0,246,247,5,59,0,0,247,58,1,0,0,0,248,249,5,44,0,0,249,60,1,0,0,0,250,251,5,61,0,0,251,62,1,0,0,0,252,253,5,40,0,0,253,64,1,0,0,0,254,255,5,41,0,0,255,66,1,0,0,0,256,257,5,123,0,0,257,68,1,0,0,0,258,259,5,125,0,0,259,70,1,0,0,0,260,261,5,116,0,0,261,262,5,114,0,0,262,263,5,117,0,0,263,264,5,101,0,0,264,72,1,0,0,0,265,266,5,102,0,0,266,267,5,97,0,0,267,268,5,108,0,0,268,269,5,115,0,0,269,270,5,101,0,0,270,74,1,0,0,0,271,272,5,110,0,0,272,273,5,105,0,0,273,279,5,108,0,0,274,275,5,110,0,0,275,276,5,117,0,0,276,277,5,108,0,0,277,279,5,108,0,0,278,271,1,0,0,0,278,274,1,0,0,0,279,76,1,0,0,0,280,281,5,105,0,0,281,282,5,102,0,0,282,78,1,0,0,0,283,284,5,101,0,0,284,285,5,108,0,0,285,286,5,115,0,0,286,287,5,101,0,0,287,80,1,0,0,0,288,289,5,119,0,0,289,290,5,104,0,0,290,291,5,105,0,0,291,292,5,108,0,0,292,315,5,101,0,0,293,294,5,102,0,0,294,295,5,111,0,0,295,315,5,114,0,0,296,297,5,102,0,0,297,298,5,111,0,0,298,299,5,114,0,0,299,300,5,101,0,0,300,301,5,97,0,0,301,302,5,99,0,0,302,315,5,104,0,0,303,304,5,102,0,0,304,305,5,111,0,0,305,306,5,114,0,0,306,307,5,69,0,0,307,308,5,97,0,0,308,309,5,99,0,0,309,315,5,104,0,0,310,311,5,108,0,0,311,312,5,111,0,0,312,313,5,111,0,0,313,315,5,112,0,0,314,288,1,0,0,0,314,293,1,0,0,0,314,296,1,0,0,0,314,303,1,0,0,0,314,310,1,0,0,0,315,82,1,0,0,0,316,317,5,114,0,0,317,318,5,101,0,0,318,319,5,116,0,0,319,320,5,117,0,0,320,321,5,114,0,0,321,322,5,110,0,0,322,84,1,0,0,0,323,324,5,110,0,0,324,325,5,101,0,0,325,326,5,119,0,0,326,86,1,0,0,0,327,328,5,112,0,0,328,329,5,97,0,0,329,330,5,114,0,0,330,88,1,0,0,0,331,332,5,103,0,0,332,333,5,114,0,0,333,334,5,111,0,0,334,335,5,117,0,0,335,336,5,112,0,0,336,90,1,0,0,0,337,338,5,111,0,0,338,339,5,112,0,0,339,340,5,116,0,0,340,92,1,0,0,0,341,342,5,99,0,0,342,343,5,114,0,0,343,344,5,105,0,0,344,345,5,116,0,0,345,346,5,105,0,0,346,347,5,99,0,0,347,348,5,97,0,0,348,349,5,108,0,0,349,94,1,0,0,0,350,351,5,115,0,0,351,352,5,101,0,0,352,353,5,99,0,0,353,354,5,116,0,0,354,355,5,105,0,0,355,356,5,111,0,0,356,363,5,110,0,0,357,358,5,102,0,0,358,359,5,114,0,0,359,360,5,97,0,0,360,361,5,109,0,0,361,363,5,101,0,0,362,350,1,0,0,0,362,357,1,0,0,0,363,96,1,0,0,0,364,365,5,114,0,0,365,366,5,101,0,0,366,367,5,102,0,0,367,98,1,0,0,0,368,369,5,97,0,0,369,370,5,115,0,0,370,100,1,0,0,0,371,372,5,116,0,0,372,373,5,114,0,0,373,374,5,121,0,0,374,102,1,0,0,0,375,376,5,99,0,0,376,377,5,97,0,0,377,378,5,116,0,0,378,379,5,99,0,0,379,380,5,104,0,0,380,104,1,0,0,0,381,382,5,102,0,0,382,383,5,105,0,0,383,384,5,110,0,0,384,385,5,97,0,0,385,386,5,108,0,0,386,387,5,108,0,0,387,388,5,121,0,0,388,106,1,0,0,0,389,390,5,105,0,0,390,391,5,110,0,0,391,108,1,0,0,0,392,393,5,64,0,0,393,394,5,83,0,0,394,395,5,116,0,0,395,396,5,97,0,0,396,397,5,114,0,0,397,398,5,116,0,0,398,399,5,101,0,0,399,409,5,114,0,0,400,401,5,64,0,0,401,402,5,115,0,0,402,403,5,116,0,0,403,404,5,97,0,0,404,405,5,114,0,0,405,406,5,116,0,0,406,407,5,101,0,0,407,409,5,114,0,0,408,392,1,0,0,0,408,400,1,0,0,0,409,110,1,0,0,0,410,411,5,64,0,0,411,412,5,82,0,0,412,413,5,101,0,0,413,414,5,116,0,0,414,415,5,117,0,0,415,416,5,114,0,0,416,437,5,110,0,0,417,418,5,64,0,0,418,419,5,114,0,0,419,420,5,101,0,0,420,421,5,116,0,0,421,422,5,117,0,0,422,423,5,114,0,0,423,437,5,110,0,0,424,425,5,64,0,0,425,426,5,82,0,0,426,427,5,101,0,0,427,428,5,112,0,0,428,429,5,108,0,0,429,437,5,121,0,0,430,431,5,64,0,0,431,432,5,114,0,0,432,433,5,101,0,0,433,434,5,112,0,0,434,435,5,108,0,0,435,437,5,121,0,0,436,410,1,0,0,0,436,417,1,0,0,0,436,424,1,0,0,0,436,430,1,0,0,0,437,112,1,0,0,0,438,442,5,64,0,0,439,441,7,2,0,0,440,439,1,0,0,0,441,444,1,0,0,0,442,440,1,0,0,0,442,443,1,0,0,0,443,114,1,0,0,0,444,442,1,0,0,0,445,446,5,46,0,0,446,116,1,0,0,0,447,451,7,3,0,0,448,450,7,2,0,0,449,448,1,0,0,0,450,453,1,0,0,0,451,449,1,0,0,0,451,452,1,0,0,0,452,118,1,0,0,0,453,451,1,0,0,0,454,456,7,4,0,0,455,454,1,0,0,0,456,457,1,0,0,0,457,455,1,0,0,0,457,458,1,0,0,0,458,120,1,0,0,0,459,461,7,4,0,0,460,459,1,0,0,0,461,462,1,0,0,0,462,460,1,0,0,0,462,463,1,0,0,0,463,464,1,0,0,0,464,468,5,46,0,0,465,467,7,4,0,0,466,465,1,0,0,0,467,470,1,0,0,0,468,466,1,0,0,0,468,469,1,0,0,0,469,478,1,0,0,0,470,468,1,0,0,0,471,473,5,46,0,0,472,474,7,4,0,0,473,472,1,0,0,0,474,475,1,0,0,0,475,473,1,0,0,0,475,476,1,0,0,0,476,478,1,0,0,0,477,460,1,0,0,0,477,471,1,0,0,0,478,122,1,0,0,0,479,485,5,34,0,0,480,484,8,5,0,0,481,482,5,34,0,0,482,484,5,34,0,0,483,480,1,0,0,0,483,481,1,0,0,0,484,487,1,0,0,0,485,483,1,0,0,0,485,486,1,0,0,0,486,489,1,0,0,0,487,485,1,0,0,0,488,490,7,5,0,0,489,488,1,0,0,0,489,490,1,0,0,0,490,124,1,0,0,0,491,492,7,6,0,0,492,493,1,0,0,0,493,494,6,61,0,0,494,126,1,0,0,0,495,496,5,47,0,0,496,497,5,47,0,0,497,501,1,0,0,0,498,500,9,0,0,0,499,498,1,0,0,0,500,503,1,0,0,0,501,502,1,0,0,0,501,499,1,0,0,0,502,504,1,0,0,0,503,501,1,0,0,0,504,505,5,10,0,0,505,506,1,0,0,0,506,507,6,62,4,0,507,128,1,0,0,0,508,509,9,0,0,0,509,130,1,0,0,0,510,514,4,64,0,0,511,513,3,3,0,0,512,511,1,0,0,0,513,516,1,0,0,0,514,512,1,0,0,0,514,515,1,0,0,0,515,517,1,0,0,0,516,514,1,0,0,0,517,518,5,61,0,0,518,519,5,61,0,0,519,523,1,0,0,0,520,522,8,6,0,0,521,520,1,0,0,0,522,525,1,0,0,0,523,521,1,0,0,0,523,524,1,0,0,0,524,132,1,0,0,0,525,523,1,0,0,0,526,528,8,6,0,0,527,526,1,0,0,0,528,529,1,0,0,0,529,527,1,0,0,0,529,530,1,0,0,0,530,134,1,0,0,0,531,532,7,6,0,0,532,533,1,0,0,0,533,534,6,66,5,0,534,136,1,0,0,0,535,537,8,6,0,0,536,535,1,0,0,0,537,538,1,0,0,0,538,536,1,0,0,0,538,539,1,0,0,0,539,138,1,0,0,0,540,541,7,6,0,0,541,542,1,0,0,0,542,543,6,68,5,0,543,140,1,0,0,0,24,0,1,2,208,278,314,362,408,436,442,451,457,462,468,475,477,483,485,489,501,514,523,529,538,6,0,1,0,0,3,0,5,2,0,5,1,0,0,2,0,4,0,0],Ue=new T.atn.ATNDeserializer().deserialize(qf),Kf=Ue.decisionToState.map((t,e)=>new T.dfa.DFA(t,e));class s2 extends T.Lexer{constructor(e){super(e),this._interp=new T.atn.LexerATNSimulator(this,Ue,Kf,new T.PredictionContextCache)}get atn(){return Ue}}i2(s2,"grammarFileName","sequenceLexer.g4"),i2(s2,"channelNames",["DEFAULT_TOKEN_CHANNEL","HIDDEN","COMMENT_CHANNEL","MODIFIER_CHANNEL"]),i2(s2,"modeNames",["DEFAULT_MODE","EVENT","TITLE_MODE"]),i2(s2,"literalNames",[null,null,"'const'","'readonly'","'static'","'await'","'title'","':'","'<<'","'>>'","'->'",null,"'||'","'&&'","'=='","'!='","'>'","'<'","'>='","'<='","'+'","'-'","'*'","'/'","'%'","'^'","'!'","';'","','","'='","'('","')'","'{'","'}'","'true'","'false'",null,"'if'","'else'",null,"'return'","'new'","'par'","'group'","'opt'","'critical'",null,"'ref'","'as'","'try'","'catch'","'finally'","'in'",null,null,null,"'.'"]),i2(s2,"symbolicNames",[null,"WS","CONSTANT","READONLY","STATIC","AWAIT","TITLE","COL","SOPEN","SCLOSE","ARROW","COLOR","OR","AND","EQ","NEQ","GT","LT","GTEQ","LTEQ","PLUS","MINUS","MULT","DIV","MOD","POW","NOT","SCOL","COMMA","ASSIGN","OPAR","CPAR","OBRACE","CBRACE","TRUE","FALSE","NIL","IF","ELSE","WHILE","RETURN","NEW","PAR","GROUP","OPT","CRITICAL","SECTION","REF","AS","TRY","CATCH","FINALLY","IN","STARTER_LXR","ANNOTATION_RET","ANNOTATION","DOT","ID","INT","FLOAT","STRING","CR","COMMENT","OTHER","DIVIDER","EVENT_PAYLOAD_LXR","EVENT_END","TITLE_CONTENT","TITLE_END"]),i2(s2,"ruleNames",["WS","CONSTANT","READONLY","STATIC","AWAIT","TITLE","COL","SOPEN","SCLOSE","ARROW","HEX","COLOR","OR","AND","EQ","NEQ","GT","LT","GTEQ","LTEQ","PLUS","MINUS","MULT","DIV","MOD","POW","NOT","SCOL","COMMA","ASSIGN","OPAR","CPAR","OBRACE","CBRACE","TRUE","FALSE","NIL","IF","ELSE","WHILE","RETURN","NEW","PAR","GROUP","OPT","CRITICAL","SECTION","REF","AS","TRY","CATCH","FINALLY","IN","STARTER_LXR","ANNOTATION_RET","ANNOTATION","DOT","ID","INT","FLOAT","STRING","CR","COMMENT","OTHER","DIVIDER","EVENT_PAYLOAD_LXR","EVENT_END","TITLE_CONTENT","TITLE_END"]),s2.EOF=T.Token.EOF,s2.WS=1,s2.CONSTANT=2,s2.READONLY=3,s2.STATIC=4,s2.AWAIT=5,s2.TITLE=6,s2.COL=7,s2.SOPEN=8,s2.SCLOSE=9,s2.ARROW=10,s2.COLOR=11,s2.OR=12,s2.AND=13,s2.EQ=14,s2.NEQ=15,s2.GT=16,s2.LT=17,s2.GTEQ=18,s2.LTEQ=19,s2.PLUS=20,s2.MINUS=21,s2.MULT=22,s2.DIV=23,s2.MOD=24,s2.POW=25,s2.NOT=26,s2.SCOL=27,s2.COMMA=28,s2.ASSIGN=29,s2.OPAR=30,s2.CPAR=31,s2.OBRACE=32,s2.CBRACE=33,s2.TRUE=34,s2.FALSE=35,s2.NIL=36,s2.IF=37,s2.ELSE=38,s2.WHILE=39,s2.RETURN=40,s2.NEW=41,s2.PAR=42,s2.GROUP=43,s2.OPT=44,s2.CRITICAL=45,s2.SECTION=46,s2.REF=47,s2.AS=48,s2.TRY=49,s2.CATCH=50,s2.FINALLY=51,s2.IN=52,s2.STARTER_LXR=53,s2.ANNOTATION_RET=54,s2.ANNOTATION=55,s2.DOT=56,s2.ID=57,s2.INT=58,s2.FLOAT=59,s2.STRING=60,s2.CR=61,s2.COMMENT=62,s2.OTHER=63,s2.DIVIDER=64,s2.EVENT_PAYLOAD_LXR=65,s2.EVENT_END=66,s2.TITLE_CONTENT=67,s2.TITLE_END=68,s2.COMMENT_CHANNEL=2,s2.MODIFIER_CHANNEL=3,s2.EVENT=1,s2.TITLE_MODE=2,s2.prototype.sempred=function(t,e,n){switch(e){case 64:return this.DIVIDER_sempred(t,n);default:throw"No registered predicate for:"+e}},s2.prototype.DIVIDER_sempred=function(t,e){switch(e){case 0:return this.column===0;default:throw"No predicate with index:"+e}};class E extends T.tree.ParseTreeListener{enterProg(e){}exitProg(e){}enterTitle(e){}exitTitle(e){}enterHead(e){}exitHead(e){}enterGroup(e){}exitGroup(e){}enterStarterExp(e){}exitStarterExp(e){}enterStarter(e){}exitStarter(e){}enterParticipant(e){}exitParticipant(e){}enterStereotype(e){}exitStereotype(e){}enterLabel(e){}exitLabel(e){}enterParticipantType(e){}exitParticipantType(e){}enterName(e){}exitName(e){}enterWidth(e){}exitWidth(e){}enterBlock(e){}exitBlock(e){}enterRet(e){}exitRet(e){}enterDivider(e){}exitDivider(e){}enterDividerNote(e){}exitDividerNote(e){}enterStat(e){}exitStat(e){}enterPar(e){}exitPar(e){}enterOpt(e){}exitOpt(e){}enterCritical(e){}exitCritical(e){}enterSection(e){}exitSection(e){}enterCreation(e){}exitCreation(e){}enterRef(e){}exitRef(e){}enterCreationBody(e){}exitCreationBody(e){}enterMessage(e){}exitMessage(e){}enterMessageBody(e){}exitMessageBody(e){}enterFunc(e){}exitFunc(e){}enterFrom(e){}exitFrom(e){}enterTo(e){}exitTo(e){}enterSignature(e){}exitSignature(e){}enterInvocation(e){}exitInvocation(e){}enterAssignment(e){}exitAssignment(e){}enterAsyncMessage(e){}exitAsyncMessage(e){}enterContent(e){}exitContent(e){}enterConstruct(e){}exitConstruct(e){}enterType(e){}exitType(e){}enterAssignee(e){}exitAssignee(e){}enterMethodName(e){}exitMethodName(e){}enterParameters(e){}exitParameters(e){}enterParameter(e){}exitParameter(e){}enterDeclaration(e){}exitDeclaration(e){}enterTcf(e){}exitTcf(e){}enterTryBlock(e){}exitTryBlock(e){}enterCatchBlock(e){}exitCatchBlock(e){}enterFinallyBlock(e){}exitFinallyBlock(e){}enterAlt(e){}exitAlt(e){}enterIfBlock(e){}exitIfBlock(e){}enterElseIfBlock(e){}exitElseIfBlock(e){}enterElseBlock(e){}exitElseBlock(e){}enterBraceBlock(e){}exitBraceBlock(e){}enterLoop(e){}exitLoop(e){}enterAssignmentExpr(e){}exitAssignmentExpr(e){}enterFuncExpr(e){}exitFuncExpr(e){}enterAtomExpr(e){}exitAtomExpr(e){}enterOrExpr(e){}exitOrExpr(e){}enterAdditiveExpr(e){}exitAdditiveExpr(e){}enterRelationalExpr(e){}exitRelationalExpr(e){}enterPlusExpr(e){}exitPlusExpr(e){}enterNotExpr(e){}exitNotExpr(e){}enterUnaryMinusExpr(e){}exitUnaryMinusExpr(e){}enterCreationExpr(e){}exitCreationExpr(e){}enterParenthesizedExpr(e){}exitParenthesizedExpr(e){}enterMultiplicationExpr(e){}exitMultiplicationExpr(e){}enterEqualityExpr(e){}exitEqualityExpr(e){}enterAndExpr(e){}exitAndExpr(e){}enterNumberAtom(e){}exitNumberAtom(e){}enterBooleanAtom(e){}exitBooleanAtom(e){}enterIdAtom(e){}exitIdAtom(e){}enterStringAtom(e){}exitStringAtom(e){}enterNilAtom(e){}exitNilAtom(e){}enterParExpr(e){}exitParExpr(e){}enterCondition(e){}exitCondition(e){}enterInExpr(e){}exitInExpr(e){}}const Yf=[4,1,68,605,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,2,50,7,50,2,51,7,51,2,52,7,52,2,53,7,53,2,54,7,54,2,55,7,55,1,0,3,0,114,8,0,1,0,1,0,3,0,118,8,0,1,0,1,0,1,0,1,0,3,0,124,8,0,1,0,3,0,127,8,0,1,0,1,0,1,0,3,0,132,8,0,1,1,1,1,3,1,136,8,1,1,1,3,1,139,8,1,1,2,1,2,4,2,143,8,2,11,2,12,2,144,1,2,1,2,5,2,149,8,2,10,2,12,2,152,9,2,1,2,3,2,155,8,2,1,3,1,3,3,3,159,8,3,1,3,1,3,5,3,163,8,3,10,3,12,3,166,9,3,1,3,1,3,1,3,3,3,171,8,3,1,3,1,3,1,3,3,3,176,8,3,3,3,178,8,3,1,4,1,4,1,4,3,4,183,8,4,1,4,3,4,186,8,4,1,4,3,4,189,8,4,1,5,1,5,1,6,3,6,194,8,6,1,6,3,6,197,8,6,1,6,1,6,3,6,201,8,6,1,6,3,6,204,8,6,1,6,3,6,207,8,6,1,6,1,6,3,6,211,8,6,1,7,1,7,1,7,1,7,1,7,1,7,1,7,3,7,220,8,7,1,7,1,7,3,7,224,8,7,3,7,226,8,7,1,8,1,8,1,8,3,8,231,8,8,1,9,1,9,1,10,1,10,1,11,1,11,1,12,4,12,240,8,12,11,12,12,12,241,1,13,1,13,3,13,246,8,13,1,13,3,13,249,8,13,1,13,1,13,1,13,3,13,254,8,13,3,13,256,8,13,1,14,1,14,1,15,1,15,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,3,16,273,8,16,1,16,1,16,1,16,1,16,1,16,3,16,280,8,16,1,17,1,17,1,17,3,17,285,8,17,1,18,1,18,1,18,3,18,290,8,18,1,19,1,19,1,19,3,19,295,8,19,1,19,3,19,298,8,19,1,19,1,19,3,19,302,8,19,1,20,1,20,1,20,3,20,307,8,20,1,20,3,20,310,8,20,1,20,1,20,3,20,314,8,20,1,21,1,21,1,21,3,21,319,8,21,1,22,1,22,1,22,1,22,1,22,5,22,326,8,22,10,22,12,22,329,9,22,5,22,331,8,22,10,22,12,22,334,9,22,1,22,1,22,3,22,338,8,22,1,23,3,23,341,8,23,1,23,1,23,1,23,1,23,3,23,347,8,23,1,23,3,23,350,8,23,1,23,3,23,353,8,23,1,23,3,23,356,8,23,1,24,1,24,1,24,3,24,361,8,24,1,25,3,25,364,8,25,1,25,1,25,1,25,3,25,369,8,25,1,25,1,25,1,25,3,25,374,8,25,1,25,1,25,1,25,1,25,1,25,3,25,381,8,25,1,25,1,25,1,25,3,25,386,8,25,1,26,1,26,1,26,5,26,391,8,26,10,26,12,26,394,9,26,1,27,1,27,1,28,1,28,1,29,1,29,3,29,402,8,29,1,30,1,30,3,30,406,8,30,1,30,1,30,1,31,3,31,411,8,31,1,31,1,31,1,31,1,32,1,32,1,32,3,32,419,8,32,1,32,1,32,1,32,3,32,424,8,32,1,32,1,32,1,32,3,32,429,8,32,3,32,431,8,32,1,33,1,33,1,34,1,34,1,35,1,35,1,36,1,36,1,36,1,36,5,36,443,8,36,10,36,12,36,446,9,36,1,36,3,36,449,8,36,1,37,1,37,1,38,1,38,1,38,5,38,456,8,38,10,38,12,38,459,9,38,1,38,3,38,462,8,38,1,39,1,39,3,39,466,8,39,1,40,1,40,1,40,1,41,1,41,5,41,473,8,41,10,41,12,41,476,9,41,1,41,3,41,479,8,41,1,42,1,42,1,42,1,43,1,43,3,43,486,8,43,1,43,1,43,1,44,1,44,1,44,1,45,1,45,5,45,495,8,45,10,45,12,45,498,9,45,1,45,3,45,501,8,45,1,46,1,46,1,46,1,46,1,47,1,47,1,47,1,47,1,47,1,48,1,48,1,48,1,49,1,49,3,49,517,8,49,1,49,1,49,1,50,1,50,1,50,1,50,1,50,1,50,1,50,3,50,528,8,50,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,3,51,539,8,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,3,51,550,8,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,51,5,51,573,8,51,10,51,12,51,576,9,51,1,52,1,52,1,52,1,52,1,52,3,52,583,8,52,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,1,53,3,53,594,8,53,1,54,1,54,1,54,3,54,599,8,54,1,55,1,55,1,55,1,55,1,55,0,1,102,56,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,0,10,2,0,57,57,60,60,2,0,8,8,17,17,2,0,9,9,16,16,2,0,10,10,21,21,1,0,22,24,1,0,20,21,1,0,16,19,1,0,14,15,1,0,58,59,1,0,34,35,672,0,131,1,0,0,0,2,133,1,0,0,0,4,154,1,0,0,0,6,177,1,0,0,0,8,188,1,0,0,0,10,190,1,0,0,0,12,210,1,0,0,0,14,225,1,0,0,0,16,230,1,0,0,0,18,232,1,0,0,0,20,234,1,0,0,0,22,236,1,0,0,0,24,239,1,0,0,0,26,255,1,0,0,0,28,257,1,0,0,0,30,259,1,0,0,0,32,279,1,0,0,0,34,284,1,0,0,0,36,289,1,0,0,0,38,301,1,0,0,0,40,313,1,0,0,0,42,315,1,0,0,0,44,320,1,0,0,0,46,355,1,0,0,0,48,357,1,0,0,0,50,385,1,0,0,0,52,387,1,0,0,0,54,395,1,0,0,0,56,397,1,0,0,0,58,399,1,0,0,0,60,403,1,0,0,0,62,410,1,0,0,0,64,430,1,0,0,0,66,432,1,0,0,0,68,434,1,0,0,0,70,436,1,0,0,0,72,448,1,0,0,0,74,450,1,0,0,0,76,452,1,0,0,0,78,465,1,0,0,0,80,467,1,0,0,0,82,470,1,0,0,0,84,480,1,0,0,0,86,483,1,0,0,0,88,489,1,0,0,0,90,492,1,0,0,0,92,502,1,0,0,0,94,506,1,0,0,0,96,511,1,0,0,0,98,514,1,0,0,0,100,527,1,0,0,0,102,549,1,0,0,0,104,582,1,0,0,0,106,593,1,0,0,0,108,598,1,0,0,0,110,600,1,0,0,0,112,114,3,2,1,0,113,112,1,0,0,0,113,114,1,0,0,0,114,115,1,0,0,0,115,132,5,0,0,1,116,118,3,2,1,0,117,116,1,0,0,0,117,118,1,0,0,0,118,119,1,0,0,0,119,120,3,4,2,0,120,121,5,0,0,1,121,132,1,0,0,0,122,124,3,2,1,0,123,122,1,0,0,0,123,124,1,0,0,0,124,126,1,0,0,0,125,127,3,4,2,0,126,125,1,0,0,0,126,127,1,0,0,0,127,128,1,0,0,0,128,129,3,24,12,0,129,130,5,0,0,1,130,132,1,0,0,0,131,113,1,0,0,0,131,117,1,0,0,0,131,123,1,0,0,0,132,1,1,0,0,0,133,135,5,6,0,0,134,136,5,67,0,0,135,134,1,0,0,0,135,136,1,0,0,0,136,138,1,0,0,0,137,139,5,68,0,0,138,137,1,0,0,0,138,139,1,0,0,0,139,3,1,0,0,0,140,143,3,6,3,0,141,143,3,12,6,0,142,140,1,0,0,0,142,141,1,0,0,0,143,144,1,0,0,0,144,142,1,0,0,0,144,145,1,0,0,0,145,155,1,0,0,0,146,149,3,6,3,0,147,149,3,12,6,0,148,146,1,0,0,0,148,147,1,0,0,0,149,152,1,0,0,0,150,148,1,0,0,0,150,151,1,0,0,0,151,153,1,0,0,0,152,150,1,0,0,0,153,155,3,8,4,0,154,142,1,0,0,0,154,150,1,0,0,0,155,5,1,0,0,0,156,158,5,43,0,0,157,159,3,20,10,0,158,157,1,0,0,0,158,159,1,0,0,0,159,160,1,0,0,0,160,164,5,32,0,0,161,163,3,12,6,0,162,161,1,0,0,0,163,166,1,0,0,0,164,162,1,0,0,0,164,165,1,0,0,0,165,167,1,0,0,0,166,164,1,0,0,0,167,178,5,33,0,0,168,170,5,43,0,0,169,171,3,20,10,0,170,169,1,0,0,0,170,171,1,0,0,0,171,172,1,0,0,0,172,178,5,32,0,0,173,175,5,43,0,0,174,176,3,20,10,0,175,174,1,0,0,0,175,176,1,0,0,0,176,178,1,0,0,0,177,156,1,0,0,0,177,168,1,0,0,0,177,173,1,0,0,0,178,7,1,0,0,0,179,185,5,53,0,0,180,182,5,30,0,0,181,183,3,10,5,0,182,181,1,0,0,0,182,183,1,0,0,0,183,184,1,0,0,0,184,186,5,31,0,0,185,180,1,0,0,0,185,186,1,0,0,0,186,189,1,0,0,0,187,189,5,55,0,0,188,179,1,0,0,0,188,187,1,0,0,0,189,9,1,0,0,0,190,191,7,0,0,0,191,11,1,0,0,0,192,194,3,18,9,0,193,192,1,0,0,0,193,194,1,0,0,0,194,196,1,0,0,0,195,197,3,14,7,0,196,195,1,0,0,0,196,197,1,0,0,0,197,198,1,0,0,0,198,200,3,20,10,0,199,201,3,22,11,0,200,199,1,0,0,0,200,201,1,0,0,0,201,203,1,0,0,0,202,204,3,16,8,0,203,202,1,0,0,0,203,204,1,0,0,0,204,206,1,0,0,0,205,207,5,11,0,0,206,205,1,0,0,0,206,207,1,0,0,0,207,211,1,0,0,0,208,211,3,14,7,0,209,211,3,18,9,0,210,193,1,0,0,0,210,208,1,0,0,0,210,209,1,0,0,0,211,13,1,0,0,0,212,213,5,8,0,0,213,214,3,20,10,0,214,215,5,9,0,0,215,226,1,0,0,0,216,217,5,8,0,0,217,219,3,20,10,0,218,220,5,16,0,0,219,218,1,0,0,0,219,220,1,0,0,0,220,226,1,0,0,0,221,223,7,1,0,0,222,224,7,2,0,0,223,222,1,0,0,0,223,224,1,0,0,0,224,226,1,0,0,0,225,212,1,0,0,0,225,216,1,0,0,0,225,221,1,0,0,0,226,15,1,0,0,0,227,228,5,48,0,0,228,231,3,20,10,0,229,231,5,48,0,0,230,227,1,0,0,0,230,229,1,0,0,0,231,17,1,0,0,0,232,233,5,55,0,0,233,19,1,0,0,0,234,235,7,0,0,0,235,21,1,0,0,0,236,237,5,58,0,0,237,23,1,0,0,0,238,240,3,32,16,0,239,238,1,0,0,0,240,241,1,0,0,0,241,239,1,0,0,0,241,242,1,0,0,0,242,25,1,0,0,0,243,245,5,40,0,0,244,246,3,102,51,0,245,244,1,0,0,0,245,246,1,0,0,0,246,248,1,0,0,0,247,249,5,27,0,0,248,247,1,0,0,0,248,249,1,0,0,0,249,256,1,0,0,0,250,251,5,54,0,0,251,253,3,64,32,0,252,254,5,66,0,0,253,252,1,0,0,0,253,254,1,0,0,0,254,256,1,0,0,0,255,243,1,0,0,0,255,250,1,0,0,0,256,27,1,0,0,0,257,258,3,30,15,0,258,29,1,0,0,0,259,260,5,64,0,0,260,31,1,0,0,0,261,280,3,90,45,0,262,280,3,34,17,0,263,280,3,36,18,0,264,280,3,38,19,0,265,280,3,40,20,0,266,280,3,44,22,0,267,280,3,100,50,0,268,280,3,42,21,0,269,280,3,48,24,0,270,272,3,64,32,0,271,273,5,66,0,0,272,271,1,0,0,0,272,273,1,0,0,0,273,280,1,0,0,0,274,280,3,26,13,0,275,280,3,28,14,0,276,280,3,82,41,0,277,278,5,63,0,0,278,280,6,16,-1,0,279,261,1,0,0,0,279,262,1,0,0,0,279,263,1,0,0,0,279,264,1,0,0,0,279,265,1,0,0,0,279,266,1,0,0,0,279,267,1,0,0,0,279,268,1,0,0,0,279,269,1,0,0,0,279,270,1,0,0,0,279,274,1,0,0,0,279,275,1,0,0,0,279,276,1,0,0,0,279,277,1,0,0,0,280,33,1,0,0,0,281,282,5,42,0,0,282,285,3,98,49,0,283,285,5,42,0,0,284,281,1,0,0,0,284,283,1,0,0,0,285,35,1,0,0,0,286,287,5,44,0,0,287,290,3,98,49,0,288,290,5,44,0,0,289,286,1,0,0,0,289,288,1,0,0,0,290,37,1,0,0,0,291,297,5,45,0,0,292,294,5,30,0,0,293,295,3,104,52,0,294,293,1,0,0,0,294,295,1,0,0,0,295,296,1,0,0,0,296,298,5,31,0,0,297,292,1,0,0,0,297,298,1,0,0,0,298,299,1,0,0,0,299,302,3,98,49,0,300,302,5,45,0,0,301,291,1,0,0,0,301,300,1,0,0,0,302,39,1,0,0,0,303,309,5,46,0,0,304,306,5,30,0,0,305,307,3,104,52,0,306,305,1,0,0,0,306,307,1,0,0,0,307,308,1,0,0,0,308,310,5,31,0,0,309,304,1,0,0,0,309,310,1,0,0,0,310,311,1,0,0,0,311,314,3,98,49,0,312,314,5,46,0,0,313,303,1,0,0,0,313,312,1,0,0,0,314,41,1,0,0,0,315,318,3,46,23,0,316,319,5,27,0,0,317,319,3,98,49,0,318,316,1,0,0,0,318,317,1,0,0,0,318,319,1,0,0,0,319,43,1,0,0,0,320,321,5,47,0,0,321,322,5,30,0,0,322,332,3,20,10,0,323,327,5,28,0,0,324,326,3,20,10,0,325,324,1,0,0,0,326,329,1,0,0,0,327,325,1,0,0,0,327,328,1,0,0,0,328,331,1,0,0,0,329,327,1,0,0,0,330,323,1,0,0,0,331,334,1,0,0,0,332,330,1,0,0,0,332,333,1,0,0,0,333,335,1,0,0,0,334,332,1,0,0,0,335,337,5,31,0,0,336,338,5,27,0,0,337,336,1,0,0,0,337,338,1,0,0,0,338,45,1,0,0,0,339,341,3,62,31,0,340,339,1,0,0,0,340,341,1,0,0,0,341,342,1,0,0,0,342,343,5,41,0,0,343,349,3,68,34,0,344,346,5,30,0,0,345,347,3,76,38,0,346,345,1,0,0,0,346,347,1,0,0,0,347,348,1,0,0,0,348,350,5,31,0,0,349,344,1,0,0,0,349,350,1,0,0,0,350,356,1,0,0,0,351,353,3,62,31,0,352,351,1,0,0,0,352,353,1,0,0,0,353,354,1,0,0,0,354,356,5,41,0,0,355,340,1,0,0,0,355,352,1,0,0,0,356,47,1,0,0,0,357,360,3,50,25,0,358,361,5,27,0,0,359,361,3,98,49,0,360,358,1,0,0,0,360,359,1,0,0,0,360,361,1,0,0,0,361,49,1,0,0,0,362,364,3,62,31,0,363,362,1,0,0,0,363,364,1,0,0,0,364,373,1,0,0,0,365,366,3,54,27,0,366,367,5,10,0,0,367,369,1,0,0,0,368,365,1,0,0,0,368,369,1,0,0,0,369,370,1,0,0,0,370,371,3,56,28,0,371,372,5,56,0,0,372,374,1,0,0,0,373,368,1,0,0,0,373,374,1,0,0,0,374,375,1,0,0,0,375,386,3,52,26,0,376,386,3,62,31,0,377,378,3,54,27,0,378,379,5,10,0,0,379,381,1,0,0,0,380,377,1,0,0,0,380,381,1,0,0,0,381,382,1,0,0,0,382,383,3,56,28,0,383,384,5,56,0,0,384,386,1,0,0,0,385,363,1,0,0,0,385,376,1,0,0,0,385,380,1,0,0,0,386,51,1,0,0,0,387,392,3,58,29,0,388,389,5,56,0,0,389,391,3,58,29,0,390,388,1,0,0,0,391,394,1,0,0,0,392,390,1,0,0,0,392,393,1,0,0,0,393,53,1,0,0,0,394,392,1,0,0,0,395,396,7,0,0,0,396,55,1,0,0,0,397,398,7,0,0,0,398,57,1,0,0,0,399,401,3,74,37,0,400,402,3,60,30,0,401,400,1,0,0,0,401,402,1,0,0,0,402,59,1,0,0,0,403,405,5,30,0,0,404,406,3,76,38,0,405,404,1,0,0,0,405,406,1,0,0,0,406,407,1,0,0,0,407,408,5,31,0,0,408,61,1,0,0,0,409,411,3,70,35,0,410,409,1,0,0,0,410,411,1,0,0,0,411,412,1,0,0,0,412,413,3,72,36,0,413,414,5,29,0,0,414,63,1,0,0,0,415,416,3,54,27,0,416,417,5,10,0,0,417,419,1,0,0,0,418,415,1,0,0,0,418,419,1,0,0,0,419,420,1,0,0,0,420,421,3,56,28,0,421,423,5,7,0,0,422,424,3,66,33,0,423,422,1,0,0,0,423,424,1,0,0,0,424,431,1,0,0,0,425,426,3,54,27,0,426,428,7,3,0,0,427,429,3,56,28,0,428,427,1,0,0,0,428,429,1,0,0,0,429,431,1,0,0,0,430,418,1,0,0,0,430,425,1,0,0,0,431,65,1,0,0,0,432,433,5,65,0,0,433,67,1,0,0,0,434,435,7,0,0,0,435,69,1,0,0,0,436,437,7,0,0,0,437,71,1,0,0,0,438,449,3,104,52,0,439,444,5,57,0,0,440,441,5,28,0,0,441,443,5,57,0,0,442,440,1,0,0,0,443,446,1,0,0,0,444,442,1,0,0,0,444,445,1,0,0,0,445,449,1,0,0,0,446,444,1,0,0,0,447,449,5,60,0,0,448,438,1,0,0,0,448,439,1,0,0,0,448,447,1,0,0,0,449,73,1,0,0,0,450,451,7,0,0,0,451,75,1,0,0,0,452,457,3,78,39,0,453,454,5,28,0,0,454,456,3,78,39,0,455,453,1,0,0,0,456,459,1,0,0,0,457,455,1,0,0,0,457,458,1,0,0,0,458,461,1,0,0,0,459,457,1,0,0,0,460,462,5,28,0,0,461,460,1,0,0,0,461,462,1,0,0,0,462,77,1,0,0,0,463,466,3,80,40,0,464,466,3,102,51,0,465,463,1,0,0,0,465,464,1,0,0,0,466,79,1,0,0,0,467,468,3,70,35,0,468,469,5,57,0,0,469,81,1,0,0,0,470,474,3,84,42,0,471,473,3,86,43,0,472,471,1,0,0,0,473,476,1,0,0,0,474,472,1,0,0,0,474,475,1,0,0,0,475,478,1,0,0,0,476,474,1,0,0,0,477,479,3,88,44,0,478,477,1,0,0,0,478,479,1,0,0,0,479,83,1,0,0,0,480,481,5,49,0,0,481,482,3,98,49,0,482,85,1,0,0,0,483,485,5,50,0,0,484,486,3,60,30,0,485,484,1,0,0,0,485,486,1,0,0,0,486,487,1,0,0,0,487,488,3,98,49,0,488,87,1,0,0,0,489,490,5,51,0,0,490,491,3,98,49,0,491,89,1,0,0,0,492,496,3,92,46,0,493,495,3,94,47,0,494,493,1,0,0,0,495,498,1,0,0,0,496,494,1,0,0,0,496,497,1,0,0,0,497,500,1,0,0,0,498,496,1,0,0,0,499,501,3,96,48,0,500,499,1,0,0,0,500,501,1,0,0,0,501,91,1,0,0,0,502,503,5,37,0,0,503,504,3,106,53,0,504,505,3,98,49,0,505,93,1,0,0,0,506,507,5,38,0,0,507,508,5,37,0,0,508,509,3,106,53,0,509,510,3,98,49,0,510,95,1,0,0,0,511,512,5,38,0,0,512,513,3,98,49,0,513,97,1,0,0,0,514,516,5,32,0,0,515,517,3,24,12,0,516,515,1,0,0,0,516,517,1,0,0,0,517,518,1,0,0,0,518,519,5,33,0,0,519,99,1,0,0,0,520,521,5,39,0,0,521,522,3,106,53,0,522,523,3,98,49,0,523,528,1,0,0,0,524,525,5,39,0,0,525,528,3,106,53,0,526,528,5,39,0,0,527,520,1,0,0,0,527,524,1,0,0,0,527,526,1,0,0,0,528,101,1,0,0,0,529,530,6,51,-1,0,530,550,3,104,52,0,531,532,5,21,0,0,532,550,3,102,51,13,533,534,5,26,0,0,534,550,3,102,51,12,535,536,3,56,28,0,536,537,5,56,0,0,537,539,1,0,0,0,538,535,1,0,0,0,538,539,1,0,0,0,539,540,1,0,0,0,540,550,3,52,26,0,541,550,3,42,21,0,542,543,5,30,0,0,543,544,3,102,51,0,544,545,5,31,0,0,545,550,1,0,0,0,546,547,3,62,31,0,547,548,3,102,51,1,548,550,1,0,0,0,549,529,1,0,0,0,549,531,1,0,0,0,549,533,1,0,0,0,549,538,1,0,0,0,549,541,1,0,0,0,549,542,1,0,0,0,549,546,1,0,0,0,550,574,1,0,0,0,551,552,10,11,0,0,552,553,7,4,0,0,553,573,3,102,51,12,554,555,10,10,0,0,555,556,7,5,0,0,556,573,3,102,51,11,557,558,10,9,0,0,558,559,7,6,0,0,559,573,3,102,51,10,560,561,10,8,0,0,561,562,7,7,0,0,562,573,3,102,51,9,563,564,10,7,0,0,564,565,5,13,0,0,565,573,3,102,51,8,566,567,10,6,0,0,567,568,5,12,0,0,568,573,3,102,51,7,569,570,10,5,0,0,570,571,5,20,0,0,571,573,3,102,51,6,572,551,1,0,0,0,572,554,1,0,0,0,572,557,1,0,0,0,572,560,1,0,0,0,572,563,1,0,0,0,572,566,1,0,0,0,572,569,1,0,0,0,573,576,1,0,0,0,574,572,1,0,0,0,574,575,1,0,0,0,575,103,1,0,0,0,576,574,1,0,0,0,577,583,7,8,0,0,578,583,7,9,0,0,579,583,5,57,0,0,580,583,5,60,0,0,581,583,5,36,0,0,582,577,1,0,0,0,582,578,1,0,0,0,582,579,1,0,0,0,582,580,1,0,0,0,582,581,1,0,0,0,583,105,1,0,0,0,584,585,5,30,0,0,585,586,3,108,54,0,586,587,5,31,0,0,587,594,1,0,0,0,588,589,5,30,0,0,589,594,3,108,54,0,590,591,5,30,0,0,591,594,5,31,0,0,592,594,5,30,0,0,593,584,1,0,0,0,593,588,1,0,0,0,593,590,1,0,0,0,593,592,1,0,0,0,594,107,1,0,0,0,595,599,3,104,52,0,596,599,3,102,51,0,597,599,3,110,55,0,598,595,1,0,0,0,598,596,1,0,0,0,598,597,1,0,0,0,599,109,1,0,0,0,600,601,5,57,0,0,601,602,5,52,0,0,602,603,5,57,0,0,603,111,1,0,0,0,87,113,117,123,126,131,135,138,142,144,148,150,154,158,164,170,175,177,182,185,188,193,196,200,203,206,210,219,223,225,230,241,245,248,253,255,272,279,284,289,294,297,301,306,309,313,318,327,332,337,340,346,349,352,355,360,363,368,373,380,385,392,401,405,410,418,423,428,430,444,448,457,461,465,474,478,485,496,500,516,527,538,549,572,574,582,593,598],We=new T.atn.ATNDeserializer().deserialize(Yf),Xf=We.decisionToState.map((t,e)=>new T.dfa.DFA(t,e)),Qf=new T.PredictionContextCache,A=class extends T.Parser{constructor(e){super(e),this._interp=new T.atn.ParserATNSimulator(this,We,Xf,Qf),this.ruleNames=A.ruleNames,this.literalNames=A.literalNames,this.symbolicNames=A.symbolicNames}get atn(){return We}sempred(e,n,i){switch(n){case 51:return this.expr_sempred(e,i);default:throw"No predicate with index:"+n}}expr_sempred(e,n){switch(n){case 0:return this.precpred(this._ctx,11);case 1:return this.precpred(this._ctx,10);case 2:return this.precpred(this._ctx,9);case 3:return this.precpred(this._ctx,8);case 4:return this.precpred(this._ctx,7);case 5:return this.precpred(this._ctx,6);case 6:return this.precpred(this._ctx,5);default:throw"No predicate with index:"+n}}prog(){let e=new yo(this,this._ctx,this.state);this.enterRule(e,0,A.RULE_prog);var n=0;try{this.state=131,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,4,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=113,this._errHandler.sync(this),n=this._input.LA(1),n===6&&(this.state=112,this.title()),this.state=115,this.match(A.EOF);break;case 2:this.enterOuterAlt(e,2),this.state=117,this._errHandler.sync(this),n=this._input.LA(1),n===6&&(this.state=116,this.title()),this.state=119,this.head(),this.state=120,this.match(A.EOF);break;case 3:this.enterOuterAlt(e,3),this.state=123,this._errHandler.sync(this),n=this._input.LA(1),n===6&&(this.state=122,this.title()),this.state=126,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,3,this._ctx);i===1&&(this.state=125,this.head()),this.state=128,this.block(),this.state=129,this.match(A.EOF);break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}title(){let e=new He(this,this._ctx,this.state);this.enterRule(e,2,A.RULE_title);var n=0;try{this.enterOuterAlt(e,1),this.state=133,this.match(A.TITLE),this.state=135,this._errHandler.sync(this),n=this._input.LA(1),n===67&&(this.state=134,this.match(A.TITLE_CONTENT)),this.state=138,this._errHandler.sync(this),n=this._input.LA(1),n===68&&(this.state=137,this.match(A.TITLE_END))}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}head(){let e=new $e(this,this._ctx,this.state);this.enterRule(e,4,A.RULE_head);try{this.state=154,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,11,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=142,this._errHandler.sync(this);var i=1;do{switch(i){case 1:switch(this.state=142,this._errHandler.sync(this),this._input.LA(1)){case 43:this.state=140,this.group();break;case 8:case 17:case 55:case 57:case 60:this.state=141,this.participant();break;default:throw new T.error.NoViableAltException(this)}break;default:throw new T.error.NoViableAltException(this)}this.state=144,this._errHandler.sync(this),i=this._interp.adaptivePredict(this._input,8,this._ctx)}while(i!=2&&i!=T.atn.ATN.INVALID_ALT_NUMBER);break;case 2:this.enterOuterAlt(e,2),this.state=150,this._errHandler.sync(this);for(var i=this._interp.adaptivePredict(this._input,10,this._ctx);i!=2&&i!=T.atn.ATN.INVALID_ALT_NUMBER;){if(i===1)switch(this.state=148,this._errHandler.sync(this),this._input.LA(1)){case 43:this.state=146,this.group();break;case 8:case 17:case 55:case 57:case 60:this.state=147,this.participant();break;default:throw new T.error.NoViableAltException(this)}this.state=152,this._errHandler.sync(this),i=this._interp.adaptivePredict(this._input,10,this._ctx)}this.state=153,this.starterExp();break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}group(){let e=new K8(this,this._ctx,this.state);this.enterRule(e,6,A.RULE_group);var n=0;try{this.state=177,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,16,this._ctx);switch(i){case 1:for(this.enterOuterAlt(e,1),this.state=156,this.match(A.GROUP),this.state=158,this._errHandler.sync(this),n=this._input.LA(1),(n===57||n===60)&&(this.state=157,this.name()),this.state=160,this.match(A.OBRACE),this.state=164,this._errHandler.sync(this),n=this._input.LA(1);n===8||n===17||(n-55&-32)==0&&(1<<n-55&37)!==0;)this.state=161,this.participant(),this.state=166,this._errHandler.sync(this),n=this._input.LA(1);this.state=167,this.match(A.CBRACE);break;case 2:this.enterOuterAlt(e,2),this.state=168,this.match(A.GROUP),this.state=170,this._errHandler.sync(this),n=this._input.LA(1),(n===57||n===60)&&(this.state=169,this.name()),this.state=172,this.match(A.OBRACE);break;case 3:this.enterOuterAlt(e,3),this.state=173,this.match(A.GROUP),this.state=175,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,15,this._ctx);i===1&&(this.state=174,this.name());break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}starterExp(){let e=new Ve(this,this._ctx,this.state);this.enterRule(e,8,A.RULE_starterExp);var n=0;try{switch(this.state=188,this._errHandler.sync(this),this._input.LA(1)){case 53:this.enterOuterAlt(e,1),this.state=179,this.match(A.STARTER_LXR),this.state=185,this._errHandler.sync(this),n=this._input.LA(1),n===30&&(this.state=180,this.match(A.OPAR),this.state=182,this._errHandler.sync(this),n=this._input.LA(1),(n===57||n===60)&&(this.state=181,this.starter()),this.state=184,this.match(A.CPAR));break;case 55:this.enterOuterAlt(e,2),this.state=187,this.match(A.ANNOTATION);break;default:throw new T.error.NoViableAltException(this)}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}starter(){let e=new Ge(this,this._ctx,this.state);this.enterRule(e,10,A.RULE_starter);var n=0;try{this.enterOuterAlt(e,1),this.state=190,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}participant(){let e=new f0(this,this._ctx,this.state);this.enterRule(e,12,A.RULE_participant);var n=0;try{this.state=210,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,25,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=193,this._errHandler.sync(this),n=this._input.LA(1),n===55&&(this.state=192,this.participantType()),this.state=196,this._errHandler.sync(this),n=this._input.LA(1),(n===8||n===17)&&(this.state=195,this.stereotype()),this.state=198,this.name(),this.state=200,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,22,this._ctx);i===1&&(this.state=199,this.width()),this.state=203,this._errHandler.sync(this),n=this._input.LA(1),n===48&&(this.state=202,this.label()),this.state=206,this._errHandler.sync(this),n=this._input.LA(1),n===11&&(this.state=205,this.match(A.COLOR));break;case 2:this.enterOuterAlt(e,2),this.state=208,this.stereotype();break;case 3:this.enterOuterAlt(e,3),this.state=209,this.participantType();break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}stereotype(){let e=new je(this,this._ctx,this.state);this.enterRule(e,14,A.RULE_stereotype);var n=0;try{this.state=225,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,28,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=212,this.match(A.SOPEN),this.state=213,this.name(),this.state=214,this.match(A.SCLOSE);break;case 2:this.enterOuterAlt(e,2),this.state=216,this.match(A.SOPEN),this.state=217,this.name(),this.state=219,this._errHandler.sync(this),n=this._input.LA(1),n===16&&(this.state=218,this.match(A.GT));break;case 3:this.enterOuterAlt(e,3),this.state=221,n=this._input.LA(1),n===8||n===17?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this),this.state=223,this._errHandler.sync(this),n=this._input.LA(1),(n===9||n===16)&&(this.state=222,n=this._input.LA(1),n===9||n===16?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this));break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}label(){let e=new qe(this,this._ctx,this.state);this.enterRule(e,16,A.RULE_label);try{this.state=230,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,29,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=227,this.match(A.AS),this.state=228,this.name();break;case 2:this.enterOuterAlt(e,2),this.state=229,this.match(A.AS);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}participantType(){let e=new Ke(this,this._ctx,this.state);this.enterRule(e,18,A.RULE_participantType);try{this.enterOuterAlt(e,1),this.state=232,this.match(A.ANNOTATION)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}name(){let e=new G4(this,this._ctx,this.state);this.enterRule(e,20,A.RULE_name);var n=0;try{this.enterOuterAlt(e,1),this.state=234,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}width(){let e=new Ye(this,this._ctx,this.state);this.enterRule(e,22,A.RULE_width);try{this.enterOuterAlt(e,1),this.state=236,this.match(A.INT)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}block(){let e=new Y8(this,this._ctx,this.state);this.enterRule(e,24,A.RULE_block);var n=0;try{this.enterOuterAlt(e,1),this.state=239,this._errHandler.sync(this),n=this._input.LA(1);do this.state=238,this.stat(),this.state=241,this._errHandler.sync(this),n=this._input.LA(1);while((n-34&-32)==0&&(1<<n-34&1737539055)!==0)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}ret(){let e=new Xe(this,this._ctx,this.state);this.enterRule(e,26,A.RULE_ret);var n=0;try{switch(this.state=255,this._errHandler.sync(this),this._input.LA(1)){case 40:this.enterOuterAlt(e,1),this.state=243,this.match(A.RETURN),this.state=245,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,31,this._ctx);i===1&&(this.state=244,this.expr(0)),this.state=248,this._errHandler.sync(this),n=this._input.LA(1),n===27&&(this.state=247,this.match(A.SCOL));break;case 54:this.enterOuterAlt(e,2),this.state=250,this.match(A.ANNOTATION_RET),this.state=251,this.asyncMessage(),this.state=253,this._errHandler.sync(this),n=this._input.LA(1),n===66&&(this.state=252,this.match(A.EVENT_END));break;default:throw new T.error.NoViableAltException(this)}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}divider(){let e=new Qe(this,this._ctx,this.state);this.enterRule(e,28,A.RULE_divider);try{this.enterOuterAlt(e,1),this.state=257,this.dividerNote()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}dividerNote(){let e=new Je(this,this._ctx,this.state);this.enterRule(e,30,A.RULE_dividerNote);try{this.enterOuterAlt(e,1),this.state=259,this.match(A.DIVIDER)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}stat(){let e=new X8(this,this._ctx,this.state);this.enterRule(e,32,A.RULE_stat);var n=0;try{this.state=279,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,36,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=261,this.alt();break;case 2:this.enterOuterAlt(e,2),this.state=262,this.par();break;case 3:this.enterOuterAlt(e,3),this.state=263,this.opt();break;case 4:this.enterOuterAlt(e,4),this.state=264,this.critical();break;case 5:this.enterOuterAlt(e,5),this.state=265,this.section();break;case 6:this.enterOuterAlt(e,6),this.state=266,this.ref();break;case 7:this.enterOuterAlt(e,7),this.state=267,this.loop();break;case 8:this.enterOuterAlt(e,8),this.state=268,this.creation();break;case 9:this.enterOuterAlt(e,9),this.state=269,this.message();break;case 10:this.enterOuterAlt(e,10),this.state=270,this.asyncMessage(),this.state=272,this._errHandler.sync(this),n=this._input.LA(1),n===66&&(this.state=271,this.match(A.EVENT_END));break;case 11:this.enterOuterAlt(e,11),this.state=274,this.ret();break;case 12:this.enterOuterAlt(e,12),this.state=275,this.divider();break;case 13:this.enterOuterAlt(e,13),this.state=276,this.tcf();break;case 14:this.enterOuterAlt(e,14),this.state=277,e._OTHER=this.match(A.OTHER),console.log("unknown char: "+(e._OTHER===null?null:e._OTHER.text));break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}par(){let e=new et(this,this._ctx,this.state);this.enterRule(e,34,A.RULE_par);try{this.state=284,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,37,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=281,this.match(A.PAR),this.state=282,this.braceBlock();break;case 2:this.enterOuterAlt(e,2),this.state=283,this.match(A.PAR);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}opt(){let e=new tt(this,this._ctx,this.state);this.enterRule(e,36,A.RULE_opt);try{this.state=289,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,38,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=286,this.match(A.OPT),this.state=287,this.braceBlock();break;case 2:this.enterOuterAlt(e,2),this.state=288,this.match(A.OPT);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}critical(){let e=new nt(this,this._ctx,this.state);this.enterRule(e,38,A.RULE_critical);var n=0;try{this.state=301,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,41,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=291,this.match(A.CRITICAL),this.state=297,this._errHandler.sync(this),n=this._input.LA(1),n===30&&(this.state=292,this.match(A.OPAR),this.state=294,this._errHandler.sync(this),n=this._input.LA(1),(n-34&-32)==0&&(1<<n-34&125829127)!==0&&(this.state=293,this.atom()),this.state=296,this.match(A.CPAR)),this.state=299,this.braceBlock();break;case 2:this.enterOuterAlt(e,2),this.state=300,this.match(A.CRITICAL);break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}section(){let e=new it(this,this._ctx,this.state);this.enterRule(e,40,A.RULE_section);var n=0;try{this.state=313,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,44,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=303,this.match(A.SECTION),this.state=309,this._errHandler.sync(this),n=this._input.LA(1),n===30&&(this.state=304,this.match(A.OPAR),this.state=306,this._errHandler.sync(this),n=this._input.LA(1),(n-34&-32)==0&&(1<<n-34&125829127)!==0&&(this.state=305,this.atom()),this.state=308,this.match(A.CPAR)),this.state=311,this.braceBlock();break;case 2:this.enterOuterAlt(e,2),this.state=312,this.match(A.SECTION);break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}creation(){let e=new Q8(this,this._ctx,this.state);this.enterRule(e,42,A.RULE_creation);try{this.enterOuterAlt(e,1),this.state=315,this.creationBody(),this.state=318,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,45,this._ctx);n===1?(this.state=316,this.match(A.SCOL)):n===2&&(this.state=317,this.braceBlock())}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}ref(){let e=new st(this,this._ctx,this.state);this.enterRule(e,44,A.RULE_ref);var n=0;try{for(this.enterOuterAlt(e,1),this.state=320,this.match(A.REF),this.state=321,this.match(A.OPAR),this.state=322,this.name(),this.state=332,this._errHandler.sync(this),n=this._input.LA(1);n===28;){for(this.state=323,this.match(A.COMMA),this.state=327,this._errHandler.sync(this),n=this._input.LA(1);n===57||n===60;)this.state=324,this.name(),this.state=329,this._errHandler.sync(this),n=this._input.LA(1);this.state=334,this._errHandler.sync(this),n=this._input.LA(1)}this.state=335,this.match(A.CPAR),this.state=337,this._errHandler.sync(this),n=this._input.LA(1),n===27&&(this.state=336,this.match(A.SCOL))}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}creationBody(){let e=new rt(this,this._ctx,this.state);this.enterRule(e,46,A.RULE_creationBody);var n=0;try{this.state=355,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,53,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=340,this._errHandler.sync(this),n=this._input.LA(1),(n-34&-32)==0&&(1<<n-34&125829127)!==0&&(this.state=339,this.assignment()),this.state=342,this.match(A.NEW),this.state=343,this.construct(),this.state=349,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,51,this._ctx);i===1&&(this.state=344,this.match(A.OPAR),this.state=346,this._errHandler.sync(this),n=this._input.LA(1),((n&-32)==0&&(1<<n&1142947840)!==0||(n-34&-32)==0&&(1<<n-34&125829255)!==0)&&(this.state=345,this.parameters()),this.state=348,this.match(A.CPAR));break;case 2:this.enterOuterAlt(e,2),this.state=352,this._errHandler.sync(this),n=this._input.LA(1),(n-34&-32)==0&&(1<<n-34&125829127)!==0&&(this.state=351,this.assignment()),this.state=354,this.match(A.NEW);break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}message(){let e=new ot(this,this._ctx,this.state);this.enterRule(e,48,A.RULE_message);try{switch(this.enterOuterAlt(e,1),this.state=357,this.messageBody(),this.state=360,this._errHandler.sync(this),this._input.LA(1)){case 27:this.state=358,this.match(A.SCOL);break;case 32:this.state=359,this.braceBlock();break;case-1:case 33:case 34:case 35:case 36:case 37:case 39:case 40:case 41:case 42:case 44:case 45:case 46:case 47:case 49:case 54:case 57:case 58:case 59:case 60:case 63:case 64:break;default:break}}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}messageBody(){let e=new lt(this,this._ctx,this.state);this.enterRule(e,50,A.RULE_messageBody);try{this.state=385,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,59,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=363,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,55,this._ctx);n===1&&(this.state=362,this.assignment()),this.state=373,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,57,this._ctx);if(n===1){this.state=368,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,56,this._ctx);n===1&&(this.state=365,this.from(),this.state=366,this.match(A.ARROW)),this.state=370,this.to(),this.state=371,this.match(A.DOT)}this.state=375,this.func();break;case 2:this.enterOuterAlt(e,2),this.state=376,this.assignment();break;case 3:this.enterOuterAlt(e,3),this.state=380,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,58,this._ctx);n===1&&(this.state=377,this.from(),this.state=378,this.match(A.ARROW)),this.state=382,this.to(),this.state=383,this.match(A.DOT);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}func(){let e=new J8(this,this._ctx,this.state);this.enterRule(e,52,A.RULE_func);try{this.enterOuterAlt(e,1),this.state=387,this.signature(),this.state=392,this._errHandler.sync(this);for(var n=this._interp.adaptivePredict(this._input,60,this._ctx);n!=2&&n!=T.atn.ATN.INVALID_ALT_NUMBER;)n===1&&(this.state=388,this.match(A.DOT),this.state=389,this.signature()),this.state=394,this._errHandler.sync(this),n=this._interp.adaptivePredict(this._input,60,this._ctx)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}from(){let e=new e7(this,this._ctx,this.state);this.enterRule(e,54,A.RULE_from);var n=0;try{this.enterOuterAlt(e,1),this.state=395,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}to(){let e=new u5(this,this._ctx,this.state);this.enterRule(e,56,A.RULE_to);var n=0;try{this.enterOuterAlt(e,1),this.state=397,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}signature(){let e=new t7(this,this._ctx,this.state);this.enterRule(e,58,A.RULE_signature);try{this.enterOuterAlt(e,1),this.state=399,this.methodName(),this.state=401,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,61,this._ctx);n===1&&(this.state=400,this.invocation())}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}invocation(){let e=new n7(this,this._ctx,this.state);this.enterRule(e,60,A.RULE_invocation);var n=0;try{this.enterOuterAlt(e,1),this.state=403,this.match(A.OPAR),this.state=405,this._errHandler.sync(this),n=this._input.LA(1),((n&-32)==0&&(1<<n&1142947840)!==0||(n-34&-32)==0&&(1<<n-34&125829255)!==0)&&(this.state=404,this.parameters()),this.state=407,this.match(A.CPAR)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}assignment(){let e=new h5(this,this._ctx,this.state);this.enterRule(e,62,A.RULE_assignment);try{this.enterOuterAlt(e,1),this.state=410,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,63,this._ctx);n===1&&(this.state=409,this.type()),this.state=412,this.assignee(),this.state=413,this.match(A.ASSIGN)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}asyncMessage(){let e=new i7(this,this._ctx,this.state);this.enterRule(e,64,A.RULE_asyncMessage);var n=0;try{this.state=430,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,67,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=418,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,64,this._ctx);i===1&&(this.state=415,this.from(),this.state=416,this.match(A.ARROW)),this.state=420,this.to(),this.state=421,this.match(A.COL),this.state=423,this._errHandler.sync(this),n=this._input.LA(1),n===65&&(this.state=422,this.content());break;case 2:this.enterOuterAlt(e,2),this.state=425,this.from(),this.state=426,n=this._input.LA(1),n===10||n===21?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this),this.state=428,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,66,this._ctx);i===1&&(this.state=427,this.to());break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}content(){let e=new Lt(this,this._ctx,this.state);this.enterRule(e,66,A.RULE_content);try{this.enterOuterAlt(e,1),this.state=432,this.match(A.EVENT_PAYLOAD_LXR)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}construct(){let e=new at(this,this._ctx,this.state);this.enterRule(e,68,A.RULE_construct);var n=0;try{this.enterOuterAlt(e,1),this.state=434,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}type(){let e=new s7(this,this._ctx,this.state);this.enterRule(e,70,A.RULE_type);var n=0;try{this.enterOuterAlt(e,1),this.state=436,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}assignee(){let e=new ct(this,this._ctx,this.state);this.enterRule(e,72,A.RULE_assignee);var n=0;try{this.state=448,this._errHandler.sync(this);var i=this._interp.adaptivePredict(this._input,69,this._ctx);switch(i){case 1:this.enterOuterAlt(e,1),this.state=438,this.atom();break;case 2:for(this.enterOuterAlt(e,2),this.state=439,this.match(A.ID),this.state=444,this._errHandler.sync(this),n=this._input.LA(1);n===28;)this.state=440,this.match(A.COMMA),this.state=441,this.match(A.ID),this.state=446,this._errHandler.sync(this),n=this._input.LA(1);break;case 3:this.enterOuterAlt(e,3),this.state=447,this.match(A.STRING);break}}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}methodName(){let e=new Ct(this,this._ctx,this.state);this.enterRule(e,74,A.RULE_methodName);var n=0;try{this.enterOuterAlt(e,1),this.state=450,n=this._input.LA(1),n===57||n===60?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}parameters(){let e=new r7(this,this._ctx,this.state);this.enterRule(e,76,A.RULE_parameters);var n=0;try{this.enterOuterAlt(e,1),this.state=452,this.parameter(),this.state=457,this._errHandler.sync(this);for(var i=this._interp.adaptivePredict(this._input,70,this._ctx);i!=2&&i!=T.atn.ATN.INVALID_ALT_NUMBER;)i===1&&(this.state=453,this.match(A.COMMA),this.state=454,this.parameter()),this.state=459,this._errHandler.sync(this),i=this._interp.adaptivePredict(this._input,70,this._ctx);this.state=461,this._errHandler.sync(this),n=this._input.LA(1),n===28&&(this.state=460,this.match(A.COMMA))}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}parameter(){let e=new o7(this,this._ctx,this.state);this.enterRule(e,78,A.RULE_parameter);try{this.state=465,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,72,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=463,this.declaration();break;case 2:this.enterOuterAlt(e,2),this.state=464,this.expr(0);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}declaration(){let e=new ut(this,this._ctx,this.state);this.enterRule(e,80,A.RULE_declaration);try{this.enterOuterAlt(e,1),this.state=467,this.type(),this.state=468,this.match(A.ID)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}tcf(){let e=new ht(this,this._ctx,this.state);this.enterRule(e,82,A.RULE_tcf);var n=0;try{for(this.enterOuterAlt(e,1),this.state=470,this.tryBlock(),this.state=474,this._errHandler.sync(this),n=this._input.LA(1);n===50;)this.state=471,this.catchBlock(),this.state=476,this._errHandler.sync(this),n=this._input.LA(1);this.state=478,this._errHandler.sync(this),n=this._input.LA(1),n===51&&(this.state=477,this.finallyBlock())}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}tryBlock(){let e=new dt(this,this._ctx,this.state);this.enterRule(e,84,A.RULE_tryBlock);try{this.enterOuterAlt(e,1),this.state=480,this.match(A.TRY),this.state=481,this.braceBlock()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}catchBlock(){let e=new l7(this,this._ctx,this.state);this.enterRule(e,86,A.RULE_catchBlock);var n=0;try{this.enterOuterAlt(e,1),this.state=483,this.match(A.CATCH),this.state=485,this._errHandler.sync(this),n=this._input.LA(1),n===30&&(this.state=484,this.invocation()),this.state=487,this.braceBlock()}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}finallyBlock(){let e=new ft(this,this._ctx,this.state);this.enterRule(e,88,A.RULE_finallyBlock);try{this.enterOuterAlt(e,1),this.state=489,this.match(A.FINALLY),this.state=490,this.braceBlock()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}alt(){let e=new gt(this,this._ctx,this.state);this.enterRule(e,90,A.RULE_alt);var n=0;try{this.enterOuterAlt(e,1),this.state=492,this.ifBlock(),this.state=496,this._errHandler.sync(this);for(var i=this._interp.adaptivePredict(this._input,76,this._ctx);i!=2&&i!=T.atn.ATN.INVALID_ALT_NUMBER;)i===1&&(this.state=493,this.elseIfBlock()),this.state=498,this._errHandler.sync(this),i=this._interp.adaptivePredict(this._input,76,this._ctx);this.state=500,this._errHandler.sync(this),n=this._input.LA(1),n===38&&(this.state=499,this.elseBlock())}catch(s){if(s instanceof T.error.RecognitionException)e.exception=s,this._errHandler.reportError(this,s),this._errHandler.recover(this,s);else throw s}finally{this.exitRule()}return e}ifBlock(){let e=new pt(this,this._ctx,this.state);this.enterRule(e,92,A.RULE_ifBlock);try{this.enterOuterAlt(e,1),this.state=502,this.match(A.IF),this.state=503,this.parExpr(),this.state=504,this.braceBlock()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}elseIfBlock(){let e=new L7(this,this._ctx,this.state);this.enterRule(e,94,A.RULE_elseIfBlock);try{this.enterOuterAlt(e,1),this.state=506,this.match(A.ELSE),this.state=507,this.match(A.IF),this.state=508,this.parExpr(),this.state=509,this.braceBlock()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}elseBlock(){let e=new mt(this,this._ctx,this.state);this.enterRule(e,96,A.RULE_elseBlock);try{this.enterOuterAlt(e,1),this.state=511,this.match(A.ELSE),this.state=512,this.braceBlock()}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}braceBlock(){let e=new Y1(this,this._ctx,this.state);this.enterRule(e,98,A.RULE_braceBlock);var n=0;try{this.enterOuterAlt(e,1),this.state=514,this.match(A.OBRACE),this.state=516,this._errHandler.sync(this),n=this._input.LA(1),(n-34&-32)==0&&(1<<n-34&1737539055)!==0&&(this.state=515,this.block()),this.state=518,this.match(A.CBRACE)}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}loop(){let e=new wt(this,this._ctx,this.state);this.enterRule(e,100,A.RULE_loop);try{this.state=527,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,79,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=520,this.match(A.WHILE),this.state=521,this.parExpr(),this.state=522,this.braceBlock();break;case 2:this.enterOuterAlt(e,2),this.state=524,this.match(A.WHILE),this.state=525,this.parExpr();break;case 3:this.enterOuterAlt(e,3),this.state=526,this.match(A.WHILE);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}expr(e){e===void 0&&(e=0);const n=this._ctx,i=this.state;let s=new b2(this,this._ctx,i),r=s;const o=102;this.enterRecursionRule(s,102,A.RULE_expr,e);var l=0;try{this.enterOuterAlt(s,1),this.state=549,this._errHandler.sync(this);var L=this._interp.adaptivePredict(this._input,81,this._ctx);switch(L){case 1:s=new ko(this,s),this._ctx=s,r=s,this.state=530,this.atom();break;case 2:s=new Io(this,s),this._ctx=s,r=s,this.state=531,this.match(A.MINUS),this.state=532,this.expr(13);break;case 3:s=new Eo(this,s),this._ctx=s,r=s,this.state=533,this.match(A.NOT),this.state=534,this.expr(12);break;case 4:s=new Ao(this,s),this._ctx=s,r=s,this.state=538,this._errHandler.sync(this);var L=this._interp.adaptivePredict(this._input,80,this._ctx);L===1&&(this.state=535,this.to(),this.state=536,this.match(A.DOT)),this.state=540,this.func();break;case 5:s=new Fo(this,s),this._ctx=s,r=s,this.state=541,this.creation();break;case 6:s=new Oo(this,s),this._ctx=s,r=s,this.state=542,this.match(A.OPAR),this.state=543,this.expr(0),this.state=544,this.match(A.CPAR);break;case 7:s=new Ro(this,s),this._ctx=s,r=s,this.state=546,this.assignment(),this.state=547,this.expr(1);break}this._ctx.stop=this._input.LT(-1),this.state=574,this._errHandler.sync(this);for(var a=this._interp.adaptivePredict(this._input,83,this._ctx);a!=2&&a!=T.atn.ATN.INVALID_ALT_NUMBER;){if(a===1){this._parseListeners!==null&&this.triggerExitRuleEvent(),r=s,this.state=572,this._errHandler.sync(this);var L=this._interp.adaptivePredict(this._input,82,this._ctx);switch(L){case 1:if(s=new No(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=551,!this.precpred(this._ctx,11))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 11)");this.state=552,s.op=this._input.LT(1),l=this._input.LA(1),(l&-32)==0&&(1<<l&29360128)!==0?(this._errHandler.reportMatch(this),this.consume()):s.op=this._errHandler.recoverInline(this),this.state=553,this.expr(12);break;case 2:if(s=new To(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=554,!this.precpred(this._ctx,10))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 10)");this.state=555,s.op=this._input.LT(1),l=this._input.LA(1),l===20||l===21?(this._errHandler.reportMatch(this),this.consume()):s.op=this._errHandler.recoverInline(this),this.state=556,this.expr(11);break;case 3:if(s=new So(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=557,!this.precpred(this._ctx,9))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 9)");this.state=558,s.op=this._input.LT(1),l=this._input.LA(1),(l&-32)==0&&(1<<l&983040)!==0?(this._errHandler.reportMatch(this),this.consume()):s.op=this._errHandler.recoverInline(this),this.state=559,this.expr(10);break;case 4:if(s=new Do(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=560,!this.precpred(this._ctx,8))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 8)");this.state=561,s.op=this._input.LT(1),l=this._input.LA(1),l===14||l===15?(this._errHandler.reportMatch(this),this.consume()):s.op=this._errHandler.recoverInline(this),this.state=562,this.expr(9);break;case 5:if(s=new Po(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=563,!this.precpred(this._ctx,7))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 7)");this.state=564,this.match(A.AND),this.state=565,this.expr(8);break;case 6:if(s=new Zo(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=566,!this.precpred(this._ctx,6))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 6)");this.state=567,this.match(A.OR),this.state=568,this.expr(7);break;case 7:if(s=new bo(this,new b2(this,n,i)),this.pushNewRecursionContext(s,o,A.RULE_expr),this.state=569,!this.precpred(this._ctx,5))throw new T.error.FailedPredicateException(this,"this.precpred(this._ctx, 5)");this.state=570,this.match(A.PLUS),this.state=571,this.expr(6);break}}this.state=576,this._errHandler.sync(this),a=this._interp.adaptivePredict(this._input,83,this._ctx)}}catch(c){if(c instanceof T.error.RecognitionException)s.exception=c,this._errHandler.reportError(this,c),this._errHandler.recover(this,c);else throw c}finally{this.unrollRecursionContexts(n)}return s}atom(){let e=new I3(this,this._ctx,this.state);this.enterRule(e,104,A.RULE_atom);var n=0;try{switch(this.state=582,this._errHandler.sync(this),this._input.LA(1)){case 58:case 59:e=new Ho(this,e),this.enterOuterAlt(e,1),this.state=577,n=this._input.LA(1),n===58||n===59?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this);break;case 34:case 35:e=new Bo(this,e),this.enterOuterAlt(e,2),this.state=578,n=this._input.LA(1),n===34||n===35?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this);break;case 57:e=new zo(this,e),this.enterOuterAlt(e,3),this.state=579,this.match(A.ID);break;case 60:e=new Uo(this,e),this.enterOuterAlt(e,4),this.state=580,this.match(A.STRING);break;case 36:e=new Wo(this,e),this.enterOuterAlt(e,5),this.state=581,this.match(A.NIL);break;default:throw new T.error.NoViableAltException(this)}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}parExpr(){let e=new d5(this,this._ctx,this.state);this.enterRule(e,106,A.RULE_parExpr);try{this.state=593,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,85,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=584,this.match(A.OPAR),this.state=585,this.condition(),this.state=586,this.match(A.CPAR);break;case 2:this.enterOuterAlt(e,2),this.state=588,this.match(A.OPAR),this.state=589,this.condition();break;case 3:this.enterOuterAlt(e,3),this.state=590,this.match(A.OPAR),this.state=591,this.match(A.CPAR);break;case 4:this.enterOuterAlt(e,4),this.state=592,this.match(A.OPAR);break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}condition(){let e=new xt(this,this._ctx,this.state);this.enterRule(e,108,A.RULE_condition);try{this.state=598,this._errHandler.sync(this);var n=this._interp.adaptivePredict(this._input,86,this._ctx);switch(n){case 1:this.enterOuterAlt(e,1),this.state=595,this.atom();break;case 2:this.enterOuterAlt(e,2),this.state=596,this.expr(0);break;case 3:this.enterOuterAlt(e,3),this.state=597,this.inExpr();break}}catch(i){if(i instanceof T.error.RecognitionException)e.exception=i,this._errHandler.reportError(this,i),this._errHandler.recover(this,i);else throw i}finally{this.exitRule()}return e}inExpr(){let e=new _t(this,this._ctx,this.state);this.enterRule(e,110,A.RULE_inExpr);try{this.enterOuterAlt(e,1),this.state=600,this.match(A.ID),this.state=601,this.match(A.IN),this.state=602,this.match(A.ID)}catch(n){if(n instanceof T.error.RecognitionException)e.exception=n,this._errHandler.reportError(this,n),this._errHandler.recover(this,n);else throw n}finally{this.exitRule()}return e}};let d=A;i2(d,"grammarFileName","java-escape"),i2(d,"literalNames",[null,null,"'const'","'readonly'","'static'","'await'","'title'","':'","'<<'","'>>'","'->'",null,"'||'","'&&'","'=='","'!='","'>'","'<'","'>='","'<='","'+'","'-'","'*'","'/'","'%'","'^'","'!'","';'","','","'='","'('","')'","'{'","'}'","'true'","'false'",null,"'if'","'else'",null,"'return'","'new'","'par'","'group'","'opt'","'critical'",null,"'ref'","'as'","'try'","'catch'","'finally'","'in'",null,null,null,"'.'"]),i2(d,"symbolicNames",[null,"WS","CONSTANT","READONLY","STATIC","AWAIT","TITLE","COL","SOPEN","SCLOSE","ARROW","COLOR","OR","AND","EQ","NEQ","GT","LT","GTEQ","LTEQ","PLUS","MINUS","MULT","DIV","MOD","POW","NOT","SCOL","COMMA","ASSIGN","OPAR","CPAR","OBRACE","CBRACE","TRUE","FALSE","NIL","IF","ELSE","WHILE","RETURN","NEW","PAR","GROUP","OPT","CRITICAL","SECTION","REF","AS","TRY","CATCH","FINALLY","IN","STARTER_LXR","ANNOTATION_RET","ANNOTATION","DOT","ID","INT","FLOAT","STRING","CR","COMMENT","OTHER","DIVIDER","EVENT_PAYLOAD_LXR","EVENT_END","TITLE_CONTENT","TITLE_END"]),i2(d,"ruleNames",["prog","title","head","group","starterExp","starter","participant","stereotype","label","participantType","name","width","block","ret","divider","dividerNote","stat","par","opt","critical","section","creation","ref","creationBody","message","messageBody","func","from","to","signature","invocation","assignment","asyncMessage","content","construct","type","assignee","methodName","parameters","parameter","declaration","tcf","tryBlock","catchBlock","finallyBlock","alt","ifBlock","elseIfBlock","elseBlock","braceBlock","loop","expr","atom","parExpr","condition","inExpr"]),d.EOF=T.Token.EOF,d.WS=1,d.CONSTANT=2,d.READONLY=3,d.STATIC=4,d.AWAIT=5,d.TITLE=6,d.COL=7,d.SOPEN=8,d.SCLOSE=9,d.ARROW=10,d.COLOR=11,d.OR=12,d.AND=13,d.EQ=14,d.NEQ=15,d.GT=16,d.LT=17,d.GTEQ=18,d.LTEQ=19,d.PLUS=20,d.MINUS=21,d.MULT=22,d.DIV=23,d.MOD=24,d.POW=25,d.NOT=26,d.SCOL=27,d.COMMA=28,d.ASSIGN=29,d.OPAR=30,d.CPAR=31,d.OBRACE=32,d.CBRACE=33,d.TRUE=34,d.FALSE=35,d.NIL=36,d.IF=37,d.ELSE=38,d.WHILE=39,d.RETURN=40,d.NEW=41,d.PAR=42,d.GROUP=43,d.OPT=44,d.CRITICAL=45,d.SECTION=46,d.REF=47,d.AS=48,d.TRY=49,d.CATCH=50,d.FINALLY=51,d.IN=52,d.STARTER_LXR=53,d.ANNOTATION_RET=54,d.ANNOTATION=55,d.DOT=56,d.ID=57,d.INT=58,d.FLOAT=59,d.STRING=60,d.CR=61,d.COMMENT=62,d.OTHER=63,d.DIVIDER=64,d.EVENT_PAYLOAD_LXR=65,d.EVENT_END=66,d.TITLE_CONTENT=67,d.TITLE_END=68,d.RULE_prog=0,d.RULE_title=1,d.RULE_head=2,d.RULE_group=3,d.RULE_starterExp=4,d.RULE_starter=5,d.RULE_participant=6,d.RULE_stereotype=7,d.RULE_label=8,d.RULE_participantType=9,d.RULE_name=10,d.RULE_width=11,d.RULE_block=12,d.RULE_ret=13,d.RULE_divider=14,d.RULE_dividerNote=15,d.RULE_stat=16,d.RULE_par=17,d.RULE_opt=18,d.RULE_critical=19,d.RULE_section=20,d.RULE_creation=21,d.RULE_ref=22,d.RULE_creationBody=23,d.RULE_message=24,d.RULE_messageBody=25,d.RULE_func=26,d.RULE_from=27,d.RULE_to=28,d.RULE_signature=29,d.RULE_invocation=30,d.RULE_assignment=31,d.RULE_asyncMessage=32,d.RULE_content=33,d.RULE_construct=34,d.RULE_type=35,d.RULE_assignee=36,d.RULE_methodName=37,d.RULE_parameters=38,d.RULE_parameter=39,d.RULE_declaration=40,d.RULE_tcf=41,d.RULE_tryBlock=42,d.RULE_catchBlock=43,d.RULE_finallyBlock=44,d.RULE_alt=45,d.RULE_ifBlock=46,d.RULE_elseIfBlock=47,d.RULE_elseBlock=48,d.RULE_braceBlock=49,d.RULE_loop=50,d.RULE_expr=51,d.RULE_atom=52,d.RULE_parExpr=53,d.RULE_condition=54,d.RULE_inExpr=55;class yo extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_prog}EOF(){return this.getToken(d.EOF,0)}title(){return this.getTypedRuleContext(He,0)}head(){return this.getTypedRuleContext($e,0)}block(){return this.getTypedRuleContext(Y8,0)}enterRule(e){e instanceof E&&e.enterProg(this)}exitRule(e){e instanceof E&&e.exitProg(this)}}class He extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_title}TITLE(){return this.getToken(d.TITLE,0)}TITLE_CONTENT(){return this.getToken(d.TITLE_CONTENT,0)}TITLE_END(){return this.getToken(d.TITLE_END,0)}enterRule(e){e instanceof E&&e.enterTitle(this)}exitRule(e){e instanceof E&&e.exitTitle(this)}}class $e extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"group",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(K8):this.getTypedRuleContext(K8,n)});i2(this,"participant",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(f0):this.getTypedRuleContext(f0,n)});this.parser=n,this.ruleIndex=d.RULE_head}starterExp(){return this.getTypedRuleContext(Ve,0)}enterRule(n){n instanceof E&&n.enterHead(this)}exitRule(n){n instanceof E&&n.exitHead(this)}}class K8 extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"participant",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(f0):this.getTypedRuleContext(f0,n)});this.parser=n,this.ruleIndex=d.RULE_group}GROUP(){return this.getToken(d.GROUP,0)}OBRACE(){return this.getToken(d.OBRACE,0)}CBRACE(){return this.getToken(d.CBRACE,0)}name(){return this.getTypedRuleContext(G4,0)}enterRule(n){n instanceof E&&n.enterGroup(this)}exitRule(n){n instanceof E&&n.exitGroup(this)}}class Ve extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_starterExp}STARTER_LXR(){return this.getToken(d.STARTER_LXR,0)}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}starter(){return this.getTypedRuleContext(Ge,0)}ANNOTATION(){return this.getToken(d.ANNOTATION,0)}enterRule(e){e instanceof E&&e.enterStarterExp(this)}exitRule(e){e instanceof E&&e.exitStarterExp(this)}}class Ge extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_starter}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterStarter(this)}exitRule(e){e instanceof E&&e.exitStarter(this)}}class f0 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_participant}name(){return this.getTypedRuleContext(G4,0)}participantType(){return this.getTypedRuleContext(Ke,0)}stereotype(){return this.getTypedRuleContext(je,0)}width(){return this.getTypedRuleContext(Ye,0)}label(){return this.getTypedRuleContext(qe,0)}COLOR(){return this.getToken(d.COLOR,0)}enterRule(e){e instanceof E&&e.enterParticipant(this)}exitRule(e){e instanceof E&&e.exitParticipant(this)}}class je extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_stereotype}SOPEN(){return this.getToken(d.SOPEN,0)}name(){return this.getTypedRuleContext(G4,0)}SCLOSE(){return this.getToken(d.SCLOSE,0)}GT(){return this.getToken(d.GT,0)}LT(){return this.getToken(d.LT,0)}enterRule(e){e instanceof E&&e.enterStereotype(this)}exitRule(e){e instanceof E&&e.exitStereotype(this)}}class qe extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_label}AS(){return this.getToken(d.AS,0)}name(){return this.getTypedRuleContext(G4,0)}enterRule(e){e instanceof E&&e.enterLabel(this)}exitRule(e){e instanceof E&&e.exitLabel(this)}}class Ke extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_participantType}ANNOTATION(){return this.getToken(d.ANNOTATION,0)}enterRule(e){e instanceof E&&e.enterParticipantType(this)}exitRule(e){e instanceof E&&e.exitParticipantType(this)}}class G4 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_name}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterName(this)}exitRule(e){e instanceof E&&e.exitName(this)}}class Ye extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_width}INT(){return this.getToken(d.INT,0)}enterRule(e){e instanceof E&&e.enterWidth(this)}exitRule(e){e instanceof E&&e.exitWidth(this)}}class Y8 extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"stat",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(X8):this.getTypedRuleContext(X8,n)});this.parser=n,this.ruleIndex=d.RULE_block}enterRule(n){n instanceof E&&n.enterBlock(this)}exitRule(n){n instanceof E&&n.exitBlock(this)}}class Xe extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_ret}RETURN(){return this.getToken(d.RETURN,0)}expr(){return this.getTypedRuleContext(b2,0)}SCOL(){return this.getToken(d.SCOL,0)}ANNOTATION_RET(){return this.getToken(d.ANNOTATION_RET,0)}asyncMessage(){return this.getTypedRuleContext(i7,0)}EVENT_END(){return this.getToken(d.EVENT_END,0)}enterRule(e){e instanceof E&&e.enterRet(this)}exitRule(e){e instanceof E&&e.exitRet(this)}}class Qe extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_divider}dividerNote(){return this.getTypedRuleContext(Je,0)}enterRule(e){e instanceof E&&e.enterDivider(this)}exitRule(e){e instanceof E&&e.exitDivider(this)}}class Je extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_dividerNote}DIVIDER(){return this.getToken(d.DIVIDER,0)}enterRule(e){e instanceof E&&e.enterDividerNote(this)}exitRule(e){e instanceof E&&e.exitDividerNote(this)}}class X8 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_stat,this._OTHER=null}alt(){return this.getTypedRuleContext(gt,0)}par(){return this.getTypedRuleContext(et,0)}opt(){return this.getTypedRuleContext(tt,0)}critical(){return this.getTypedRuleContext(nt,0)}section(){return this.getTypedRuleContext(it,0)}ref(){return this.getTypedRuleContext(st,0)}loop(){return this.getTypedRuleContext(wt,0)}creation(){return this.getTypedRuleContext(Q8,0)}message(){return this.getTypedRuleContext(ot,0)}asyncMessage(){return this.getTypedRuleContext(i7,0)}EVENT_END(){return this.getToken(d.EVENT_END,0)}ret(){return this.getTypedRuleContext(Xe,0)}divider(){return this.getTypedRuleContext(Qe,0)}tcf(){return this.getTypedRuleContext(ht,0)}OTHER(){return this.getToken(d.OTHER,0)}enterRule(e){e instanceof E&&e.enterStat(this)}exitRule(e){e instanceof E&&e.exitStat(this)}}class et extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_par}PAR(){return this.getToken(d.PAR,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterPar(this)}exitRule(e){e instanceof E&&e.exitPar(this)}}class tt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_opt}OPT(){return this.getToken(d.OPT,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterOpt(this)}exitRule(e){e instanceof E&&e.exitOpt(this)}}class nt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_critical}CRITICAL(){return this.getToken(d.CRITICAL,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}atom(){return this.getTypedRuleContext(I3,0)}enterRule(e){e instanceof E&&e.enterCritical(this)}exitRule(e){e instanceof E&&e.exitCritical(this)}}class it extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_section}SECTION(){return this.getToken(d.SECTION,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}atom(){return this.getTypedRuleContext(I3,0)}enterRule(e){e instanceof E&&e.enterSection(this)}exitRule(e){e instanceof E&&e.exitSection(this)}}class Q8 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_creation}creationBody(){return this.getTypedRuleContext(rt,0)}SCOL(){return this.getToken(d.SCOL,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterCreation(this)}exitRule(e){e instanceof E&&e.exitCreation(this)}}class st extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"name",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(G4):this.getTypedRuleContext(G4,n)});i2(this,"COMMA",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.COMMA):this.getToken(d.COMMA,n)});this.parser=n,this.ruleIndex=d.RULE_ref}REF(){return this.getToken(d.REF,0)}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}SCOL(){return this.getToken(d.SCOL,0)}enterRule(n){n instanceof E&&n.enterRef(this)}exitRule(n){n instanceof E&&n.exitRef(this)}}class rt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_creationBody}NEW(){return this.getToken(d.NEW,0)}construct(){return this.getTypedRuleContext(at,0)}assignment(){return this.getTypedRuleContext(h5,0)}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}parameters(){return this.getTypedRuleContext(r7,0)}enterRule(e){e instanceof E&&e.enterCreationBody(this)}exitRule(e){e instanceof E&&e.exitCreationBody(this)}}class ot extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_message}messageBody(){return this.getTypedRuleContext(lt,0)}SCOL(){return this.getToken(d.SCOL,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterMessage(this)}exitRule(e){e instanceof E&&e.exitMessage(this)}}class lt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_messageBody}func(){return this.getTypedRuleContext(J8,0)}assignment(){return this.getTypedRuleContext(h5,0)}to(){return this.getTypedRuleContext(u5,0)}DOT(){return this.getToken(d.DOT,0)}from(){return this.getTypedRuleContext(e7,0)}ARROW(){return this.getToken(d.ARROW,0)}enterRule(e){e instanceof E&&e.enterMessageBody(this)}exitRule(e){e instanceof E&&e.exitMessageBody(this)}}class J8 extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"signature",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(t7):this.getTypedRuleContext(t7,n)});i2(this,"DOT",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.DOT):this.getToken(d.DOT,n)});this.parser=n,this.ruleIndex=d.RULE_func}enterRule(n){n instanceof E&&n.enterFunc(this)}exitRule(n){n instanceof E&&n.exitFunc(this)}}class e7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_from}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterFrom(this)}exitRule(e){e instanceof E&&e.exitFrom(this)}}class u5 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_to}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterTo(this)}exitRule(e){e instanceof E&&e.exitTo(this)}}class t7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_signature}methodName(){return this.getTypedRuleContext(Ct,0)}invocation(){return this.getTypedRuleContext(n7,0)}enterRule(e){e instanceof E&&e.enterSignature(this)}exitRule(e){e instanceof E&&e.exitSignature(this)}}class n7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_invocation}OPAR(){return this.getToken(d.OPAR,0)}CPAR(){return this.getToken(d.CPAR,0)}parameters(){return this.getTypedRuleContext(r7,0)}enterRule(e){e instanceof E&&e.enterInvocation(this)}exitRule(e){e instanceof E&&e.exitInvocation(this)}}class h5 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_assignment}assignee(){return this.getTypedRuleContext(ct,0)}ASSIGN(){return this.getToken(d.ASSIGN,0)}type(){return this.getTypedRuleContext(s7,0)}enterRule(e){e instanceof E&&e.enterAssignment(this)}exitRule(e){e instanceof E&&e.exitAssignment(this)}}class i7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_asyncMessage}to(){return this.getTypedRuleContext(u5,0)}COL(){return this.getToken(d.COL,0)}from(){return this.getTypedRuleContext(e7,0)}ARROW(){return this.getToken(d.ARROW,0)}content(){return this.getTypedRuleContext(Lt,0)}MINUS(){return this.getToken(d.MINUS,0)}enterRule(e){e instanceof E&&e.enterAsyncMessage(this)}exitRule(e){e instanceof E&&e.exitAsyncMessage(this)}}class Lt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_content}EVENT_PAYLOAD_LXR(){return this.getToken(d.EVENT_PAYLOAD_LXR,0)}enterRule(e){e instanceof E&&e.enterContent(this)}exitRule(e){e instanceof E&&e.exitContent(this)}}class at extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_construct}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterConstruct(this)}exitRule(e){e instanceof E&&e.exitConstruct(this)}}class s7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_type}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterType(this)}exitRule(e){e instanceof E&&e.exitType(this)}}class ct extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"ID",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.ID):this.getToken(d.ID,n)});i2(this,"COMMA",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.COMMA):this.getToken(d.COMMA,n)});this.parser=n,this.ruleIndex=d.RULE_assignee}atom(){return this.getTypedRuleContext(I3,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(n){n instanceof E&&n.enterAssignee(this)}exitRule(n){n instanceof E&&n.exitAssignee(this)}}class Ct extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_methodName}ID(){return this.getToken(d.ID,0)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterMethodName(this)}exitRule(e){e instanceof E&&e.exitMethodName(this)}}class r7 extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"parameter",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(o7):this.getTypedRuleContext(o7,n)});i2(this,"COMMA",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.COMMA):this.getToken(d.COMMA,n)});this.parser=n,this.ruleIndex=d.RULE_parameters}enterRule(n){n instanceof E&&n.enterParameters(this)}exitRule(n){n instanceof E&&n.exitParameters(this)}}class o7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_parameter}declaration(){return this.getTypedRuleContext(ut,0)}expr(){return this.getTypedRuleContext(b2,0)}enterRule(e){e instanceof E&&e.enterParameter(this)}exitRule(e){e instanceof E&&e.exitParameter(this)}}class ut extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_declaration}type(){return this.getTypedRuleContext(s7,0)}ID(){return this.getToken(d.ID,0)}enterRule(e){e instanceof E&&e.enterDeclaration(this)}exitRule(e){e instanceof E&&e.exitDeclaration(this)}}class ht extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"catchBlock",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(l7):this.getTypedRuleContext(l7,n)});this.parser=n,this.ruleIndex=d.RULE_tcf}tryBlock(){return this.getTypedRuleContext(dt,0)}finallyBlock(){return this.getTypedRuleContext(ft,0)}enterRule(n){n instanceof E&&n.enterTcf(this)}exitRule(n){n instanceof E&&n.exitTcf(this)}}class dt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_tryBlock}TRY(){return this.getToken(d.TRY,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterTryBlock(this)}exitRule(e){e instanceof E&&e.exitTryBlock(this)}}class l7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_catchBlock}CATCH(){return this.getToken(d.CATCH,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}invocation(){return this.getTypedRuleContext(n7,0)}enterRule(e){e instanceof E&&e.enterCatchBlock(this)}exitRule(e){e instanceof E&&e.exitCatchBlock(this)}}class ft extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_finallyBlock}FINALLY(){return this.getToken(d.FINALLY,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterFinallyBlock(this)}exitRule(e){e instanceof E&&e.exitFinallyBlock(this)}}class gt extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"elseIfBlock",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(L7):this.getTypedRuleContext(L7,n)});this.parser=n,this.ruleIndex=d.RULE_alt}ifBlock(){return this.getTypedRuleContext(pt,0)}elseBlock(){return this.getTypedRuleContext(mt,0)}enterRule(n){n instanceof E&&n.enterAlt(this)}exitRule(n){n instanceof E&&n.exitAlt(this)}}class pt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_ifBlock}IF(){return this.getToken(d.IF,0)}parExpr(){return this.getTypedRuleContext(d5,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterIfBlock(this)}exitRule(e){e instanceof E&&e.exitIfBlock(this)}}class L7 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_elseIfBlock}ELSE(){return this.getToken(d.ELSE,0)}IF(){return this.getToken(d.IF,0)}parExpr(){return this.getTypedRuleContext(d5,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterElseIfBlock(this)}exitRule(e){e instanceof E&&e.exitElseIfBlock(this)}}class mt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_elseBlock}ELSE(){return this.getToken(d.ELSE,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterElseBlock(this)}exitRule(e){e instanceof E&&e.exitElseBlock(this)}}class Y1 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_braceBlock}OBRACE(){return this.getToken(d.OBRACE,0)}CBRACE(){return this.getToken(d.CBRACE,0)}block(){return this.getTypedRuleContext(Y8,0)}enterRule(e){e instanceof E&&e.enterBraceBlock(this)}exitRule(e){e instanceof E&&e.exitBraceBlock(this)}}class wt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_loop}WHILE(){return this.getToken(d.WHILE,0)}parExpr(){return this.getTypedRuleContext(d5,0)}braceBlock(){return this.getTypedRuleContext(Y1,0)}enterRule(e){e instanceof E&&e.enterLoop(this)}exitRule(e){e instanceof E&&e.exitLoop(this)}}class b2 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_expr}copyFrom(e){super.copyFrom(e)}}class Ro extends b2{constructor(e,n){super(e),super.copyFrom(n)}assignment(){return this.getTypedRuleContext(h5,0)}expr(){return this.getTypedRuleContext(b2,0)}enterRule(e){e instanceof E&&e.enterAssignmentExpr(this)}exitRule(e){e instanceof E&&e.exitAssignmentExpr(this)}}d.AssignmentExprContext=Ro;class Ao extends b2{constructor(e,n){super(e),super.copyFrom(n)}func(){return this.getTypedRuleContext(J8,0)}to(){return this.getTypedRuleContext(u5,0)}DOT(){return this.getToken(d.DOT,0)}enterRule(e){e instanceof E&&e.enterFuncExpr(this)}exitRule(e){e instanceof E&&e.exitFuncExpr(this)}}d.FuncExprContext=Ao;class ko extends b2{constructor(e,n){super(e),super.copyFrom(n)}atom(){return this.getTypedRuleContext(I3,0)}enterRule(e){e instanceof E&&e.enterAtomExpr(this)}exitRule(e){e instanceof E&&e.exitAtomExpr(this)}}d.AtomExprContext=ko;class Zo extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});super.copyFrom(i)}OR(){return this.getToken(d.OR,0)}enterRule(n){n instanceof E&&n.enterOrExpr(this)}exitRule(n){n instanceof E&&n.exitOrExpr(this)}}d.OrExprContext=Zo;class To extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});this.op=null,super.copyFrom(i)}PLUS(){return this.getToken(d.PLUS,0)}MINUS(){return this.getToken(d.MINUS,0)}enterRule(n){n instanceof E&&n.enterAdditiveExpr(this)}exitRule(n){n instanceof E&&n.exitAdditiveExpr(this)}}d.AdditiveExprContext=To;class So extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});this.op=null,super.copyFrom(i)}LTEQ(){return this.getToken(d.LTEQ,0)}GTEQ(){return this.getToken(d.GTEQ,0)}LT(){return this.getToken(d.LT,0)}GT(){return this.getToken(d.GT,0)}enterRule(n){n instanceof E&&n.enterRelationalExpr(this)}exitRule(n){n instanceof E&&n.exitRelationalExpr(this)}}d.RelationalExprContext=So;class bo extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});super.copyFrom(i)}PLUS(){return this.getToken(d.PLUS,0)}enterRule(n){n instanceof E&&n.enterPlusExpr(this)}exitRule(n){n instanceof E&&n.exitPlusExpr(this)}}d.PlusExprContext=bo;class Eo extends b2{constructor(e,n){super(e),super.copyFrom(n)}NOT(){return this.getToken(d.NOT,0)}expr(){return this.getTypedRuleContext(b2,0)}enterRule(e){e instanceof E&&e.enterNotExpr(this)}exitRule(e){e instanceof E&&e.exitNotExpr(this)}}d.NotExprContext=Eo;class Io extends b2{constructor(e,n){super(e),super.copyFrom(n)}MINUS(){return this.getToken(d.MINUS,0)}expr(){return this.getTypedRuleContext(b2,0)}enterRule(e){e instanceof E&&e.enterUnaryMinusExpr(this)}exitRule(e){e instanceof E&&e.exitUnaryMinusExpr(this)}}d.UnaryMinusExprContext=Io;class Fo extends b2{constructor(e,n){super(e),super.copyFrom(n)}creation(){return this.getTypedRuleContext(Q8,0)}enterRule(e){e instanceof E&&e.enterCreationExpr(this)}exitRule(e){e instanceof E&&e.exitCreationExpr(this)}}d.CreationExprContext=Fo;class Oo extends b2{constructor(e,n){super(e),super.copyFrom(n)}OPAR(){return this.getToken(d.OPAR,0)}expr(){return this.getTypedRuleContext(b2,0)}CPAR(){return this.getToken(d.CPAR,0)}enterRule(e){e instanceof E&&e.enterParenthesizedExpr(this)}exitRule(e){e instanceof E&&e.exitParenthesizedExpr(this)}}d.ParenthesizedExprContext=Oo;class No extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});this.op=null,super.copyFrom(i)}MULT(){return this.getToken(d.MULT,0)}DIV(){return this.getToken(d.DIV,0)}MOD(){return this.getToken(d.MOD,0)}enterRule(n){n instanceof E&&n.enterMultiplicationExpr(this)}exitRule(n){n instanceof E&&n.exitMultiplicationExpr(this)}}d.MultiplicationExprContext=No;class Do extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});this.op=null,super.copyFrom(i)}EQ(){return this.getToken(d.EQ,0)}NEQ(){return this.getToken(d.NEQ,0)}enterRule(n){n instanceof E&&n.enterEqualityExpr(this)}exitRule(n){n instanceof E&&n.exitEqualityExpr(this)}}d.EqualityExprContext=Do;class Po extends b2{constructor(n,i){super(n);i2(this,"expr",function(n){return n===void 0&&(n=null),n===null?this.getTypedRuleContexts(b2):this.getTypedRuleContext(b2,n)});super.copyFrom(i)}AND(){return this.getToken(d.AND,0)}enterRule(n){n instanceof E&&n.enterAndExpr(this)}exitRule(n){n instanceof E&&n.exitAndExpr(this)}}d.AndExprContext=Po;class I3 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_atom}copyFrom(e){super.copyFrom(e)}}class Bo extends I3{constructor(e,n){super(e),super.copyFrom(n)}TRUE(){return this.getToken(d.TRUE,0)}FALSE(){return this.getToken(d.FALSE,0)}enterRule(e){e instanceof E&&e.enterBooleanAtom(this)}exitRule(e){e instanceof E&&e.exitBooleanAtom(this)}}d.BooleanAtomContext=Bo;class zo extends I3{constructor(e,n){super(e),super.copyFrom(n)}ID(){return this.getToken(d.ID,0)}enterRule(e){e instanceof E&&e.enterIdAtom(this)}exitRule(e){e instanceof E&&e.exitIdAtom(this)}}d.IdAtomContext=zo;class Uo extends I3{constructor(e,n){super(e),super.copyFrom(n)}STRING(){return this.getToken(d.STRING,0)}enterRule(e){e instanceof E&&e.enterStringAtom(this)}exitRule(e){e instanceof E&&e.exitStringAtom(this)}}d.StringAtomContext=Uo;class Wo extends I3{constructor(e,n){super(e),super.copyFrom(n)}NIL(){return this.getToken(d.NIL,0)}enterRule(e){e instanceof E&&e.enterNilAtom(this)}exitRule(e){e instanceof E&&e.exitNilAtom(this)}}d.NilAtomContext=Wo;class Ho extends I3{constructor(e,n){super(e),super.copyFrom(n)}INT(){return this.getToken(d.INT,0)}FLOAT(){return this.getToken(d.FLOAT,0)}enterRule(e){e instanceof E&&e.enterNumberAtom(this)}exitRule(e){e instanceof E&&e.exitNumberAtom(this)}}d.NumberAtomContext=Ho;class d5 extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_parExpr}OPAR(){return this.getToken(d.OPAR,0)}condition(){return this.getTypedRuleContext(xt,0)}CPAR(){return this.getToken(d.CPAR,0)}enterRule(e){e instanceof E&&e.enterParExpr(this)}exitRule(e){e instanceof E&&e.exitParExpr(this)}}class xt extends T.ParserRuleContext{constructor(e,n,i){n===void 0&&(n=null),i==null&&(i=-1),super(n,i),this.parser=e,this.ruleIndex=d.RULE_condition}atom(){return this.getTypedRuleContext(I3,0)}expr(){return this.getTypedRuleContext(b2,0)}inExpr(){return this.getTypedRuleContext(_t,0)}enterRule(e){e instanceof E&&e.enterCondition(this)}exitRule(e){e instanceof E&&e.exitCondition(this)}}class _t extends T.ParserRuleContext{constructor(n,i,s){i===void 0&&(i=null),s==null&&(s=-1);super(i,s);i2(this,"ID",function(n){return n===void 0&&(n=null),n===null?this.getTokens(d.ID):this.getToken(d.ID,n)});this.parser=n,this.ruleIndex=d.RULE_inExpr}IN(){return this.getToken(d.IN,0)}enterRule(n){n instanceof E&&n.enterInExpr(this)}exitRule(n){n instanceof E&&n.exitInExpr(this)}}d.ProgContext=yo,d.TitleContext=He,d.HeadContext=$e,d.GroupContext=K8,d.StarterExpContext=Ve,d.StarterContext=Ge,d.ParticipantContext=f0,d.StereotypeContext=je,d.LabelContext=qe,d.ParticipantTypeContext=Ke,d.NameContext=G4,d.WidthContext=Ye,d.BlockContext=Y8,d.RetContext=Xe,d.DividerContext=Qe,d.DividerNoteContext=Je,d.StatContext=X8,d.ParContext=et,d.OptContext=tt,d.CriticalContext=nt,d.SectionContext=it,d.CreationContext=Q8,d.RefContext=st,d.CreationBodyContext=rt,d.MessageContext=ot,d.MessageBodyContext=lt,d.FuncContext=J8,d.FromContext=e7,d.ToContext=u5,d.SignatureContext=t7,d.InvocationContext=n7,d.AssignmentContext=h5,d.AsyncMessageContext=i7,d.ContentContext=Lt,d.ConstructContext=at,d.TypeContext=s7,d.AssigneeContext=ct,d.MethodNameContext=Ct,d.ParametersContext=r7,d.ParameterContext=o7,d.DeclarationContext=ut,d.TcfContext=ht,d.TryBlockContext=dt,d.CatchBlockContext=l7,d.FinallyBlockContext=ft,d.AltContext=gt,d.IfBlockContext=pt,d.ElseIfBlockContext=L7,d.ElseBlockContext=mt,d.BraceBlockContext=Y1,d.LoopContext=wt,d.ExprContext=b2,d.AtomContext=I3,d.ParExprContext=d5,d.ConditionContext=xt,d.InExprContext=_t;class Jf{constructor(e,n){i2(this,"name");i2(this,"stereotype");i2(this,"width");i2(this,"groupId");i2(this,"explicit");i2(this,"isStarter");i2(this,"label");i2(this,"type");i2(this,"color");i2(this,"comment");i2(this,"assignee");i2(this,"positions",new Set);i2(this,"assigneePositions",new Set);this.name=e,this.mergeOptions(n)}mergeOptions(e){const{stereotype:n,width:i,groupId:s,label:r,explicit:o,isStarter:l,type:L,color:a,comment:c,assignee:C}=e;this.stereotype||(this.stereotype=n),this.width||(this.width=i),this.groupId||(this.groupId=s),this.explicit||(this.explicit=o),this.isStarter||(this.isStarter=l),this.label||(this.label=r),this.type||(this.type=L),this.color||(this.color=a),this.comment||(this.comment=c),this.assignee||(this.assignee=C)}AddPosition(e){this.positions.add(e)}ToValue(){return{name:this.name,stereotype:this.stereotype,width:this.width,groupId:this.groupId,explicit:this.explicit,isStarter:this.isStarter,label:this.label,type:this.type,color:this.color,comment:this.comment,assignee:this.assignee,positions:this.positions,assigneePositions:this.assigneePositions}}}class eg{constructor(){i2(this,"participants",new Map)}Add(e,n={}){let i=this.Get(e);i?i==null||i.mergeOptions(n):(i=new Jf(e,n),this.participants.set(e,i));const{position:s,assigneePosition:r}=n;s&&i.AddPosition(s),r&&i.assigneePositions.add(r)}ImplicitArray(){return this.Array().filter(e=>{var n;return!((n=this.Get(e.name))!=null&&n.explicit)&&!e.isStarter})}Array(){return Array.from(this.participants.entries()).map(e=>e[1])}Names(){return Array.from(this.participants.keys())}First(){return this.participants.values().next().value}Get(e){return this.participants.get(e)}Size(){return this.participants.size}Starter(){const e=this.First();return e!=null&&e.isStarter?e:void 0}GetPositions(e){var n;return(n=this.participants.get(e))==null?void 0:n.positions}GetAssigneePositions(e){var n;return(n=this.participants.get(e))==null?void 0:n.assigneePositions}}const tg=d.ProgContext;let X1,Z9=!1,vt;const Q1=new E,ng=function(t){var h,f,w,_,p,g;if(Z9)return;const e=(h=t==null?void 0:t.participantType())==null?void 0:h.getFormattedText().replace("@",""),n=((f=t==null?void 0:t.name())==null?void 0:f.getFormattedText())||"Missing `Participant`",i=(_=(w=t.stereotype())==null?void 0:w.name())==null?void 0:_.getFormattedText(),s=t.width&&t.width()&&Number.parseInt(t.width().getText())||void 0,r=t.label&&t.label(),o=(p=r==null?void 0:r.name())==null?void 0:p.getFormattedText(),l=!0,L=(g=t.COLOR())==null?void 0:g.getText(),a=t.getComment(),c=t.name();let C,u;if(r){const m=r.name();m&&(C=m.start.start,u=m.stop.stop+1)}else c&&(C=c.start.start,u=c.stop.stop+1);X1.Add(n,{isStarter:!1,type:e,stereotype:i,width:s,groupId:vt,label:o,explicit:l,color:L,comment:a,position:[C,u]})};Q1.enterParticipant=ng;const $o=function(t){if(Z9)return;let e=t.getFormattedText();const n=X1.Get(e);if(n!=null&&n.label)X1.Add(e,{isStarter:!1});else if(n!=null&&n.assignee){const s=[t.start.start+n.assignee.length+2,t.stop.stop],r=[t.start.start+1,t.start.start+n.assignee.length+1];X1.Add(e,{isStarter:!1,position:s,assigneePosition:r})}else X1.Add(e,{isStarter:!1,position:[t.start.start,t.stop.stop+1]})};Q1.enterFrom=$o,Q1.enterTo=$o,Q1.enterStarter=function(t){let e=t.getFormattedText();X1.Add(e,{isStarter:!0,position:[t.start.start,t.stop.stop+1]})},Q1.enterCreation=function(t){var s;if(Z9)return;const e=t.Owner(),n=(s=t==null?void 0:t.creationBody())==null?void 0:s.construct(),i=X1.Get(e);if(n&&!(i!=null&&i.label)){const r=t.Assignee(),o=t.AssigneePosition();X1.Add(e,{isStarter:!1,position:[n.start.start,n.stop.stop+1],assignee:r,assigneePosition:o})}else X1.Add(e,{isStarter:!1})},Q1.enterRef=function(t){t.Participants().forEach(e=>{X1.Add(e.getText(),{isStarter:!1,position:[e.start.start,e.stop.stop+1]})})},Q1.enterParameters=function(){Z9=!0},Q1.exitParameters=function(){Z9=!1},Q1.enterCondition=function(){Z9=!0},Q1.exitCondition=function(){Z9=!1},Q1.enterGroup=function(t){var e;vt=(e=t.name())==null?void 0:e.getFormattedText()},Q1.exitGroup=function(){vt=void 0},Q1.enterRet=function(t){t.asyncMessage()||(X1.Add(t.From()),X1.Add(t.ReturnTo()))};const ig=T.tree.ParseTreeWalker.DEFAULT;Q1.getParticipants=function(t,e){return X1=new eg,e&&t instanceof tg&&X1.Add(t.Starter(),{isStarter:!0}),ig.walk(this,t),X1};const sg=T.tree.ParseTreeWalker.DEFAULT;let J1=new E,p1=0,P1=0;J1.enterTcf=function(){p1++},J1.enterOpt=function(){p1++},J1.enterPar=function(){p1++},J1.enterAlt=function(){p1++},J1.enterLoop=function(){p1++},J1.enterSection=function(){p1++},J1.enterCritical=function(){p1++},J1.exitTcf=function(){P1=Math.max(P1,p1),p1--},J1.exitOpt=function(){P1=Math.max(P1,p1),p1--},J1.exitPar=function(){P1=Math.max(P1,p1),p1--},J1.exitAlt=function(){P1=Math.max(P1,p1),p1--},J1.exitLoop=function(){P1=Math.max(P1,p1),p1--},J1.exitSection=function(){P1=Math.max(P1,p1),p1--},J1.exitCritical=function(){P1=Math.max(P1,p1),p1--},J1.depth=function(t){return function(e){return p1=0,P1=0,e.children.map(function(n){sg.walk(t,n)}),P1}};const rg=d.TitleContext;rg.prototype.content=function(){return this.children.length<2?"":this.children[1].getText().trim()};const Vo=d,Mt=Vo.CreationContext;Mt.prototype.Body=Mt.prototype.creationBody,Mt.prototype.isCurrent=function(t){return Go.bind(this)(t)};const yt=Vo.MessageContext;yt.prototype.Body=yt.prototype.messageBody,yt.prototype.isCurrent=function(t){return Go.bind(this)(t)};function Go(t){try{if(t==null)return!1;const e=this.start.start,n=this.Body().stop.stop+1;return t>=e&&t<=n}catch{return!1}}const Rt=d,g0=Rt.CreationContext,At=Rt.MessageContext,jo=Rt.AsyncMessageContext;g0.prototype.Assignee=function(){var t,e,n;return(n=(e=(t=this.creationBody())==null?void 0:t.assignment())==null?void 0:e.assignee())==null?void 0:n.getFormattedText()},g0.prototype.AssigneePosition=function(){var e,n;const t=(n=(e=this.creationBody())==null?void 0:e.assignment())==null?void 0:n.assignee();if(!!t)return[t.start.start,t.stop.stop+1]},g0.prototype.Constructor=function(){var t,e;return(e=(t=this.creationBody())==null?void 0:t.construct())==null?void 0:e.getFormattedText()},g0.prototype.To=function(){return this.Constructor()},g0.prototype.Owner=function(){if(!this.Constructor())return"Missing Constructor";const t=this.Assignee(),e=this.Constructor();return t?`${t}:${e}`:e},At.prototype.To=function(){var t,e;return(e=(t=this.messageBody())==null?void 0:t.to())==null?void 0:e.getFormattedText()},At.prototype.Owner=function(){return this.To()||qo(this.parentCtx)};function qo(t){for(;t;){if(t instanceof g0||t instanceof At)return t.Owner();t=t.parentCtx}}jo.prototype.To=function(){var t;return(t=this.to())==null?void 0:t.getFormattedText()},jo.prototype.Owner=function(){return this.To()||qo(this.parentCtx)};const og=d.ProgContext;og.prototype.Starter=function(){var r,o,l,L,a,c,C,u,h,f,w,_;const t=(l=(o=(r=this.head())==null?void 0:r.starterExp())==null?void 0:o.starter())==null?void 0:l.getFormattedText();let e,n,i;const s=(L=this.block())==null?void 0:L.stat();if(s&&s[0]){const p=(C=(c=(a=s[0].message())==null?void 0:a.messageBody())==null?void 0:c.from())==null?void 0:C.getFormattedText(),g=(h=(u=s[0].asyncMessage())==null?void 0:u.from())==null?void 0:h.getFormattedText();e=p||g}else{const p=(f=this.head())==null?void 0:f.children;if(p&&p[0]){const g=p[0];if(g instanceof d.ParticipantContext&&(n=(w=g.name())==null?void 0:w.getFormattedText()),g instanceof d.GroupContext){const m=g.participant();m&&m[0]&&(i=(_=m[0].name())==null?void 0:_.getFormattedText())}}}return t||e||n||i||"_STARTER_"};const a7=d,lg=a7.RetContext,Ko=a7.ProgContext,Yo=a7.MessageContext,Lg=a7.CreationContext;lg.prototype.ReturnTo=function(){var i,s;const n=this.parentCtx.parentCtx.parentCtx;if(n instanceof Ko)return n.Starter();{let r=n;for(;r&&!(r instanceof Yo)&&!(r instanceof Lg);){if(r instanceof Ko)return r.Starter();r=r.parentCtx}return r instanceof Yo&&((s=(i=r.messageBody())==null?void 0:i.from())==null?void 0:s.getFormattedText())||r.ClosestAncestorStat().Origin()}};const Xo=d.RefContext;Xo.prototype.Content=function(){return this.name()[0]},Xo.prototype.Participants=function(){var t;return(t=this.name().slice(1))!=null?t:[]};const ag=T.ParserRuleContext,Qo=d.StatContext,kt=d.ProgContext,cg=d.MessageContext,Cg=d.CreationContext;ag.prototype.Origin=function(){let t=this.parentCtx;for(;t&&!(t instanceof Qo||t instanceof kt);)t=this.parentCtx;return t.Origin()},Qo.prototype.Origin=function(){let t=this.parentCtx;for(;t;){if(t instanceof kt)return t.Starter();if(t instanceof cg||t instanceof Cg){const e=t.Owner();if(e)return e}t=t.parentCtx}},kt.prototype.Origin=function(){return this.Starter()};const ug=d.DividerContext;ug.prototype.Note=function(){var e;const t=(e=this.dividerNote())==null?void 0:e.getFormattedText().trim();if(!t.startsWith("=="))throw new Error("Divider note must start with ==");return t==null?void 0:t.replace(/^=+|=+$/g,"")};const Zt=d,hg=Zt.MessageContext,dg=Zt.AsyncMessageContext,Jo=Zt.CreationContext;hg.prototype.SignatureText=function(){var t,e,n;return(n=(e=(t=this.messageBody())==null?void 0:t.func())==null?void 0:e.signature())==null?void 0:n.map(i=>i==null?void 0:i.getFormattedText()).join(".")},dg.prototype.SignatureText=function(){var t;return(t=this.content())==null?void 0:t.getFormattedText()},Jo.prototype.SignatureText=function(){var n;const t=this.creationBody().parameters();return"\xAB"+(((n=t==null?void 0:t.parameter())==null?void 0:n.length)>0?t.getFormattedText():"create")+"\xBB"},Jo.prototype.isParamValid=function(){var t,e;return((e=(t=this.creationBody().parameters())==null?void 0:t.parameter())==null?void 0:e.length)>0};const fg=d.MessageContext;class gg{constructor(e,n){i2(this,"assignee");i2(this,"type");if(n&&!e)throw new Error("assignee must be defined if type is defined");this.assignee=e||"",this.type=n||""}getText(){return[this.assignee,this.type].filter(Boolean).join(":")}}fg.prototype.Assignment=function(){var i,s;const t=this.messageBody().assignment(),e=(i=t==null?void 0:t.assignee())==null?void 0:i.getFormattedText(),n=(s=t==null?void 0:t.type())==null?void 0:s.getFormattedText();if(e)return new gg(e,n)};const f5=d,pg=f5.CreationContext,mg=f5.StatContext,el=f5.MessageContext,wg=f5.AsyncMessageContext,xg=f5.RetContext;pg.prototype.From=function(){if(this.parentCtx instanceof mg)return this.ClosestAncestorStat().Origin()},el.prototype.ProvidedFrom=function(){var t,e;return(e=(t=this.messageBody())==null?void 0:t.from())==null?void 0:e.getFormattedText()},el.prototype.From=function(){return this.ProvidedFrom()||this.ClosestAncestorStat().Origin()},wg.prototype.From=function(){return this.from()?this.from().getFormattedText():this.ClosestAncestorStat().Origin()},xg.prototype.From=function(){return this.ClosestAncestorStat().Origin()},T.ParserRuleContext.prototype.Key=function(){return`${this.start.start}:${this.stop.stop}`};const tl=d,nl=tl.StatContext;T.ParserRuleContext.prototype.ClosestAncestorStat=function(){let t=this;for(;!(t instanceof nl);)t=t.parentCtx;if(t instanceof nl)return t},T.ParserRuleContext.prototype.ClosestAncestorBlock=function(){var e;const t=(e=this.ClosestAncestorStat())==null?void 0:e.parentCtx;if(t instanceof tl.BlockContext)return t;console.warn("Cannot find closest ancestor block for context:",this)};function _g(t,e){switch(t){case 0:return function(){return e.apply(this,arguments)};case 1:return function(n){return e.apply(this,arguments)};case 2:return function(n,i){return e.apply(this,arguments)};case 3:return function(n,i,s){return e.apply(this,arguments)};case 4:return function(n,i,s,r){return e.apply(this,arguments)};case 5:return function(n,i,s,r,o){return e.apply(this,arguments)};case 6:return function(n,i,s,r,o,l){return e.apply(this,arguments)};case 7:return function(n,i,s,r,o,l,L){return e.apply(this,arguments)};case 8:return function(n,i,s,r,o,l,L,a){return e.apply(this,arguments)};case 9:return function(n,i,s,r,o,l,L,a,c){return e.apply(this,arguments)};case 10:return function(n,i,s,r,o,l,L,a,c,C){return e.apply(this,arguments)};default:throw new Error("First argument to _arity must be a non-negative integer no greater than ten")}}var il=_g;function vg(t,e){return function(){return e.call(this,t.apply(this,arguments))}}var Mg=vg;function yg(t){return t!=null&&typeof t=="object"&&t["@@functional/placeholder"]===!0}var Tt=yg,Rg=Tt;function Ag(t){return function e(n){return arguments.length===0||Rg(n)?e:t.apply(this,arguments)}}var c7=Ag,St=c7,g5=Tt;function kg(t){return function e(n,i){switch(arguments.length){case 0:return e;case 1:return g5(n)?e:St(function(s){return t(n,s)});default:return g5(n)&&g5(i)?e:g5(n)?St(function(s){return t(s,i)}):g5(i)?St(function(s){return t(n,s)}):t(n,i)}}}var sl=kg,C7=c7,p0=sl,b1=Tt;function Zg(t){return function e(n,i,s){switch(arguments.length){case 0:return e;case 1:return b1(n)?e:p0(function(r,o){return t(n,r,o)});case 2:return b1(n)&&b1(i)?e:b1(n)?p0(function(r,o){return t(r,i,o)}):b1(i)?p0(function(r,o){return t(n,r,o)}):C7(function(r){return t(n,i,r)});default:return b1(n)&&b1(i)&&b1(s)?e:b1(n)&&b1(i)?p0(function(r,o){return t(r,o,s)}):b1(n)&&b1(s)?p0(function(r,o){return t(r,i,o)}):b1(i)&&b1(s)?p0(function(r,o){return t(n,r,o)}):b1(n)?C7(function(r){return t(r,i,s)}):b1(i)?C7(function(r){return t(n,r,s)}):b1(s)?C7(function(r){return t(n,i,r)}):t(n,i,s)}}}var bt=Zg,rl=Array.isArray||function(e){return e!=null&&e.length>=0&&Object.prototype.toString.call(e)==="[object Array]"};function Tg(t){return Object.prototype.toString.call(t)==="[object String]"}var Sg=Tg,bg=c7,Eg=rl,Ig=Sg,Fg=bg(function(e){return Eg(e)?!0:!e||typeof e!="object"||Ig(e)?!1:e.length===0?!0:e.length>0?e.hasOwnProperty(0)&&e.hasOwnProperty(e.length-1):!1}),Og=Fg,Ng=function(){function t(e){this.f=e}return t.prototype["@@transducer/init"]=function(){throw new Error("init not implemented on XWrap")},t.prototype["@@transducer/result"]=function(e){return e},t.prototype["@@transducer/step"]=function(e,n){return this.f(e,n)},t}();function Dg(t){return new Ng(t)}var Pg=Dg,Bg=il,zg=sl,Ug=zg(function(e,n){return Bg(e.length,function(){return e.apply(n,arguments)})}),Wg=Ug,Hg=Og,$g=Pg,Vg=Wg;function Gg(t,e,n){for(var i=0,s=n.length;i<s;){if(e=t["@@transducer/step"](e,n[i]),e&&e["@@transducer/reduced"]){e=e["@@transducer/value"];break}i+=1}return t["@@transducer/result"](e)}function ol(t,e,n){for(var i=n.next();!i.done;){if(e=t["@@transducer/step"](e,i.value),e&&e["@@transducer/reduced"]){e=e["@@transducer/value"];break}i=n.next()}return t["@@transducer/result"](e)}function ll(t,e,n,i){return t["@@transducer/result"](n[i](Vg(t["@@transducer/step"],t),e))}var Ll=typeof Symbol<"u"?Symbol.iterator:"@@iterator";function jg(t,e,n){if(typeof t=="function"&&(t=$g(t)),Hg(n))return Gg(t,e,n);if(typeof n["fantasy-land/reduce"]=="function")return ll(t,e,n,"fantasy-land/reduce");if(n[Ll]!=null)return ol(t,e,n[Ll]());if(typeof n.next=="function")return ol(t,e,n);if(typeof n.reduce=="function")return ll(t,e,n,"reduce");throw new TypeError("reduce: list must be array or iterable")}var qg=jg,Kg=bt,Yg=qg,Xg=Kg(Yg),Qg=Xg,Jg=rl;function ep(t,e){return function(){var n=arguments.length;if(n===0)return e();var i=arguments[n-1];return Jg(i)||typeof i[t]!="function"?e.apply(this,arguments):i[t].apply(i,Array.prototype.slice.call(arguments,0,n-1))}}var al=ep,tp=al,np=bt,ip=np(tp("slice",function(e,n,i){return Array.prototype.slice.call(i,e,n)})),sp=ip,rp=al,op=c7,lp=sp,Lp=op(rp("tail",lp(1,1/0))),ap=Lp,cp=il,Cp=Mg,up=Qg,hp=ap;function dp(){if(arguments.length===0)throw new Error("pipe requires at least one argument");return cp(arguments[0].length,up(Cp,arguments[0],hp(arguments)))}var fp=dp;const gp=fp;var pp=bt,mp=pp(function(e,n,i){return i.replace(e,n)}),wp=mp;const m0=wp,xp=m0(/[\n\r]/g," "),_p=m0(/\s+/g," "),vp=m0(/\s*([,;.])\s*/g,"$1"),Mp=m0(/\s*(\()\s*|\s*(\))/g,"$1$2"),yp=m0(/\s+$/g,""),Rp=m0(/^"(.*)"$/,"$1"),cl=gp(xp,_p,vp,Mp,yp,Rp),Et=(t,e)=>{let n=e;for(t[n]===`
16
16
  `&&n--;n>=0;){if(t[n]===`
17
17
  `)return n+1;n--}return 0},Cl=(t,e)=>{const n=Et(t,e);if(n===0)return 0;let i=n-2;for(;i>=0;){if(t[i]===`
18
18
  `)return i+1;i--}return 0},Ap=(t,e)=>{const n=Et(t,e);if(n===0)return"";const i=Cl(t,e);return t.slice(i,n)};class kp extends T.error.ErrorListener{syntaxError(e,n,i,s,r){}}function Zp(t){const e=new T.InputStream(t),n=new s2(e),i=new T.CommonTokenStream(n),s=new d(i);return s.addErrorListener(new kp),s._syntaxErrors?null:s.prog()}T.ParserRuleContext.prototype.getFormattedText=function(){const t=this.parser.getTokenStream().getText(this.getSourceInterval());return cl(t)},T.ParserRuleContext.prototype.getComment=function(){let t=this.start.tokenIndex,e=s2.channelNames.indexOf("COMMENT_CHANNEL");this.constructor.name==="BraceBlockContext"&&(t=this.stop.tokenIndex);let n=this.parser.getTokenStream().getHiddenTokensToLeft(t,e);return n&&n.map(i=>i.text.substring(2)).join("")},T.ParserRuleContext.prototype.returnedValue=function(){return this.braceBlock().block().ret().value()};const Tp=d.ProgContext,Sp=Zp,ul=d.GroupContext,hl=d.ParticipantContext,w0=function(t,e){return Q1.getParticipants(t,e)};var j4=(t=>(t[t.MessageContent=0]="MessageContent",t[t.ParticipantName=1]="ParticipantName",t))(j4||{});let It={};const dl={},fl=t=>{var e;if(t!=null){const n=(e=It[t])!=null?e:dl[t];return n!==void 0?n:null}return null},gl=(t,e,n=!1)=>{It[t]=e,n&&(dl[t]=e)},pl=()=>{It={}};function p5(t,e){const n=`WidthProviderOnBrowser_${t}_${e}`,i=fl(n);if(i!=null)return i;let s=document.querySelector(".textarea-hidden-div");if(!s){const o=document.createElement("div");o.className="textarea-hidden-div ",o.style.fontSize=e===j4.MessageContent?"0.875rem":"1rem",o.style.fontFamily="Helvetica, Verdana, serif",o.style.display="inline",o.style.whiteSpace="nowrap",o.style.visibility="hidden",o.style.position="absolute",o.style.top="0",o.style.left="0",o.style.overflow="hidden",o.style.width="0px",o.style.paddingLeft="0px",o.style.paddingRight="0px",o.style.margin="0px",o.style.border="0px",document.body.appendChild(o),s=o}s.textContent=t;const r=s.scrollWidth;return gl(n,r,!0),r}const bp=110,Ft=20,Ep=10,Ip=14,Fp=100,ml=70,Op=d;class Ot extends E{constructor(){super(...arguments);i2(this,"explicitParticipants",[]);i2(this,"starter","");i2(this,"implicitParticipants",[]);i2(this,"isBlind",!1)}enterCondition(){this.isBlind=!0}exitCondition(){this.isBlind=!1}enterParameters(){this.isBlind=!0}exitParameters(){this.isBlind=!1}enterStarter(n){this.starter=n.getFormattedText()}enterParticipant(n){var o,l,L;const i=((o=n==null?void 0:n.name())==null?void 0:o.getFormattedText())||"Missing `Participant` name",s=(L=(l=n.label())==null?void 0:l.name())==null?void 0:L.getFormattedText(),r={name:i,label:s,left:""};this.explicitParticipants.push(r)}enterFrom(n){if(this.isBlind)return;const i=n==null?void 0:n.getFormattedText();if(n.ClosestAncestorBlock().parentCtx instanceof Op.ProgContext&&n.ClosestAncestorStat()===n.ClosestAncestorBlock().children[0]){this.starter=i;return}this.enterTo(n)}enterTo(n){if(this.isBlind)return;const i=n==null?void 0:n.getFormattedText();if(i===this.starter||this.explicitParticipants.some(r=>r.name===i))return;const s={name:i,left:""};this.implicitParticipants.push(s)}enterCreation(n){if(this.isBlind)return;const i=n==null?void 0:n.Owner();if(i===this.starter||this.explicitParticipants.some(r=>r.name===i))return;const s={name:i,left:""};this.implicitParticipants.push(s)}enterRef(n){n.Participants().forEach(i=>{this.implicitParticipants.push({name:i.getText(),left:""})})}result(){let n=[...this.explicitParticipants,...this.implicitParticipants];return this._isStarterExplicitlyPositioned()||n.unshift(this._getStarter()),n=this._dedup(n),Ot._assignLeft(n),n}_isStarterExplicitlyPositioned(){return this.starter&&this.explicitParticipants.find(n=>n.name===this.starter)}_getStarter(){return{name:this.starter||"_STARTER_",left:""}}_dedup(n){return n.filter((i,s)=>n.findIndex(r=>r.name===i.name)===s)}static _assignLeft(n){n.reduce((i,s)=>(s.left=i.name||"",s),{name:"",left:""})}}function Np(t){const e=new Ot;return T.tree.ParseTreeWalker.DEFAULT.walk(e,t),e.result()}function u7(t,e){return{position:t,velocity:e}}function wl(t,e){return u7(t.position+e.position,t.velocity+e.velocity)}const xl=Math.sqrt(Number.EPSILON);function Dp(t,e){const n=t.position-e.position;return n<-xl||Math.abs(n)<=xl&&t.velocity<e.velocity}function Pp(){return{delta:1/0,dualLessThan:function(t,e){const n=Dp(t,e);return n&&([t,e]=[e,t]),t.velocity<e.velocity&&(this.delta=Math.min(this.delta,(t.position-e.position)/(e.velocity-t.velocity))),n}}}function Bp(t,e){const n=Array();for(let i=0;i<t;i++){n.push([]);for(let s=0;s<i;s++)e[s][i]>0&&n[i].push({i:s,length:u7(e[s][i],0)})}return n}function zp(t,e){const n=Pp();let i=u7(0,0);const s=[];for(let r=0;r<t.length;r++){let o=null;r>0&&(i=wl(i,e[r-1]));for(const l of t[r]){const L=wl(s[l.i].maximum,l.length);n.dualLessThan(i,L)&&(o=l.i,i=L)}s.push({argument:o,maximum:i})}return[n.delta,s]}function Up(t,e,n){let i=t.length-1;for(;i>0;){const s=t[i].argument;s!==null?i=s:(i--,n[i].velocity=0)}}function Wp(t,e){for(let n=0;n<t.length;n++)t[n].position+=t[n].velocity*e}function Hp(t){const e=[];for(const n of t)e.push(n.maximum.position);return e}function $p(t){const e=t.length,n=Bp(e,t),i=[];for(let s=1;s<e;s++)i.push(u7(0,1));for(;;){const[s,r]=zp(n,i);if(s==1/0)return Hp(r);r[e-1].maximum.velocity>0?Up(r,n,i):Wp(i,s)}}var m5=(t=>(t[t.SyncMessage=0]="SyncMessage",t[t.AsyncMessage=1]="AsyncMessage",t[t.CreationMessage=2]="CreationMessage",t))(m5||{});class Vp extends E{constructor(){super(...arguments);i2(this,"isBlind",!1);i2(this,"ownableMessages",[]);i2(this,"enterMessage",n=>this._addOwnedMessage(m5.SyncMessage)(n));i2(this,"enterAsyncMessage",n=>this._addOwnedMessage(m5.AsyncMessage)(n));i2(this,"enterCreation",n=>this._addOwnedMessage(m5.CreationMessage)(n));i2(this,"_addOwnedMessage",n=>i=>{if(this.isBlind)return;const s=i.From(),r=i==null?void 0:i.Owner(),o=i==null?void 0:i.SignatureText();this.ownableMessages.push({from:s,signature:o,type:n,to:r})})}enterParameters(){this.isBlind=!0}exitParameters(){this.isBlind=!1}result(){return this.ownableMessages}}function _l(t){const e=T.tree.ParseTreeWalker.DEFAULT,n=new Vp;return e.walk(n,t),n.result()}class Gp{constructor(e,n){i2(this,"m",[]);i2(this,"widthProvider");i2(this,"participantModels");i2(this,"ownableMessages");pl(),this.participantModels=Np(e),this.ownableMessages=_l(e),this.widthProvider=n,this.walkThrough()}orderedParticipantNames(){return this.participantModels.map(e=>e.name)}getPosition(e){const n=this.participantModels.findIndex(l=>l.name===e);if(n===-1)throw Error(`Participant ${e} not found`);const i=`getPosition_${e}`,s=fl(i);if(s!=null)return s;const o=this.getParticipantGap(this.participantModels[0])+$p(this.m)[n];return gl(i,o),console.debug(`Position of ${e} is ${o}`),o}walkThrough(){this.withParticipantGaps(this.participantModels),this.withMessageGaps(this.ownableMessages,this.participantModels)}half(e){if(e==="_STARTER_")return Ft/2;const n=this.halfWithMargin(this.labelOrName(e));return Math.max(n,bp/2)}getWidth(){const e=this.participantModels[this.participantModels.length-1].name,n=this.getPosition(e)+this.half(e);return Math.max(n,200)}distance(e,n){return this.getPosition(n)-this.getPosition(e)}withMessageGaps(e,n){e.forEach(i=>{const s=n.findIndex(L=>L.name===i.from),r=n.findIndex(L=>L.name===i.to);if(s===-1||r===-1){console.warn(`Participant ${i.from} or ${i.to} not found`);return}const o=Math.min(s,r),l=Math.max(s,r);try{const L=this.getMessageWidth(i);this.m[o][l]=Math.max(L+Ep+Ip,this.m[o][l])}catch{console.warn(`Could not set message gap between ${i.from} and ${i.to}`)}})}getMessageWidth(e){const n=this.half(e.to);let i=this.widthProvider(e.signature,j4.MessageContent);return e.type===m5.CreationMessage&&(i+=n),i}withParticipantGaps(e){this.m=e.map((n,i)=>e.map((s,r)=>r-i===1?this.getParticipantGap(s):0))}getParticipantGap(e){const n=this.half(e.left),i=this.half(e.name),s=e.left&&e.left!=="_STARTER_",r=e.name&&e.name!=="_STARTER_";return(s&&n||0)+(r&&i||0)}labelOrName(e){const n=this.participantModels.findIndex(i=>i.name===e);return n===-1?"":this.participantModels[n].label||this.participantModels[n].name}halfWithMargin(e){return this._getParticipantWidth(e)/2+Ft/2}_getParticipantWidth(e){return Math.max(this.widthProvider(e||"",j4.ParticipantName),Fp)}}var e3=(t=>(t.Static="static",t.Dynamic="dynamic",t))(e3||{});const vl=()=>({state:{code:"",theme:"theme-default",enableScopedTheming:!1,themeIconDot:Boolean(localStorage.getItem(`${location.hostname}-zenuml-theme-icon-dot`)),enableMultiTheme:!0,scale:1,selected:[],cursor:null,showTips:!1,mode:"dynamic",numbering:Boolean(localStorage.getItem(`${location.hostname}-zenuml-numbering`)),stickyOffset:0,diagramElement:null,onElementClick:t=>{console.log("Element clicked",t)},onMessageClick:()=>{},onContentChange:()=>{},onThemeChange:()=>{},onEventEmit:()=>{}},getters:{code:t=>t.code,rootContext:t=>Sp(t.code),title:(t,e)=>{var n,i;return(i=(n=e.rootContext)==null?void 0:n.title())==null?void 0:i.content()},participants:(t,e)=>w0(e.rootContext,!0),coordinates:(t,e)=>new Gp(e.rootContext,p5),centerOf:(t,e)=>n=>{if(!n)return console.error("[@zenuml/core] centerOf: entity is undefined"),0;try{return e.coordinates.getPosition(n)||0}catch(i){return console.error(i),0}},GroupContext:()=>ul,ParticipantContext:()=>hl,cursor:t=>t.cursor,distance:(t,e)=>(n,i)=>e.centerOf(n)-e.centerOf(i),distance2:(t,e)=>(n,i)=>!n||!i?0:e.centerOf(i)-e.centerOf(n),onElementClick:t=>t.onElementClick,onMessageClick:t=>t.onMessageClick,diagramElement:t=>t.diagramElement,onContentChange:t=>t.onContentChange,onThemeChange:t=>t.onThemeChange,onEventEmit:t=>t.onEventEmit},mutations:{code:function(t,e){t.code=e},setScale:function(t,e){t.scale=e},onSelect:function(t,e){t.selected.includes(e)?t.selected=t.selected.filter(n=>n!==e):t.selected.push(e)},cursor:function(t,e){t.cursor=e},toggleNumbering(t,e){e?localStorage.setItem(`${location.hostname}-zenuml-numbering`,"1"):localStorage.setItem(`${location.hostname}-zenuml-numbering`,""),t.numbering=e},setTheme:function(t,e){var n;t.theme=e,(n=t.onThemeChange)==null||n.call(t,{theme:e,scoped:Boolean(t.enableScopedTheming)})},setThemeIconDot:function(t,e){localStorage.setItem(`${location.hostname}-zenuml-theme-icon-dot`,e?"1":""),t.themeIconDot=e},setEnableScopedTheming:function(t,e){var n;t.enableScopedTheming=e,(n=t.onThemeChange)==null||n.call(t,{theme:t.theme,scoped:e})},eventEmit:function(t,e){var n;(n=t.onEventEmit)==null||n.call(t,e.event,e.data)},onEventEmit:function(t,e){t.onEventEmit=e},onMessageClick:function(t,e){t.onMessageClick=e},onContentChange:function(t,e){t.onContentChange=e},onThemeChange:function(t,e){t.onThemeChange=e},diagramElement:function(t,e){t.diagramElement=e}},actions:{updateCode:function({commit:t},e){if(typeof e=="string")throw Error("You are using a old version of vue-sequence. New version requires {code, cursor}.");e.code!==this.state.code&&t("code",e.code)}},strict:!1}),jp=(t,e)=>{const n=t[e];return n?typeof n=="function"?n():Promise.resolve(n):new Promise((i,s)=>{(typeof queueMicrotask=="function"?queueMicrotask:setTimeout)(s.bind(null,new Error("Unknown variable dynamic import: "+e)))})},q4={__name:"Icon",props:{name:{type:String,required:!0},iconClass:{type:String,required:!1}},setup(t){const e=t,n=Q9(()=>jp(Object.assign({"./icons/close.svg":()=>Promise.resolve().then(()=>JO),"./icons/collapse-expanded.svg":()=>Promise.resolve().then(()=>nN),"./icons/collapse-unexpanded.svg":()=>Promise.resolve().then(()=>rN),"./icons/debug.svg":()=>Promise.resolve().then(()=>LN),"./icons/message-arrow.svg":()=>Promise.resolve().then(()=>CN),"./icons/non-selected-cycle.svg":()=>Promise.resolve().then(()=>dN),"./icons/numbering.svg":()=>Promise.resolve().then(()=>pN),"./icons/privacy.svg":()=>Promise.resolve().then(()=>xN),"./icons/selected-cycle.svg":()=>Promise.resolve().then(()=>MN),"./icons/theme.svg":()=>Promise.resolve().then(()=>AN),"./icons/tip.svg":()=>Promise.resolve().then(()=>TN),"./icons/zoom-in.svg":()=>Promise.resolve().then(()=>EN),"./icons/zoom-out.svg":()=>Promise.resolve().then(()=>ON)}),`./icons/${e.name}.svg`));return(i,s)=>(I(),B("span",{class:y2(["flex items-center justify-center",t.iconClass]),onClick:s[0]||(s[0]=r=>i.$emit("icon-click"))},[(I(),S2(w8(N(n)),{class:"w-full h-full"}))],2))}},xP="",Y2=(t,e)=>{const n=t.__vccOpts||t;for(const[i,s]of e)n[i]=s;return n},qp={name:"Privacy",components:{Icon:q4}},Kp={class:"privacy tooltip bottom whitespace-normal flex items-center","data-tooltip":"We (the vendor) do not have access to your data. The diagram is generated in this browser."};function Yp(t,e,n,i,s,r){const o=w2("Icon");return I(),B("div",null,[R("div",Kp,[G(o,{name:"privacy","icon-class":"fill-current h-6 w-6 m-auto"})])])}const Xp=Y2(qp,[["render",Yp],["__scopeId","data-v-3e7c8bd7"]]),Qp={name:"DiagramTitle",props:["context"],computed:{title:function(){var t;return(t=this.context)==null?void 0:t.content()}}},Jp={class:"title text-skin-title text-base font-semibold"};function em(t,e,n,i,s,r){return I(),B("div",Jp,K2(r.title),1)}const tm=Y2(Qp,[["render",em]]);class nm{constructor(){i2(this,"events",{})}on(e,n){this.events[e]||(this.events[e]=new Set),console.debug(`Event ${e} ${n} added`),console.debug(this.events),this.events[e].add(n)}off(e,n){var i;console.debug(`Event ${e} ${n} removed`),console.debug(this.events),(i=this.events[e])==null||i.delete(n)}emit(e,n){const i=this.events[e];i&&i.forEach(s=>s(n))}}const h7=new nm;function im(t,e,n,i){const s={label:JSON.stringify(e),action:n,category:i};t.commit("eventEmit",{event:"trackEvent",data:s}),h7.emit("trackEvent",s)}var Nt={exports:{}},sm={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},Ml={exports:{}},rm=function(e){return!e||typeof e=="string"?!1:e instanceof Array||Array.isArray(e)||e.length>=0&&(e.splice instanceof Function||Object.getOwnPropertyDescriptor(e,e.length-1)&&e.constructor.name!=="String")},om=rm,lm=Array.prototype.concat,Lm=Array.prototype.slice,yl=Ml.exports=function(e){for(var n=[],i=0,s=e.length;i<s;i++){var r=e[i];om(r)?n=lm.call(n,Lm.call(r)):n.push(r)}return n};yl.wrap=function(t){return function(){return t(yl(arguments))}};var d7=sm,w5=Ml.exports,Rl={};for(var Dt in d7)d7.hasOwnProperty(Dt)&&(Rl[d7[Dt]]=Dt);var M3=Nt.exports={to:{},get:{}};M3.get=function(t){var e=t.substring(0,3).toLowerCase(),n,i;switch(e){case"hsl":n=M3.get.hsl(t),i="hsl";break;case"hwb":n=M3.get.hwb(t),i="hwb";break;default:n=M3.get.rgb(t),i="rgb";break}return n?{model:i,value:n}:null},M3.get.rgb=function(t){if(!t)return null;var e=/^#([a-f0-9]{3,4})$/i,n=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,i=/^rgba?\(\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/,s=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/,r=/(\D+)/,o=[0,0,0,1],l,L,a;if(l=t.match(n)){for(a=l[2],l=l[1],L=0;L<3;L++){var c=L*2;o[L]=parseInt(l.slice(c,c+2),16)}a&&(o[3]=parseInt(a,16)/255)}else if(l=t.match(e)){for(l=l[1],a=l[3],L=0;L<3;L++)o[L]=parseInt(l[L]+l[L],16);a&&(o[3]=parseInt(a+a,16)/255)}else if(l=t.match(i)){for(L=0;L<3;L++)o[L]=parseInt(l[L+1],0);l[4]&&(o[3]=parseFloat(l[4]))}else if(l=t.match(s)){for(L=0;L<3;L++)o[L]=Math.round(parseFloat(l[L+1])*2.55);l[4]&&(o[3]=parseFloat(l[4]))}else return(l=t.match(r))?l[1]==="transparent"?[0,0,0,0]:(o=d7[l[1]],o?(o[3]=1,o):null):null;for(L=0;L<3;L++)o[L]=K4(o[L],0,255);return o[3]=K4(o[3],0,1),o},M3.get.hsl=function(t){if(!t)return null;var e=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/,n=t.match(e);if(n){var i=parseFloat(n[4]),s=(parseFloat(n[1])+360)%360,r=K4(parseFloat(n[2]),0,100),o=K4(parseFloat(n[3]),0,100),l=K4(isNaN(i)?1:i,0,1);return[s,r,o,l]}return null},M3.get.hwb=function(t){if(!t)return null;var e=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/,n=t.match(e);if(n){var i=parseFloat(n[4]),s=(parseFloat(n[1])%360+360)%360,r=K4(parseFloat(n[2]),0,100),o=K4(parseFloat(n[3]),0,100),l=K4(isNaN(i)?1:i,0,1);return[s,r,o,l]}return null},M3.to.hex=function(){var t=w5(arguments);return"#"+f7(t[0])+f7(t[1])+f7(t[2])+(t[3]<1?f7(Math.round(t[3]*255)):"")},M3.to.rgb=function(){var t=w5(arguments);return t.length<4||t[3]===1?"rgb("+Math.round(t[0])+", "+Math.round(t[1])+", "+Math.round(t[2])+")":"rgba("+Math.round(t[0])+", "+Math.round(t[1])+", "+Math.round(t[2])+", "+t[3]+")"},M3.to.rgb.percent=function(){var t=w5(arguments),e=Math.round(t[0]/255*100),n=Math.round(t[1]/255*100),i=Math.round(t[2]/255*100);return t.length<4||t[3]===1?"rgb("+e+"%, "+n+"%, "+i+"%)":"rgba("+e+"%, "+n+"%, "+i+"%, "+t[3]+")"},M3.to.hsl=function(){var t=w5(arguments);return t.length<4||t[3]===1?"hsl("+t[0]+", "+t[1]+"%, "+t[2]+"%)":"hsla("+t[0]+", "+t[1]+"%, "+t[2]+"%, "+t[3]+")"},M3.to.hwb=function(){var t=w5(arguments),e="";return t.length>=4&&t[3]!==1&&(e=", "+t[3]),"hwb("+t[0]+", "+t[1]+"%, "+t[2]+"%"+e+")"},M3.to.keyword=function(t){return Rl[t.slice(0,3)]};function K4(t,e,n){return Math.min(Math.max(e,t),n)}function f7(t){var e=t.toString(16).toUpperCase();return e.length<2?"0"+e:e}function am(t){const e=Nt.exports.get.rgb(t),[n,i,s]=e;return(n*299+i*587+s*114)/1e3}function cm(t){const e=Nt.exports.get.rgb(t),[n,i,s]=e;return`rgb(${n}, ${i}, ${s})`}const Cm=`<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">