1 package it.unical.mat.parsers.asp.dlv;
3 import org.antlr.v4.runtime.atn.*;
4 import org.antlr.v4.runtime.dfa.DFA;
5 import org.antlr.v4.runtime.*;
6 import org.antlr.v4.runtime.misc.*;
7 import org.antlr.v4.runtime.tree.*;
9 import java.util.Iterator;
10 import java.util.ArrayList;
12 @SuppressWarnings({
"all",
"warnings",
"unchecked",
"unused",
"cast"})
14 static { RuntimeMetaData.checkVersion(
"4.7", RuntimeMetaData.VERSION); }
16 protected static final DFA[] _decisionToDFA;
17 protected static final PredictionContextCache _sharedContextCache =
18 new PredictionContextCache();
19 public static final int
20 HEADER=1, COLON=2, COST_BEGIN=3, COST_END=4, OPEN_SQUARE_BRACKET=5, CLOSE_SQUARE_BRACKET=6,
21 GROUND_QUERY_BEGIN=7, MODEL_BEGIN=8, MODEL_END=9, WEIGHTED_MODEL_LABEL=10,
22 COMMA=11, IDENTIFIER=12, INTEGER_CONSTANT=13, STRING_CONSTANT=14, TERMS_BEGIN=15,
23 TERMS_END=16, WHITESPACE=17, REASONING=18, DOT=19, BOOLEAN=20, WHITESPACE_IN_GROUND_QUERY=21,
25 public static final int
26 RULE_answer_set = 0, RULE_cost = 1, RULE_cost_level = 2, RULE_model = 3,
27 RULE_output = 4, RULE_predicate = 5, RULE_term = 6, RULE_witness = 7;
28 public static final String[] ruleNames = {
29 "answer_set",
"cost",
"cost_level",
"model",
"output",
"predicate",
"term",
33 private static final String[] _LITERAL_NAMES = {
34 null,
null,
"':'",
"'Cost ([Weight:Level]): <'",
"'>'",
"'['",
"']'",
35 "' is '",
"'{'",
"'}'",
"'Best model:'",
"','",
null,
null,
null,
"'('",
36 "')'",
null,
null,
"'.'",
null,
null,
"', evidenced by'"
38 private static final String[] _SYMBOLIC_NAMES = {
39 null,
"HEADER",
"COLON",
"COST_BEGIN",
"COST_END",
"OPEN_SQUARE_BRACKET",
40 "CLOSE_SQUARE_BRACKET",
"GROUND_QUERY_BEGIN",
"MODEL_BEGIN",
"MODEL_END",
41 "WEIGHTED_MODEL_LABEL",
"COMMA",
"IDENTIFIER",
"INTEGER_CONSTANT",
"STRING_CONSTANT",
42 "TERMS_BEGIN",
"TERMS_END",
"WHITESPACE",
"REASONING",
"DOT",
"BOOLEAN",
43 "WHITESPACE_IN_GROUND_QUERY",
"WITNESS_LABEL"
45 public static final Vocabulary VOCABULARY =
new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES);
53 tokenNames =
new String[_SYMBOLIC_NAMES.length];
54 for (
int i = 0; i < tokenNames.length; i++) {
55 tokenNames[i] = VOCABULARY.getLiteralName(i);
56 if (tokenNames[i] ==
null) {
57 tokenNames[i] = VOCABULARY.getSymbolicName(i);
60 if (tokenNames[i] ==
null) {
61 tokenNames[i] =
"<INVALID>";
68 public String[] getTokenNames() {
74 public Vocabulary getVocabulary() {
79 public String getGrammarFileName() {
return "DLVParser.g4"; }
82 public String[] getRuleNames() {
return ruleNames; }
85 public String getSerializedATN() {
return _serializedATN; }
88 public ATN getATN() {
return _ATN; }
90 public DLVParser(TokenStream input) {
92 _interp =
new ParserATNSimulator(
this,_ATN,_decisionToDFA,_sharedContextCache);
94 public static class Answer_setContext
extends ParserRuleContext {
95 public Answer_setContext(ParserRuleContext parent,
int invokingState) {
96 super(parent, invokingState);
98 @Override
public int getRuleIndex() {
return RULE_answer_set; }
100 public Answer_setContext() { }
101 public void copyFrom(Answer_setContext ctx) {
105 public static class SimpleModelContext
extends Answer_setContext {
106 public ModelContext model() {
107 return getRuleContext(ModelContext.class,0);
109 public SimpleModelContext(Answer_setContext ctx) { copyFrom(ctx); }
111 public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
112 if ( visitor instanceof DLVParserVisitor )
return ((DLVParserVisitor<? extends T>)visitor).visitSimpleModel(
this);
113 else return visitor.visitChildren(
this);
116 public static class GroundQueryContext
extends Answer_setContext {
117 public List<TerminalNode> IDENTIFIER() {
return getTokens(DLVParser.IDENTIFIER); }
118 public TerminalNode IDENTIFIER(
int i) {
119 return getToken(DLVParser.IDENTIFIER, i);
121 public TerminalNode GROUND_QUERY_BEGIN() {
return getToken(DLVParser.GROUND_QUERY_BEGIN, 0); }
122 public TerminalNode REASONING() {
return getToken(DLVParser.REASONING, 0); }
123 public TerminalNode BOOLEAN() {
return getToken(DLVParser.BOOLEAN, 0); }
124 public TerminalNode DOT() {
return getToken(DLVParser.DOT, 0); }
125 public WitnessContext witness() {
126 return getRuleContext(WitnessContext.class,0);
128 public List<TerminalNode> COMMA() {
return getTokens(DLVParser.COMMA); }
129 public TerminalNode COMMA(
int i) {
130 return getToken(DLVParser.COMMA, i);
132 public GroundQueryContext(Answer_setContext ctx) { copyFrom(ctx); }
134 public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
135 if ( visitor instanceof DLVParserVisitor )
return ((DLVParserVisitor<? extends T>)visitor).visitGroundQuery(
this);
136 else return visitor.visitChildren(
this);
139 public static class WeightedModelContext
extends Answer_setContext {
140 public ModelContext model() {
141 return getRuleContext(ModelContext.class,0);
143 public CostContext cost() {
144 return getRuleContext(CostContext.class,0);
146 public TerminalNode WEIGHTED_MODEL_LABEL() {
return getToken(DLVParser.WEIGHTED_MODEL_LABEL, 0); }
147 public WeightedModelContext(Answer_setContext ctx) { copyFrom(ctx); }
149 public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
150 if ( visitor instanceof DLVParserVisitor )
return ((DLVParserVisitor<? extends T>)visitor).visitWeightedModel(
this);
151 else return visitor.visitChildren(
this);
154 public static class NonGroundQueryContext
extends Answer_setContext {
155 public List<TermContext> term() {
156 return getRuleContexts(TermContext.class);
158 public TermContext term(
int i) {
159 return getRuleContext(TermContext.class,i);
161 public List<TerminalNode> COMMA() {
return getTokens(DLVParser.COMMA); }
162 public TerminalNode COMMA(
int i) {
163 return getToken(DLVParser.COMMA, i);
165 public NonGroundQueryContext(Answer_setContext ctx) { copyFrom(ctx); }
167 public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
168 if ( visitor instanceof DLVParserVisitor )
return ((DLVParserVisitor<? extends T>)visitor).visitNonGroundQuery(
this);
169 else return visitor.visitChildren(
this);
173 public final Answer_setContext answer_set() throws RecognitionException {
174 Answer_setContext _localctx =
new Answer_setContext(_ctx, getState());
175 enterRule(_localctx, 0, RULE_answer_set);
179 _errHandler.sync(
this);
180 switch ( getInterpreter().adaptivePredict(_input,4,_ctx) ) {
182 _localctx =
new GroundQueryContext(_localctx);
183 enterOuterAlt(_localctx, 1);
188 _errHandler.sync(
this);
200 _errHandler.sync(
this);
204 match(GROUND_QUERY_BEGIN);
210 _errHandler.sync(
this);
211 switch (_input.LA(1)) {
225 throw new NoViableAltException(
this);
230 _localctx =
new SimpleModelContext(_localctx);
231 enterOuterAlt(_localctx, 2);
238 _localctx =
new NonGroundQueryContext(_localctx);
239 enterOuterAlt(_localctx, 3);
244 _errHandler.sync(
this);
256 _errHandler.sync(
this);
262 _localctx =
new WeightedModelContext(_localctx);
263 enterOuterAlt(_localctx, 4);
266 _errHandler.sync(
this);
268 if (_la==WEIGHTED_MODEL_LABEL) {
271 match(WEIGHTED_MODEL_LABEL);
283 catch (RecognitionException re) {
284 _localctx.exception = re;
285 _errHandler.reportError(
this, re);
286 _errHandler.recover(
this, re);
294 public static class CostContext
extends ParserRuleContext {
295 public TerminalNode COST_BEGIN() {
return getToken(DLVParser.COST_BEGIN, 0); }
296 public List<Cost_levelContext> cost_level() {
297 return getRuleContexts(Cost_levelContext.class);
299 public Cost_levelContext cost_level(
int i) {
300 return getRuleContext(Cost_levelContext.class,i);
302 public TerminalNode COST_END() {
return getToken(DLVParser.COST_END, 0); }
303 public List<TerminalNode> COMMA() {
return getTokens(DLVParser.COMMA); }
304 public TerminalNode COMMA(
int i) {
305 return getToken(DLVParser.COMMA, i);
307 public CostContext(ParserRuleContext parent,
int invokingState) {
308 super(parent, invokingState);
310 @Override
public int getRuleIndex() {
return RULE_cost; }
312 public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
313 if ( visitor instanceof DLVParserVisitor )
return ((DLVParserVisitor<? extends T>)visitor).visitCost(
this);
314 else return visitor.visitChildren(
this);
318 public final CostContext cost() throws RecognitionException {
319 CostContext _localctx =
new CostContext(_ctx, getState());
320 enterRule(_localctx, 2, RULE_cost);
323 enterOuterAlt(_localctx, 1);
330 _errHandler.sync(
this);
342 _errHandler.sync(
this);
349 catch (RecognitionException re) {
350 _localctx.exception = re;
351 _errHandler.reportError(
this, re);
352 _errHandler.recover(
this, re);
360 public static class Cost_levelContext
extends ParserRuleContext {
361 public TerminalNode OPEN_SQUARE_BRACKET() {
return getToken(DLVParser.OPEN_SQUARE_BRACKET, 0); }
362 public List<TerminalNode> INTEGER_CONSTANT() {
return getTokens(DLVParser.INTEGER_CONSTANT); }
363 public TerminalNode INTEGER_CONSTANT(
int i) {
364 return getToken(DLVParser.INTEGER_CONSTANT, i);
366 public TerminalNode COLON() {
return getToken(DLVParser.COLON, 0); }
367 public TerminalNode CLOSE_SQUARE_BRACKET() {
return getToken(DLVParser.CLOSE_SQUARE_BRACKET, 0); }
368 public Cost_levelContext(ParserRuleContext parent,
int invokingState) {
369 super(parent, invokingState);
371 @Override
public int getRuleIndex() {
return RULE_cost_level; }
373 public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
374 if ( visitor instanceof DLVParserVisitor )
return ((DLVParserVisitor<? extends T>)visitor).visitCost_level(
this);
375 else return visitor.visitChildren(
this);
379 public final Cost_levelContext cost_level() throws RecognitionException {
380 Cost_levelContext _localctx =
new Cost_levelContext(_ctx, getState());
381 enterRule(_localctx, 4, RULE_cost_level);
383 enterOuterAlt(_localctx, 1);
386 match(OPEN_SQUARE_BRACKET);
388 match(INTEGER_CONSTANT);
392 match(INTEGER_CONSTANT);
394 match(CLOSE_SQUARE_BRACKET);
397 catch (RecognitionException re) {
398 _localctx.exception = re;
399 _errHandler.reportError(
this, re);
400 _errHandler.recover(
this, re);
408 public static class ModelContext
extends ParserRuleContext {
409 public TerminalNode MODEL_BEGIN() {
return getToken(DLVParser.MODEL_BEGIN, 0); }
410 public TerminalNode MODEL_END() {
return getToken(DLVParser.MODEL_END, 0); }
411 public List<PredicateContext> predicate() {
412 return getRuleContexts(PredicateContext.class);
414 public PredicateContext predicate(
int i) {
415 return getRuleContext(PredicateContext.class,i);
417 public List<TerminalNode> COMMA() {
return getTokens(DLVParser.COMMA); }
418 public TerminalNode COMMA(
int i) {
419 return getToken(DLVParser.COMMA, i);
421 public ModelContext(ParserRuleContext parent,
int invokingState) {
422 super(parent, invokingState);
424 @Override
public int getRuleIndex() {
return RULE_model; }
426 public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
427 if ( visitor instanceof DLVParserVisitor )
return ((DLVParserVisitor<? extends T>)visitor).visitModel(
this);
428 else return visitor.visitChildren(
this);
432 public final ModelContext model() throws RecognitionException {
433 ModelContext _localctx =
new ModelContext(_ctx, getState());
434 enterRule(_localctx, 6, RULE_model);
437 enterOuterAlt(_localctx, 1);
442 _errHandler.sync(
this);
444 if (_la==IDENTIFIER) {
449 _errHandler.sync(
this);
461 _errHandler.sync(
this);
471 catch (RecognitionException re) {
472 _localctx.exception = re;
473 _errHandler.reportError(
this, re);
474 _errHandler.recover(
this, re);
482 public static class OutputContext
extends ParserRuleContext {
483 public List<Answer_setContext> answer_set() {
484 return getRuleContexts(Answer_setContext.class);
486 public Answer_setContext answer_set(
int i) {
487 return getRuleContext(Answer_setContext.class,i);
489 public OutputContext(ParserRuleContext parent,
int invokingState) {
490 super(parent, invokingState);
492 @Override
public int getRuleIndex() {
return RULE_output; }
494 public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
495 if ( visitor instanceof DLVParserVisitor )
return ((DLVParserVisitor<? extends T>)visitor).visitOutput(
this);
496 else return visitor.visitChildren(
this);
500 public final OutputContext output() throws RecognitionException {
501 OutputContext _localctx =
new OutputContext(_ctx, getState());
502 enterRule(_localctx, 8, RULE_output);
505 enterOuterAlt(_localctx, 1);
508 _errHandler.sync(
this);
510 while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << OPEN_SQUARE_BRACKET) | (1L << MODEL_BEGIN) | (1L << WEIGHTED_MODEL_LABEL) | (1L << IDENTIFIER) | (1L << INTEGER_CONSTANT) | (1L << STRING_CONSTANT))) != 0)) {
518 _errHandler.sync(
this);
523 catch (RecognitionException re) {
524 _localctx.exception = re;
525 _errHandler.reportError(
this, re);
526 _errHandler.recover(
this, re);
534 public static class PredicateContext
extends ParserRuleContext {
535 public TerminalNode IDENTIFIER() {
return getToken(DLVParser.IDENTIFIER, 0); }
536 public TerminalNode TERMS_BEGIN() {
return getToken(DLVParser.TERMS_BEGIN, 0); }
537 public List<TermContext> term() {
538 return getRuleContexts(TermContext.class);
540 public TermContext term(
int i) {
541 return getRuleContext(TermContext.class,i);
543 public TerminalNode TERMS_END() {
return getToken(DLVParser.TERMS_END, 0); }
544 public List<TerminalNode> COMMA() {
return getTokens(DLVParser.COMMA); }
545 public TerminalNode COMMA(
int i) {
546 return getToken(DLVParser.COMMA, i);
548 public PredicateContext(ParserRuleContext parent,
int invokingState) {
549 super(parent, invokingState);
551 @Override
public int getRuleIndex() {
return RULE_predicate; }
553 public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
554 if ( visitor instanceof DLVParserVisitor )
return ((DLVParserVisitor<? extends T>)visitor).visitPredicate(
this);
555 else return visitor.visitChildren(
this);
559 public final PredicateContext predicate() throws RecognitionException {
560 PredicateContext _localctx =
new PredicateContext(_ctx, getState());
561 enterRule(_localctx, 10, RULE_predicate);
564 enterOuterAlt(_localctx, 1);
569 _errHandler.sync(
this);
571 if (_la==TERMS_BEGIN) {
578 _errHandler.sync(
this);
590 _errHandler.sync(
this);
600 catch (RecognitionException re) {
601 _localctx.exception = re;
602 _errHandler.reportError(
this, re);
603 _errHandler.recover(
this, re);
611 public static class TermContext
extends ParserRuleContext {
612 public TerminalNode IDENTIFIER() {
return getToken(DLVParser.IDENTIFIER, 0); }
613 public TerminalNode INTEGER_CONSTANT() {
return getToken(DLVParser.INTEGER_CONSTANT, 0); }
614 public PredicateContext predicate() {
615 return getRuleContext(PredicateContext.class,0);
617 public TerminalNode OPEN_SQUARE_BRACKET() {
return getToken(DLVParser.OPEN_SQUARE_BRACKET, 0); }
618 public TerminalNode CLOSE_SQUARE_BRACKET() {
return getToken(DLVParser.CLOSE_SQUARE_BRACKET, 0); }
619 public List<TermContext> term() {
620 return getRuleContexts(TermContext.class);
622 public TermContext term(
int i) {
623 return getRuleContext(TermContext.class,i);
625 public List<TerminalNode> COMMA() {
return getTokens(DLVParser.COMMA); }
626 public TerminalNode COMMA(
int i) {
627 return getToken(DLVParser.COMMA, i);
629 public TerminalNode STRING_CONSTANT() {
return getToken(DLVParser.STRING_CONSTANT, 0); }
630 public TermContext(ParserRuleContext parent,
int invokingState) {
631 super(parent, invokingState);
633 @Override
public int getRuleIndex() {
return RULE_term; }
635 public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
636 if ( visitor instanceof DLVParserVisitor )
return ((DLVParserVisitor<? extends T>)visitor).visitTerm(
this);
637 else return visitor.visitChildren(
this);
641 public final TermContext term() throws RecognitionException {
642 TermContext _localctx =
new TermContext(_ctx, getState());
643 enterRule(_localctx, 12, RULE_term);
647 _errHandler.sync(
this);
648 switch ( getInterpreter().adaptivePredict(_input,13,_ctx) ) {
650 enterOuterAlt(_localctx, 1);
657 enterOuterAlt(_localctx, 2);
660 match(INTEGER_CONSTANT);
664 enterOuterAlt(_localctx, 3);
671 enterOuterAlt(_localctx, 4);
674 match(OPEN_SQUARE_BRACKET);
676 _errHandler.sync(
this);
678 if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << OPEN_SQUARE_BRACKET) | (1L << IDENTIFIER) | (1L << INTEGER_CONSTANT) | (1L << STRING_CONSTANT))) != 0)) {
683 _errHandler.sync(
this);
695 _errHandler.sync(
this);
702 match(CLOSE_SQUARE_BRACKET);
706 enterOuterAlt(_localctx, 5);
709 match(STRING_CONSTANT);
714 catch (RecognitionException re) {
715 _localctx.exception = re;
716 _errHandler.reportError(
this, re);
717 _errHandler.recover(
this, re);
725 public static class WitnessContext
extends ParserRuleContext {
726 public TerminalNode WITNESS_LABEL() {
return getToken(DLVParser.WITNESS_LABEL, 0); }
727 public ModelContext model() {
728 return getRuleContext(ModelContext.class,0);
730 public WitnessContext(ParserRuleContext parent,
int invokingState) {
731 super(parent, invokingState);
733 @Override
public int getRuleIndex() {
return RULE_witness; }
735 public <T> T accept(ParseTreeVisitor<? extends T> visitor) {
736 if ( visitor instanceof DLVParserVisitor )
return ((DLVParserVisitor<? extends T>)visitor).visitWitness(
this);
737 else return visitor.visitChildren(
this);
741 public final WitnessContext witness() throws RecognitionException {
742 WitnessContext _localctx =
new WitnessContext(_ctx, getState());
743 enterRule(_localctx, 14, RULE_witness);
745 enterOuterAlt(_localctx, 1);
748 match(WITNESS_LABEL);
753 catch (RecognitionException re) {
754 _localctx.exception = re;
755 _errHandler.reportError(
this, re);
756 _errHandler.recover(
this, re);
764 public static final String _serializedATN =
765 "\3\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964\3\30z\4\2\t\2\4\3\t"+
766 "\3\4\4\t\4\4\5\t\5\4\6\t\6\4\7\t\7\4\b\t\b\4\t\t\t\3\2\3\2\3\2\7\2\26"+
767 "\n\2\f\2\16\2\31\13\2\3\2\3\2\3\2\3\2\3\2\5\2 \n\2\3\2\3\2\3\2\3\2\7\2"+
768 "&\n\2\f\2\16\2)\13\2\3\2\5\2,\n\2\3\2\3\2\3\2\5\2\61\n\2\3\3\3\3\3\3\3"+
769 "\3\7\3\67\n\3\f\3\16\3:\13\3\3\3\3\3\3\4\3\4\3\4\3\4\3\4\3\4\3\5\3\5\3"+
770 "\5\3\5\7\5H\n\5\f\5\16\5K\13\5\5\5M\n\5\3\5\3\5\3\6\7\6R\n\6\f\6\16\6"+
771 "U\13\6\3\7\3\7\3\7\3\7\3\7\7\7\\\n\7\f\7\16\7_\13\7\3\7\3\7\5\7c\n\7\3"+
772 "\b\3\b\3\b\3\b\3\b\3\b\3\b\7\bl\n\b\f\b\16\bo\13\b\5\bq\n\b\3\b\3\b\5"+
773 "\bu\n\b\3\t\3\t\3\t\3\t\2\2\n\2\4\6\b\n\f\16\20\2\2\2\u0084\2\60\3\2\2"+
774 "\2\4\62\3\2\2\2\6=\3\2\2\2\bC\3\2\2\2\nS\3\2\2\2\fV\3\2\2\2\16t\3\2\2"+
775 "\2\20v\3\2\2\2\22\27\7\16\2\2\23\24\7\r\2\2\24\26\7\16\2\2\25\23\3\2\2"+
776 "\2\26\31\3\2\2\2\27\25\3\2\2\2\27\30\3\2\2\2\30\32\3\2\2\2\31\27\3\2\2"+
777 "\2\32\33\7\t\2\2\33\34\7\24\2\2\34\37\7\26\2\2\35 \7\25\2\2\36 \5\20\t"+
778 "\2\37\35\3\2\2\2\37\36\3\2\2\2 \61\3\2\2\2!\61\5\b\5\2\"\'\5\16\b\2#$"+
779 "\7\r\2\2$&\5\16\b\2%#\3\2\2\2&)\3\2\2\2\'%\3\2\2\2\'(\3\2\2\2(\61\3\2"+
780 "\2\2)\'\3\2\2\2*,\7\f\2\2+*\3\2\2\2+,\3\2\2\2,-\3\2\2\2-.\5\b\5\2./\5"+
781 "\4\3\2/\61\3\2\2\2\60\22\3\2\2\2\60!\3\2\2\2\60\"\3\2\2\2\60+\3\2\2\2"+
782 "\61\3\3\2\2\2\62\63\7\5\2\2\638\5\6\4\2\64\65\7\r\2\2\65\67\5\6\4\2\66"+
783 "\64\3\2\2\2\67:\3\2\2\28\66\3\2\2\289\3\2\2\29;\3\2\2\2:8\3\2\2\2;<\7"+
784 "\6\2\2<\5\3\2\2\2=>\7\7\2\2>?\7\17\2\2?@\7\4\2\2@A\7\17\2\2AB\7\b\2\2"+
785 "B\7\3\2\2\2CL\7\n\2\2DI\5\f\7\2EF\7\r\2\2FH\5\f\7\2GE\3\2\2\2HK\3\2\2"+
786 "\2IG\3\2\2\2IJ\3\2\2\2JM\3\2\2\2KI\3\2\2\2LD\3\2\2\2LM\3\2\2\2MN\3\2\2"+
787 "\2NO\7\13\2\2O\t\3\2\2\2PR\5\2\2\2QP\3\2\2\2RU\3\2\2\2SQ\3\2\2\2ST\3\2"+
788 "\2\2T\13\3\2\2\2US\3\2\2\2Vb\7\16\2\2WX\7\21\2\2X]\5\16\b\2YZ\7\r\2\2"+
789 "Z\\\5\16\b\2[Y\3\2\2\2\\_\3\2\2\2][\3\2\2\2]^\3\2\2\2^`\3\2\2\2_]\3\2"+
790 "\2\2`a\7\22\2\2ac\3\2\2\2bW\3\2\2\2bc\3\2\2\2c\r\3\2\2\2du\7\16\2\2eu"+
791 "\7\17\2\2fu\5\f\7\2gp\7\7\2\2hm\5\16\b\2ij\7\r\2\2jl\5\16\b\2ki\3\2\2"+
792 "\2lo\3\2\2\2mk\3\2\2\2mn\3\2\2\2nq\3\2\2\2om\3\2\2\2ph\3\2\2\2pq\3\2\2"+
793 "\2qr\3\2\2\2ru\7\b\2\2su\7\20\2\2td\3\2\2\2te\3\2\2\2tf\3\2\2\2tg\3\2"+
794 "\2\2ts\3\2\2\2u\17\3\2\2\2vw\7\30\2\2wx\5\b\5\2x\21\3\2\2\2\20\27\37\'"+
796 public static final ATN _ATN =
797 new ATNDeserializer().deserialize(_serializedATN.toCharArray());
799 _decisionToDFA =
new DFA[_ATN.getNumberOfDecisions()];
800 for (
int i = 0; i < _ATN.getNumberOfDecisions(); i++) {
801 _decisionToDFA[i] =
new DFA(_ATN.getDecisionState(i), i);