com.googlecode.d2j.smali.antlr4.SmaliParser Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of gradle Show documentation
Show all versions of gradle Show documentation
fakeradnroid gradle builder
// Generated from com\googlecode\d2j\smali\antlr4\Smali.g4 by ANTLR 4.5
package com.googlecode.d2j.smali.antlr4;
import org.antlr.v4.runtime.atn.*;
import org.antlr.v4.runtime.dfa.DFA;
import org.antlr.v4.runtime.*;
import org.antlr.v4.runtime.misc.*;
import org.antlr.v4.runtime.tree.*;
import java.util.List;
import java.util.Iterator;
import java.util.ArrayList;
@SuppressWarnings({"all", "warnings", "unchecked", "unused", "cast"})
public class SmaliParser extends Parser {
static { RuntimeMetaData.checkVersion("4.5", RuntimeMetaData.VERSION); }
protected static final DFA[] _decisionToDFA;
protected static final PredictionContextCache _sharedContextCache =
new PredictionContextCache();
public static final int
T__0=1, T__1=2, T__2=3, T__3=4, T__4=5, T__5=6, T__6=7, T__7=8, T__8=9,
T__9=10, T__10=11, T__11=12, T__12=13, T__13=14, T__14=15, T__15=16, T__16=17,
T__17=18, T__18=19, T__19=20, T__20=21, T__21=22, T__22=23, T__23=24,
T__24=25, T__25=26, T__26=27, T__27=28, T__28=29, T__29=30, T__30=31,
T__31=32, T__32=33, T__33=34, T__34=35, T__35=36, T__36=37, T__37=38,
T__38=39, T__39=40, T__40=41, T__41=42, T__42=43, T__43=44, T__44=45,
T__45=46, T__46=47, T__47=48, T__48=49, T__49=50, T__50=51, T__51=52,
T__52=53, T__53=54, T__54=55, T__55=56, T__56=57, T__57=58, T__58=59,
T__59=60, T__60=61, T__61=62, T__62=63, T__63=64, T__64=65, T__65=66,
T__66=67, T__67=68, T__68=69, T__69=70, T__70=71, T__71=72, T__72=73,
T__73=74, T__74=75, T__75=76, T__76=77, T__77=78, T__78=79, T__79=80,
T__80=81, T__81=82, T__82=83, T__83=84, T__84=85, T__85=86, T__86=87,
T__87=88, T__88=89, T__89=90, T__90=91, T__91=92, T__92=93, T__93=94,
T__94=95, T__95=96, T__96=97, T__97=98, T__98=99, T__99=100, T__100=101,
T__101=102, T__102=103, T__103=104, T__104=105, T__105=106, T__106=107,
T__107=108, T__108=109, T__109=110, T__110=111, T__111=112, T__112=113,
T__113=114, T__114=115, T__115=116, T__116=117, T__117=118, T__118=119,
T__119=120, T__120=121, T__121=122, T__122=123, T__123=124, T__124=125,
T__125=126, T__126=127, T__127=128, T__128=129, T__129=130, T__130=131,
T__131=132, T__132=133, T__133=134, T__134=135, T__135=136, T__136=137,
T__137=138, T__138=139, T__139=140, T__140=141, T__141=142, T__142=143,
T__143=144, T__144=145, T__145=146, T__146=147, T__147=148, T__148=149,
T__149=150, T__150=151, T__151=152, T__152=153, T__153=154, T__154=155,
T__155=156, T__156=157, T__157=158, T__158=159, T__159=160, T__160=161,
T__161=162, T__162=163, T__163=164, T__164=165, T__165=166, T__166=167,
T__167=168, T__168=169, T__169=170, T__170=171, T__171=172, T__172=173,
T__173=174, T__174=175, T__175=176, T__176=177, T__177=178, T__178=179,
T__179=180, T__180=181, T__181=182, T__182=183, T__183=184, T__184=185,
T__185=186, T__186=187, T__187=188, T__188=189, T__189=190, T__190=191,
T__191=192, T__192=193, T__193=194, T__194=195, T__195=196, T__196=197,
T__197=198, T__198=199, T__199=200, T__200=201, T__201=202, T__202=203,
T__203=204, T__204=205, T__205=206, T__206=207, T__207=208, T__208=209,
T__209=210, T__210=211, T__211=212, T__212=213, T__213=214, T__214=215,
T__215=216, T__216=217, T__217=218, T__218=219, T__219=220, T__220=221,
T__221=222, T__222=223, T__223=224, T__224=225, T__225=226, T__226=227,
T__227=228, T__228=229, T__229=230, T__230=231, T__231=232, T__232=233,
T__233=234, T__234=235, T__235=236, T__236=237, T__237=238, T__238=239,
T__239=240, T__240=241, T__241=242, T__242=243, T__243=244, T__244=245,
T__245=246, T__246=247, T__247=248, COMMENT=249, WS=250, VOID_TYPE=251,
METHOD_FULL=252, METHOD_PART=253, METHOD_PROTO=254, FIELD_FULL=255, FIELD_PART=256,
LABEL=257, SMALI_V2_LOCAL_NAME_TYPE=258, F_INFINITY=259, FLOAT_NAN=260,
DOUBLE_NAN=261, FLOAT_INFINITY=262, DOUBLE_INFINITY=263, BASE_FLOAT=264,
BASE_DOUBLE=265, CHAR=266, LONG=267, SHORT=268, BYTE=269, INT=270, BOOLEAN=271,
STRING=272, OBJECT_TYPE=273, ARRAY_TYPE=274, PRIMITIVE_TYPE=275, ACC=276,
ANN_VISIBLE=277, REGISTER=278, NOP=279, MOVE=280, RETURN=281, CONST=282,
THROW=283, GOTO=284, AGET=285, APUT=286, IGET=287, IPUT=288, SGET=289,
SPUT=290, NULL=291, ID=292, DPARAMETER=293, DENUM=294, DPARAM=295, DLINENUMBER=296,
DLOCAL=297, DENDLOCAL=298, DRESTARTLOCAL=299, DPROLOGUE=300, DEPIOGUE=301;
public static final int
RULE_sFiles = 0, RULE_sFile = 1, RULE_sSource = 2, RULE_sSuper = 3, RULE_sInterface = 4,
RULE_sMethod = 5, RULE_sField = 6, RULE_sAccList = 7, RULE_sAnnotation = 8,
RULE_sSubannotation = 9, RULE_sParameter = 10, RULE_sAnnotationKeyName = 11,
RULE_sAnnotationValue = 12, RULE_sBaseValue = 13, RULE_sArrayValue = 14,
RULE_sInstruction = 15, RULE_fline = 16, RULE_flocal = 17, RULE_fend = 18,
RULE_frestart = 19, RULE_fprologue = 20, RULE_fepiogue = 21, RULE_fregisters = 22,
RULE_flocals = 23, RULE_fcache = 24, RULE_fcacheall = 25, RULE_sLabel = 26,
RULE_fpackageswitch = 27, RULE_fspareswitch = 28, RULE_farraydata = 29,
RULE_f0x = 30, RULE_f0t = 31, RULE_f1x = 32, RULE_fconst = 33, RULE_ff1c = 34,
RULE_ft2c = 35, RULE_ff2c = 36, RULE_f2x = 37, RULE_f3x = 38, RULE_ft5c = 39,
RULE_fm5c = 40, RULE_fmrc = 41, RULE_fm45cc = 42, RULE_fm4rcc = 43, RULE_fmcustomc = 44,
RULE_fmcustomrc = 45, RULE_ftrc = 46, RULE_f31t = 47, RULE_f1t = 48, RULE_f2t = 49,
RULE_f2sb = 50;
public static final String[] ruleNames = {
"sFiles", "sFile", "sSource", "sSuper", "sInterface", "sMethod", "sField",
"sAccList", "sAnnotation", "sSubannotation", "sParameter", "sAnnotationKeyName",
"sAnnotationValue", "sBaseValue", "sArrayValue", "sInstruction", "fline",
"flocal", "fend", "frestart", "fprologue", "fepiogue", "fregisters", "flocals",
"fcache", "fcacheall", "sLabel", "fpackageswitch", "fspareswitch", "farraydata",
"f0x", "f0t", "f1x", "fconst", "ff1c", "ft2c", "ff2c", "f2x", "f3x", "ft5c",
"fm5c", "fmrc", "fm45cc", "fm4rcc", "fmcustomc", "fmcustomrc", "ftrc",
"f31t", "f1t", "f2t", "f2sb"
};
private static final String[] _LITERAL_NAMES = {
null, "'.class'", "'.end class'", "'.source'", "'.super'", "'.implements'",
"'.method'", "'.end method'", "'.field'", "'='", "'.end field'", "'.annotation'",
"'.end annotation'", "'.subannotation'", "'.end subannotation'", "'.end parameter'",
"','", "'.end param'", "'.iget'", "'.iput'", "'.sget'", "'.sput'", "'.invoke-instance'",
"'.invoke-static'", "'{'", "'}'", "':'", "'.registers'", "'.locals'",
"'.catch'", "'..'", "'.catchall'", "'.packed-switch'", "'.end packed-switch'",
"'.sparse-switch'", "'->'", "'.end sparse-switch'", "'.array-data'", "'.end array-data'",
"'return-void'", "'goto/16'", "'goto/32'", "'move-result'", "'move-result-wide'",
"'move-result-object'", "'move-exception'", "'return-wide'", "'return-object'",
"'monitor-enter'", "'monitor-exit'", "'const/4'", "'const/16'", "'const/high16'",
"'const-wide/16'", "'const-wide/32'", "'const-wide/high16'", "'const-wide'",
"'const-string'", "'const-string/jumbo'", "'const-class'", "'check-cast'",
"'new-instance'", "'sget-wide'", "'sget-object'", "'sget-boolean'", "'sget-byte'",
"'sget-char'", "'sget-short'", "'sput-wide'", "'sput-object'", "'sput-boolean'",
"'sput-byte'", "'sput-char'", "'sput-short'", "'instance-of'", "'new-array'",
"'iget-wide'", "'iget-object'", "'iget-boolean'", "'iget-byte'", "'iget-char'",
"'iget-short'", "'iput-wide'", "'iput-object'", "'iput-boolean'", "'iput-byte'",
"'iput-char'", "'iput-short'", "'move/from16'", "'move/16'", "'move-wide'",
"'move-wide/from16'", "'move-wide/16'", "'move-object'", "'move-object/from16'",
"'move-object/16'", "'array-length'", "'neg-int'", "'not-int'", "'neg-long'",
"'not-long'", "'neg-float'", "'neg-double'", "'int-to-long'", "'int-to-float'",
"'int-to-double'", "'long-to-int'", "'long-to-float'", "'long-to-double'",
"'float-to-int'", "'float-to-long'", "'float-to-double'", "'double-to-int'",
"'double-to-long'", "'double-to-float'", "'int-to-byte'", "'int-to-char'",
"'int-to-short'", "'add-int/2addr'", "'sub-int/2addr'", "'mul-int/2addr'",
"'div-int/2addr'", "'rem-int/2addr'", "'and-int/2addr'", "'or-int/2addr'",
"'xor-int/2addr'", "'shl-int/2addr'", "'shr-int/2addr'", "'ushr-int/2addr'",
"'add-long/2addr'", "'sub-long/2addr'", "'mul-long/2addr'", "'div-long/2addr'",
"'rem-long/2addr'", "'and-long/2addr'", "'or-long/2addr'", "'xor-long/2addr'",
"'shl-long/2addr'", "'shr-long/2addr'", "'ushr-long/2addr'", "'add-float/2addr'",
"'sub-float/2addr'", "'mul-float/2addr'", "'div-float/2addr'", "'rem-float/2addr'",
"'add-double/2addr'", "'sub-double/2addr'", "'mul-double/2addr'", "'div-double/2addr'",
"'rem-double/2addr'", "'cmpl-float'", "'cmpg-float'", "'cmpl-double'",
"'cmpg-double'", "'cmp-long'", "'aget-wide'", "'aget-object'", "'aget-boolean'",
"'aget-byte'", "'aget-char'", "'aget-short'", "'aput-wide'", "'aput-object'",
"'aput-boolean'", "'aput-byte'", "'aput-char'", "'aput-short'", "'add-int'",
"'sub-int'", "'mul-int'", "'div-int'", "'rem-int'", "'and-int'", "'or-int'",
"'xor-int'", "'shl-int'", "'shr-int'", "'ushr-int'", "'add-long'", "'sub-long'",
"'mul-long'", "'div-long'", "'rem-long'", "'and-long'", "'or-long'", "'xor-long'",
"'shl-long'", "'shr-long'", "'ushr-long'", "'add-float'", "'sub-float'",
"'mul-float'", "'div-float'", "'rem-float'", "'add-double'", "'sub-double'",
"'mul-double'", "'div-double'", "'rem-double'", "'filled-new-array'",
"'invoke-virtual'", "'invoke-super'", "'invoke-direct'", "'invoke-static'",
"'invoke-interface'", "'invoke-virtual/range'", "'invoke-super/range'",
"'invoke-direct/range'", "'invoke-static/range'", "'invoke-interface/range'",
"'invoke-polymorphic'", "'invoke-polymorphic/range'", "'invoke-custom'",
"'invoke-custom/range'", "'filled-new-array/range'", "'fill-array-data'",
"'packed-switch'", "'sparse-switch'", "'if-eqz'", "'if-nez'", "'if-ltz'",
"'if-gez'", "'if-gtz'", "'if-lez'", "'if-eq'", "'if-ne'", "'if-lt'", "'if-ge'",
"'if-gt'", "'if-le'", "'add-int/lit16'", "'rsub-int'", "'mul-int/lit16'",
"'div-int/lit16'", "'rem-int/lit16'", "'and-int/lit16'", "'or-int/lit16'",
"'xor-int/lit16'", "'add-int/lit8'", "'rsub-int/lit8'", "'mul-int/lit8'",
"'div-int/lit8'", "'rem-int/lit8'", "'and-int/lit8'", "'or-int/lit8'",
"'xor-int/lit8'", "'shl-int/lit8'", "'shr-int/lit8'", "'ushr-int/lit8'",
null, null, "'V'", null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, "'nop'", "'move'", "'return'", "'const'",
"'throw'", "'goto'", "'aget'", "'aput'", "'iget'", "'iput'", "'sget'",
"'sput'", "'null'", null, "'.parameter'", "'.enum'", "'.param'", "'.line'",
"'.local'", "'.end local'", "'.restart local'", "'.prologue'", "'.epiogue'"
};
private static final String[] _SYMBOLIC_NAMES = {
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, "COMMENT", "WS",
"VOID_TYPE", "METHOD_FULL", "METHOD_PART", "METHOD_PROTO", "FIELD_FULL",
"FIELD_PART", "LABEL", "SMALI_V2_LOCAL_NAME_TYPE", "F_INFINITY", "FLOAT_NAN",
"DOUBLE_NAN", "FLOAT_INFINITY", "DOUBLE_INFINITY", "BASE_FLOAT", "BASE_DOUBLE",
"CHAR", "LONG", "SHORT", "BYTE", "INT", "BOOLEAN", "STRING", "OBJECT_TYPE",
"ARRAY_TYPE", "PRIMITIVE_TYPE", "ACC", "ANN_VISIBLE", "REGISTER", "NOP",
"MOVE", "RETURN", "CONST", "THROW", "GOTO", "AGET", "APUT", "IGET", "IPUT",
"SGET", "SPUT", "NULL", "ID", "DPARAMETER", "DENUM", "DPARAM", "DLINENUMBER",
"DLOCAL", "DENDLOCAL", "DRESTARTLOCAL", "DPROLOGUE", "DEPIOGUE"
};
public static final Vocabulary VOCABULARY = new VocabularyImpl(_LITERAL_NAMES, _SYMBOLIC_NAMES);
/**
* @deprecated Use {@link #VOCABULARY} instead.
*/
@Deprecated
public static final String[] tokenNames;
static {
tokenNames = new String[_SYMBOLIC_NAMES.length];
for (int i = 0; i < tokenNames.length; i++) {
tokenNames[i] = VOCABULARY.getLiteralName(i);
if (tokenNames[i] == null) {
tokenNames[i] = VOCABULARY.getSymbolicName(i);
}
if (tokenNames[i] == null) {
tokenNames[i] = "";
}
}
}
@Override
@Deprecated
public String[] getTokenNames() {
return tokenNames;
}
@Override
public Vocabulary getVocabulary() {
return VOCABULARY;
}
@Override
public String getGrammarFileName() { return "Smali.g4"; }
@Override
public String[] getRuleNames() { return ruleNames; }
@Override
public String getSerializedATN() { return _serializedATN; }
@Override
public ATN getATN() { return _ATN; }
public SmaliParser(TokenStream input) {
super(input);
_interp = new ParserATNSimulator(this,_ATN,_decisionToDFA,_sharedContextCache);
}
public static class SFilesContext extends ParserRuleContext {
public List sFile() {
return getRuleContexts(SFileContext.class);
}
public SFileContext sFile(int i) {
return getRuleContext(SFileContext.class,i);
}
public SFilesContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sFiles; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSFiles(this);
else return visitor.visitChildren(this);
}
}
public final SFilesContext sFiles() throws RecognitionException {
SFilesContext _localctx = new SFilesContext(_ctx, getState());
enterRule(_localctx, 0, RULE_sFiles);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(103);
_errHandler.sync(this);
_la = _input.LA(1);
do {
{
{
setState(102);
sFile();
}
}
setState(105);
_errHandler.sync(this);
_la = _input.LA(1);
} while ( _la==T__0 );
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SFileContext extends ParserRuleContext {
public Token className;
public SAccListContext sAccList() {
return getRuleContext(SAccListContext.class,0);
}
public TerminalNode OBJECT_TYPE() { return getToken(SmaliParser.OBJECT_TYPE, 0); }
public List sSuper() {
return getRuleContexts(SSuperContext.class);
}
public SSuperContext sSuper(int i) {
return getRuleContext(SSuperContext.class,i);
}
public List sInterface() {
return getRuleContexts(SInterfaceContext.class);
}
public SInterfaceContext sInterface(int i) {
return getRuleContext(SInterfaceContext.class,i);
}
public List sSource() {
return getRuleContexts(SSourceContext.class);
}
public SSourceContext sSource(int i) {
return getRuleContext(SSourceContext.class,i);
}
public List sMethod() {
return getRuleContexts(SMethodContext.class);
}
public SMethodContext sMethod(int i) {
return getRuleContext(SMethodContext.class,i);
}
public List sField() {
return getRuleContexts(SFieldContext.class);
}
public SFieldContext sField(int i) {
return getRuleContext(SFieldContext.class,i);
}
public List sAnnotation() {
return getRuleContexts(SAnnotationContext.class);
}
public SAnnotationContext sAnnotation(int i) {
return getRuleContext(SAnnotationContext.class,i);
}
public SFileContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sFile; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSFile(this);
else return visitor.visitChildren(this);
}
}
public final SFileContext sFile() throws RecognitionException {
SFileContext _localctx = new SFileContext(_ctx, getState());
enterRule(_localctx, 2, RULE_sFile);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(107);
match(T__0);
setState(108);
sAccList();
setState(109);
((SFileContext)_localctx).className = match(OBJECT_TYPE);
setState(118);
_errHandler.sync(this);
_la = _input.LA(1);
while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__2) | (1L << T__3) | (1L << T__4) | (1L << T__5) | (1L << T__7) | (1L << T__10))) != 0)) {
{
setState(116);
switch (_input.LA(1)) {
case T__3:
{
setState(110);
sSuper();
}
break;
case T__4:
{
setState(111);
sInterface();
}
break;
case T__2:
{
setState(112);
sSource();
}
break;
case T__5:
{
setState(113);
sMethod();
}
break;
case T__7:
{
setState(114);
sField();
}
break;
case T__10:
{
setState(115);
sAnnotation();
}
break;
default:
throw new NoViableAltException(this);
}
}
setState(120);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(122);
_la = _input.LA(1);
if (_la==T__1) {
{
setState(121);
match(T__1);
}
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SSourceContext extends ParserRuleContext {
public Token src;
public TerminalNode STRING() { return getToken(SmaliParser.STRING, 0); }
public SSourceContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sSource; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSSource(this);
else return visitor.visitChildren(this);
}
}
public final SSourceContext sSource() throws RecognitionException {
SSourceContext _localctx = new SSourceContext(_ctx, getState());
enterRule(_localctx, 4, RULE_sSource);
try {
enterOuterAlt(_localctx, 1);
{
setState(124);
match(T__2);
setState(125);
((SSourceContext)_localctx).src = match(STRING);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SSuperContext extends ParserRuleContext {
public Token name;
public TerminalNode OBJECT_TYPE() { return getToken(SmaliParser.OBJECT_TYPE, 0); }
public SSuperContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sSuper; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSSuper(this);
else return visitor.visitChildren(this);
}
}
public final SSuperContext sSuper() throws RecognitionException {
SSuperContext _localctx = new SSuperContext(_ctx, getState());
enterRule(_localctx, 6, RULE_sSuper);
try {
enterOuterAlt(_localctx, 1);
{
setState(127);
match(T__3);
setState(128);
((SSuperContext)_localctx).name = match(OBJECT_TYPE);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SInterfaceContext extends ParserRuleContext {
public Token name;
public TerminalNode OBJECT_TYPE() { return getToken(SmaliParser.OBJECT_TYPE, 0); }
public SInterfaceContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sInterface; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSInterface(this);
else return visitor.visitChildren(this);
}
}
public final SInterfaceContext sInterface() throws RecognitionException {
SInterfaceContext _localctx = new SInterfaceContext(_ctx, getState());
enterRule(_localctx, 8, RULE_sInterface);
try {
enterOuterAlt(_localctx, 1);
{
setState(130);
match(T__4);
setState(131);
((SInterfaceContext)_localctx).name = match(OBJECT_TYPE);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SMethodContext extends ParserRuleContext {
public Token methodObj;
public SAccListContext sAccList() {
return getRuleContext(SAccListContext.class,0);
}
public TerminalNode METHOD_FULL() { return getToken(SmaliParser.METHOD_FULL, 0); }
public TerminalNode METHOD_PART() { return getToken(SmaliParser.METHOD_PART, 0); }
public List sAnnotation() {
return getRuleContexts(SAnnotationContext.class);
}
public SAnnotationContext sAnnotation(int i) {
return getRuleContext(SAnnotationContext.class,i);
}
public List sParameter() {
return getRuleContexts(SParameterContext.class);
}
public SParameterContext sParameter(int i) {
return getRuleContext(SParameterContext.class,i);
}
public List sInstruction() {
return getRuleContexts(SInstructionContext.class);
}
public SInstructionContext sInstruction(int i) {
return getRuleContext(SInstructionContext.class,i);
}
public SMethodContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sMethod; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSMethod(this);
else return visitor.visitChildren(this);
}
}
public final SMethodContext sMethod() throws RecognitionException {
SMethodContext _localctx = new SMethodContext(_ctx, getState());
enterRule(_localctx, 10, RULE_sMethod);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(133);
match(T__5);
setState(134);
sAccList();
setState(135);
((SMethodContext)_localctx).methodObj = _input.LT(1);
_la = _input.LA(1);
if ( !(_la==METHOD_FULL || _la==METHOD_PART) ) {
((SMethodContext)_localctx).methodObj = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(141);
_errHandler.sync(this);
_la = _input.LA(1);
while ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__10) | (1L << T__26) | (1L << T__27) | (1L << T__28) | (1L << T__30) | (1L << T__31) | (1L << T__33) | (1L << T__36) | (1L << T__38) | (1L << T__39) | (1L << T__40) | (1L << T__41) | (1L << T__42) | (1L << T__43) | (1L << T__44) | (1L << T__45) | (1L << T__46) | (1L << T__47) | (1L << T__48) | (1L << T__49) | (1L << T__50) | (1L << T__51) | (1L << T__52) | (1L << T__53) | (1L << T__54) | (1L << T__55) | (1L << T__56) | (1L << T__57) | (1L << T__58) | (1L << T__59) | (1L << T__60) | (1L << T__61) | (1L << T__62))) != 0) || ((((_la - 64)) & ~0x3f) == 0 && ((1L << (_la - 64)) & ((1L << (T__63 - 64)) | (1L << (T__64 - 64)) | (1L << (T__65 - 64)) | (1L << (T__66 - 64)) | (1L << (T__67 - 64)) | (1L << (T__68 - 64)) | (1L << (T__69 - 64)) | (1L << (T__70 - 64)) | (1L << (T__71 - 64)) | (1L << (T__72 - 64)) | (1L << (T__73 - 64)) | (1L << (T__74 - 64)) | (1L << (T__75 - 64)) | (1L << (T__76 - 64)) | (1L << (T__77 - 64)) | (1L << (T__78 - 64)) | (1L << (T__79 - 64)) | (1L << (T__80 - 64)) | (1L << (T__81 - 64)) | (1L << (T__82 - 64)) | (1L << (T__83 - 64)) | (1L << (T__84 - 64)) | (1L << (T__85 - 64)) | (1L << (T__86 - 64)) | (1L << (T__87 - 64)) | (1L << (T__88 - 64)) | (1L << (T__89 - 64)) | (1L << (T__90 - 64)) | (1L << (T__91 - 64)) | (1L << (T__92 - 64)) | (1L << (T__93 - 64)) | (1L << (T__94 - 64)) | (1L << (T__95 - 64)) | (1L << (T__96 - 64)) | (1L << (T__97 - 64)) | (1L << (T__98 - 64)) | (1L << (T__99 - 64)) | (1L << (T__100 - 64)) | (1L << (T__101 - 64)) | (1L << (T__102 - 64)) | (1L << (T__103 - 64)) | (1L << (T__104 - 64)) | (1L << (T__105 - 64)) | (1L << (T__106 - 64)) | (1L << (T__107 - 64)) | (1L << (T__108 - 64)) | (1L << (T__109 - 64)) | (1L << (T__110 - 64)) | (1L << (T__111 - 64)) | (1L << (T__112 - 64)) | (1L << (T__113 - 64)) | (1L << (T__114 - 64)) | (1L << (T__115 - 64)) | (1L << (T__116 - 64)) | (1L << (T__117 - 64)) | (1L << (T__118 - 64)) | (1L << (T__119 - 64)) | (1L << (T__120 - 64)) | (1L << (T__121 - 64)) | (1L << (T__122 - 64)) | (1L << (T__123 - 64)) | (1L << (T__124 - 64)) | (1L << (T__125 - 64)) | (1L << (T__126 - 64)))) != 0) || ((((_la - 128)) & ~0x3f) == 0 && ((1L << (_la - 128)) & ((1L << (T__127 - 128)) | (1L << (T__128 - 128)) | (1L << (T__129 - 128)) | (1L << (T__130 - 128)) | (1L << (T__131 - 128)) | (1L << (T__132 - 128)) | (1L << (T__133 - 128)) | (1L << (T__134 - 128)) | (1L << (T__135 - 128)) | (1L << (T__136 - 128)) | (1L << (T__137 - 128)) | (1L << (T__138 - 128)) | (1L << (T__139 - 128)) | (1L << (T__140 - 128)) | (1L << (T__141 - 128)) | (1L << (T__142 - 128)) | (1L << (T__143 - 128)) | (1L << (T__144 - 128)) | (1L << (T__145 - 128)) | (1L << (T__146 - 128)) | (1L << (T__147 - 128)) | (1L << (T__148 - 128)) | (1L << (T__149 - 128)) | (1L << (T__150 - 128)) | (1L << (T__151 - 128)) | (1L << (T__152 - 128)) | (1L << (T__153 - 128)) | (1L << (T__154 - 128)) | (1L << (T__155 - 128)) | (1L << (T__156 - 128)) | (1L << (T__157 - 128)) | (1L << (T__158 - 128)) | (1L << (T__159 - 128)) | (1L << (T__160 - 128)) | (1L << (T__161 - 128)) | (1L << (T__162 - 128)) | (1L << (T__163 - 128)) | (1L << (T__164 - 128)) | (1L << (T__165 - 128)) | (1L << (T__166 - 128)) | (1L << (T__167 - 128)) | (1L << (T__168 - 128)) | (1L << (T__169 - 128)) | (1L << (T__170 - 128)) | (1L << (T__171 - 128)) | (1L << (T__172 - 128)) | (1L << (T__173 - 128)) | (1L << (T__174 - 128)) | (1L << (T__175 - 128)) | (1L << (T__176 - 128)) | (1L << (T__177 - 128)) | (1L << (T__178 - 128)) | (1L << (T__179 - 128)) | (1L << (T__180 - 128)) | (1L << (T__181 - 128)) | (1L << (T__182 - 128)) | (1L << (T__183 - 128)) | (1L << (T__184 - 128)) | (1L << (T__185 - 128)) | (1L << (T__186 - 128)) | (1L << (T__187 - 128)) | (1L << (T__188 - 128)) | (1L << (T__189 - 128)) | (1L << (T__190 - 128)))) != 0) || ((((_la - 192)) & ~0x3f) == 0 && ((1L << (_la - 192)) & ((1L << (T__191 - 192)) | (1L << (T__192 - 192)) | (1L << (T__193 - 192)) | (1L << (T__194 - 192)) | (1L << (T__195 - 192)) | (1L << (T__196 - 192)) | (1L << (T__197 - 192)) | (1L << (T__198 - 192)) | (1L << (T__199 - 192)) | (1L << (T__200 - 192)) | (1L << (T__201 - 192)) | (1L << (T__202 - 192)) | (1L << (T__203 - 192)) | (1L << (T__204 - 192)) | (1L << (T__205 - 192)) | (1L << (T__206 - 192)) | (1L << (T__207 - 192)) | (1L << (T__208 - 192)) | (1L << (T__209 - 192)) | (1L << (T__210 - 192)) | (1L << (T__211 - 192)) | (1L << (T__212 - 192)) | (1L << (T__213 - 192)) | (1L << (T__214 - 192)) | (1L << (T__215 - 192)) | (1L << (T__216 - 192)) | (1L << (T__217 - 192)) | (1L << (T__218 - 192)) | (1L << (T__219 - 192)) | (1L << (T__220 - 192)) | (1L << (T__221 - 192)) | (1L << (T__222 - 192)) | (1L << (T__223 - 192)) | (1L << (T__224 - 192)) | (1L << (T__225 - 192)) | (1L << (T__226 - 192)) | (1L << (T__227 - 192)) | (1L << (T__228 - 192)) | (1L << (T__229 - 192)) | (1L << (T__230 - 192)) | (1L << (T__231 - 192)) | (1L << (T__232 - 192)) | (1L << (T__233 - 192)) | (1L << (T__234 - 192)) | (1L << (T__235 - 192)) | (1L << (T__236 - 192)) | (1L << (T__237 - 192)) | (1L << (T__238 - 192)) | (1L << (T__239 - 192)) | (1L << (T__240 - 192)) | (1L << (T__241 - 192)) | (1L << (T__242 - 192)) | (1L << (T__243 - 192)) | (1L << (T__244 - 192)) | (1L << (T__245 - 192)) | (1L << (T__246 - 192)) | (1L << (T__247 - 192)))) != 0) || ((((_la - 257)) & ~0x3f) == 0 && ((1L << (_la - 257)) & ((1L << (LABEL - 257)) | (1L << (NOP - 257)) | (1L << (MOVE - 257)) | (1L << (RETURN - 257)) | (1L << (CONST - 257)) | (1L << (THROW - 257)) | (1L << (GOTO - 257)) | (1L << (AGET - 257)) | (1L << (APUT - 257)) | (1L << (IGET - 257)) | (1L << (IPUT - 257)) | (1L << (SGET - 257)) | (1L << (SPUT - 257)) | (1L << (DPARAMETER - 257)) | (1L << (DPARAM - 257)) | (1L << (DLINENUMBER - 257)) | (1L << (DLOCAL - 257)) | (1L << (DENDLOCAL - 257)) | (1L << (DRESTARTLOCAL - 257)) | (1L << (DPROLOGUE - 257)) | (1L << (DEPIOGUE - 257)))) != 0)) {
{
setState(139);
switch (_input.LA(1)) {
case T__10:
{
setState(136);
sAnnotation();
}
break;
case DPARAMETER:
case DPARAM:
{
setState(137);
sParameter();
}
break;
case T__26:
case T__27:
case T__28:
case T__30:
case T__31:
case T__33:
case T__36:
case T__38:
case T__39:
case T__40:
case T__41:
case T__42:
case T__43:
case T__44:
case T__45:
case T__46:
case T__47:
case T__48:
case T__49:
case T__50:
case T__51:
case T__52:
case T__53:
case T__54:
case T__55:
case T__56:
case T__57:
case T__58:
case T__59:
case T__60:
case T__61:
case T__62:
case T__63:
case T__64:
case T__65:
case T__66:
case T__67:
case T__68:
case T__69:
case T__70:
case T__71:
case T__72:
case T__73:
case T__74:
case T__75:
case T__76:
case T__77:
case T__78:
case T__79:
case T__80:
case T__81:
case T__82:
case T__83:
case T__84:
case T__85:
case T__86:
case T__87:
case T__88:
case T__89:
case T__90:
case T__91:
case T__92:
case T__93:
case T__94:
case T__95:
case T__96:
case T__97:
case T__98:
case T__99:
case T__100:
case T__101:
case T__102:
case T__103:
case T__104:
case T__105:
case T__106:
case T__107:
case T__108:
case T__109:
case T__110:
case T__111:
case T__112:
case T__113:
case T__114:
case T__115:
case T__116:
case T__117:
case T__118:
case T__119:
case T__120:
case T__121:
case T__122:
case T__123:
case T__124:
case T__125:
case T__126:
case T__127:
case T__128:
case T__129:
case T__130:
case T__131:
case T__132:
case T__133:
case T__134:
case T__135:
case T__136:
case T__137:
case T__138:
case T__139:
case T__140:
case T__141:
case T__142:
case T__143:
case T__144:
case T__145:
case T__146:
case T__147:
case T__148:
case T__149:
case T__150:
case T__151:
case T__152:
case T__153:
case T__154:
case T__155:
case T__156:
case T__157:
case T__158:
case T__159:
case T__160:
case T__161:
case T__162:
case T__163:
case T__164:
case T__165:
case T__166:
case T__167:
case T__168:
case T__169:
case T__170:
case T__171:
case T__172:
case T__173:
case T__174:
case T__175:
case T__176:
case T__177:
case T__178:
case T__179:
case T__180:
case T__181:
case T__182:
case T__183:
case T__184:
case T__185:
case T__186:
case T__187:
case T__188:
case T__189:
case T__190:
case T__191:
case T__192:
case T__193:
case T__194:
case T__195:
case T__196:
case T__197:
case T__198:
case T__199:
case T__200:
case T__201:
case T__202:
case T__203:
case T__204:
case T__205:
case T__206:
case T__207:
case T__208:
case T__209:
case T__210:
case T__211:
case T__212:
case T__213:
case T__214:
case T__215:
case T__216:
case T__217:
case T__218:
case T__219:
case T__220:
case T__221:
case T__222:
case T__223:
case T__224:
case T__225:
case T__226:
case T__227:
case T__228:
case T__229:
case T__230:
case T__231:
case T__232:
case T__233:
case T__234:
case T__235:
case T__236:
case T__237:
case T__238:
case T__239:
case T__240:
case T__241:
case T__242:
case T__243:
case T__244:
case T__245:
case T__246:
case T__247:
case LABEL:
case NOP:
case MOVE:
case RETURN:
case CONST:
case THROW:
case GOTO:
case AGET:
case APUT:
case IGET:
case IPUT:
case SGET:
case SPUT:
case DLINENUMBER:
case DLOCAL:
case DENDLOCAL:
case DRESTARTLOCAL:
case DPROLOGUE:
case DEPIOGUE:
{
setState(138);
sInstruction();
}
break;
default:
throw new NoViableAltException(this);
}
}
setState(143);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(144);
match(T__6);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SFieldContext extends ParserRuleContext {
public Token fieldObj;
public SAccListContext sAccList() {
return getRuleContext(SAccListContext.class,0);
}
public TerminalNode FIELD_FULL() { return getToken(SmaliParser.FIELD_FULL, 0); }
public TerminalNode FIELD_PART() { return getToken(SmaliParser.FIELD_PART, 0); }
public SBaseValueContext sBaseValue() {
return getRuleContext(SBaseValueContext.class,0);
}
public List sAnnotation() {
return getRuleContexts(SAnnotationContext.class);
}
public SAnnotationContext sAnnotation(int i) {
return getRuleContext(SAnnotationContext.class,i);
}
public SFieldContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sField; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSField(this);
else return visitor.visitChildren(this);
}
}
public final SFieldContext sField() throws RecognitionException {
SFieldContext _localctx = new SFieldContext(_ctx, getState());
enterRule(_localctx, 12, RULE_sField);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(146);
match(T__7);
setState(147);
sAccList();
setState(148);
((SFieldContext)_localctx).fieldObj = _input.LT(1);
_la = _input.LA(1);
if ( !(_la==FIELD_FULL || _la==FIELD_PART) ) {
((SFieldContext)_localctx).fieldObj = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(151);
_la = _input.LA(1);
if (_la==T__8) {
{
setState(149);
match(T__8);
setState(150);
sBaseValue();
}
}
setState(160);
switch ( getInterpreter().adaptivePredict(_input,8,_ctx) ) {
case 1:
{
setState(156);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__10) {
{
{
setState(153);
sAnnotation();
}
}
setState(158);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(159);
match(T__9);
}
break;
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SAccListContext extends ParserRuleContext {
public List ACC() { return getTokens(SmaliParser.ACC); }
public TerminalNode ACC(int i) {
return getToken(SmaliParser.ACC, i);
}
public SAccListContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sAccList; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSAccList(this);
else return visitor.visitChildren(this);
}
}
public final SAccListContext sAccList() throws RecognitionException {
SAccListContext _localctx = new SAccListContext(_ctx, getState());
enterRule(_localctx, 14, RULE_sAccList);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(165);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==ACC) {
{
{
setState(162);
match(ACC);
}
}
setState(167);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SAnnotationContext extends ParserRuleContext {
public Token visibility;
public Token type;
public TerminalNode ANN_VISIBLE() { return getToken(SmaliParser.ANN_VISIBLE, 0); }
public TerminalNode OBJECT_TYPE() { return getToken(SmaliParser.OBJECT_TYPE, 0); }
public List sAnnotationKeyName() {
return getRuleContexts(SAnnotationKeyNameContext.class);
}
public SAnnotationKeyNameContext sAnnotationKeyName(int i) {
return getRuleContext(SAnnotationKeyNameContext.class,i);
}
public List sAnnotationValue() {
return getRuleContexts(SAnnotationValueContext.class);
}
public SAnnotationValueContext sAnnotationValue(int i) {
return getRuleContext(SAnnotationValueContext.class,i);
}
public SAnnotationContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sAnnotation; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSAnnotation(this);
else return visitor.visitChildren(this);
}
}
public final SAnnotationContext sAnnotation() throws RecognitionException {
SAnnotationContext _localctx = new SAnnotationContext(_ctx, getState());
enterRule(_localctx, 16, RULE_sAnnotation);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(168);
match(T__10);
setState(169);
((SAnnotationContext)_localctx).visibility = match(ANN_VISIBLE);
setState(170);
((SAnnotationContext)_localctx).type = match(OBJECT_TYPE);
setState(177);
_errHandler.sync(this);
_la = _input.LA(1);
while (((((_la - 251)) & ~0x3f) == 0 && ((1L << (_la - 251)) & ((1L << (VOID_TYPE - 251)) | (1L << (FLOAT_NAN - 251)) | (1L << (DOUBLE_NAN - 251)) | (1L << (FLOAT_INFINITY - 251)) | (1L << (DOUBLE_INFINITY - 251)) | (1L << (BOOLEAN - 251)) | (1L << (PRIMITIVE_TYPE - 251)) | (1L << (ACC - 251)) | (1L << (ANN_VISIBLE - 251)) | (1L << (REGISTER - 251)) | (1L << (NOP - 251)) | (1L << (MOVE - 251)) | (1L << (RETURN - 251)) | (1L << (CONST - 251)) | (1L << (THROW - 251)) | (1L << (GOTO - 251)) | (1L << (AGET - 251)) | (1L << (APUT - 251)) | (1L << (IGET - 251)) | (1L << (IPUT - 251)) | (1L << (SGET - 251)) | (1L << (SPUT - 251)) | (1L << (NULL - 251)) | (1L << (ID - 251)))) != 0)) {
{
{
setState(171);
sAnnotationKeyName();
setState(172);
match(T__8);
setState(173);
sAnnotationValue();
}
}
setState(179);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(180);
match(T__11);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SSubannotationContext extends ParserRuleContext {
public Token type;
public TerminalNode OBJECT_TYPE() { return getToken(SmaliParser.OBJECT_TYPE, 0); }
public List sAnnotationKeyName() {
return getRuleContexts(SAnnotationKeyNameContext.class);
}
public SAnnotationKeyNameContext sAnnotationKeyName(int i) {
return getRuleContext(SAnnotationKeyNameContext.class,i);
}
public List sAnnotationValue() {
return getRuleContexts(SAnnotationValueContext.class);
}
public SAnnotationValueContext sAnnotationValue(int i) {
return getRuleContext(SAnnotationValueContext.class,i);
}
public SSubannotationContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sSubannotation; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSSubannotation(this);
else return visitor.visitChildren(this);
}
}
public final SSubannotationContext sSubannotation() throws RecognitionException {
SSubannotationContext _localctx = new SSubannotationContext(_ctx, getState());
enterRule(_localctx, 18, RULE_sSubannotation);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(182);
match(T__12);
setState(183);
((SSubannotationContext)_localctx).type = match(OBJECT_TYPE);
setState(190);
_errHandler.sync(this);
_la = _input.LA(1);
while (((((_la - 251)) & ~0x3f) == 0 && ((1L << (_la - 251)) & ((1L << (VOID_TYPE - 251)) | (1L << (FLOAT_NAN - 251)) | (1L << (DOUBLE_NAN - 251)) | (1L << (FLOAT_INFINITY - 251)) | (1L << (DOUBLE_INFINITY - 251)) | (1L << (BOOLEAN - 251)) | (1L << (PRIMITIVE_TYPE - 251)) | (1L << (ACC - 251)) | (1L << (ANN_VISIBLE - 251)) | (1L << (REGISTER - 251)) | (1L << (NOP - 251)) | (1L << (MOVE - 251)) | (1L << (RETURN - 251)) | (1L << (CONST - 251)) | (1L << (THROW - 251)) | (1L << (GOTO - 251)) | (1L << (AGET - 251)) | (1L << (APUT - 251)) | (1L << (IGET - 251)) | (1L << (IPUT - 251)) | (1L << (SGET - 251)) | (1L << (SPUT - 251)) | (1L << (NULL - 251)) | (1L << (ID - 251)))) != 0)) {
{
{
setState(184);
sAnnotationKeyName();
setState(185);
match(T__8);
setState(186);
sAnnotationValue();
}
}
setState(192);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(193);
match(T__13);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SParameterContext extends ParserRuleContext {
public Token parameter;
public Token name;
public Token param;
public Token r;
public TerminalNode DPARAMETER() { return getToken(SmaliParser.DPARAMETER, 0); }
public TerminalNode STRING() { return getToken(SmaliParser.STRING, 0); }
public List sAnnotation() {
return getRuleContexts(SAnnotationContext.class);
}
public SAnnotationContext sAnnotation(int i) {
return getRuleContext(SAnnotationContext.class,i);
}
public TerminalNode DPARAM() { return getToken(SmaliParser.DPARAM, 0); }
public TerminalNode REGISTER() { return getToken(SmaliParser.REGISTER, 0); }
public SParameterContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sParameter; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSParameter(this);
else return visitor.visitChildren(this);
}
}
public final SParameterContext sParameter() throws RecognitionException {
SParameterContext _localctx = new SParameterContext(_ctx, getState());
enterRule(_localctx, 20, RULE_sParameter);
int _la;
try {
setState(223);
switch (_input.LA(1)) {
case DPARAMETER:
enterOuterAlt(_localctx, 1);
{
setState(195);
((SParameterContext)_localctx).parameter = match(DPARAMETER);
setState(197);
_la = _input.LA(1);
if (_la==STRING) {
{
setState(196);
((SParameterContext)_localctx).name = match(STRING);
}
}
setState(206);
switch ( getInterpreter().adaptivePredict(_input,14,_ctx) ) {
case 1:
{
setState(202);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__10) {
{
{
setState(199);
sAnnotation();
}
}
setState(204);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(205);
match(T__14);
}
break;
}
}
break;
case DPARAM:
enterOuterAlt(_localctx, 2);
{
setState(208);
((SParameterContext)_localctx).param = match(DPARAM);
setState(209);
((SParameterContext)_localctx).r = match(REGISTER);
setState(212);
_la = _input.LA(1);
if (_la==T__15) {
{
setState(210);
match(T__15);
setState(211);
((SParameterContext)_localctx).name = match(STRING);
}
}
setState(221);
switch ( getInterpreter().adaptivePredict(_input,17,_ctx) ) {
case 1:
{
setState(217);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__10) {
{
{
setState(214);
sAnnotation();
}
}
setState(219);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(220);
match(T__16);
}
break;
}
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SAnnotationKeyNameContext extends ParserRuleContext {
public TerminalNode PRIMITIVE_TYPE() { return getToken(SmaliParser.PRIMITIVE_TYPE, 0); }
public TerminalNode VOID_TYPE() { return getToken(SmaliParser.VOID_TYPE, 0); }
public TerminalNode ANN_VISIBLE() { return getToken(SmaliParser.ANN_VISIBLE, 0); }
public TerminalNode REGISTER() { return getToken(SmaliParser.REGISTER, 0); }
public TerminalNode BOOLEAN() { return getToken(SmaliParser.BOOLEAN, 0); }
public TerminalNode ID() { return getToken(SmaliParser.ID, 0); }
public TerminalNode NULL() { return getToken(SmaliParser.NULL, 0); }
public TerminalNode FLOAT_INFINITY() { return getToken(SmaliParser.FLOAT_INFINITY, 0); }
public TerminalNode DOUBLE_INFINITY() { return getToken(SmaliParser.DOUBLE_INFINITY, 0); }
public TerminalNode FLOAT_NAN() { return getToken(SmaliParser.FLOAT_NAN, 0); }
public TerminalNode DOUBLE_NAN() { return getToken(SmaliParser.DOUBLE_NAN, 0); }
public TerminalNode NOP() { return getToken(SmaliParser.NOP, 0); }
public TerminalNode MOVE() { return getToken(SmaliParser.MOVE, 0); }
public TerminalNode RETURN() { return getToken(SmaliParser.RETURN, 0); }
public TerminalNode CONST() { return getToken(SmaliParser.CONST, 0); }
public TerminalNode THROW() { return getToken(SmaliParser.THROW, 0); }
public TerminalNode GOTO() { return getToken(SmaliParser.GOTO, 0); }
public TerminalNode AGET() { return getToken(SmaliParser.AGET, 0); }
public TerminalNode APUT() { return getToken(SmaliParser.APUT, 0); }
public TerminalNode IGET() { return getToken(SmaliParser.IGET, 0); }
public TerminalNode IPUT() { return getToken(SmaliParser.IPUT, 0); }
public TerminalNode SGET() { return getToken(SmaliParser.SGET, 0); }
public TerminalNode SPUT() { return getToken(SmaliParser.SPUT, 0); }
public TerminalNode ACC() { return getToken(SmaliParser.ACC, 0); }
public SAnnotationKeyNameContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sAnnotationKeyName; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSAnnotationKeyName(this);
else return visitor.visitChildren(this);
}
}
public final SAnnotationKeyNameContext sAnnotationKeyName() throws RecognitionException {
SAnnotationKeyNameContext _localctx = new SAnnotationKeyNameContext(_ctx, getState());
enterRule(_localctx, 22, RULE_sAnnotationKeyName);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(225);
_la = _input.LA(1);
if ( !(((((_la - 251)) & ~0x3f) == 0 && ((1L << (_la - 251)) & ((1L << (VOID_TYPE - 251)) | (1L << (FLOAT_NAN - 251)) | (1L << (DOUBLE_NAN - 251)) | (1L << (FLOAT_INFINITY - 251)) | (1L << (DOUBLE_INFINITY - 251)) | (1L << (BOOLEAN - 251)) | (1L << (PRIMITIVE_TYPE - 251)) | (1L << (ACC - 251)) | (1L << (ANN_VISIBLE - 251)) | (1L << (REGISTER - 251)) | (1L << (NOP - 251)) | (1L << (MOVE - 251)) | (1L << (RETURN - 251)) | (1L << (CONST - 251)) | (1L << (THROW - 251)) | (1L << (GOTO - 251)) | (1L << (AGET - 251)) | (1L << (APUT - 251)) | (1L << (IGET - 251)) | (1L << (IPUT - 251)) | (1L << (SGET - 251)) | (1L << (SPUT - 251)) | (1L << (NULL - 251)) | (1L << (ID - 251)))) != 0)) ) {
_errHandler.recoverInline(this);
} else {
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SAnnotationValueContext extends ParserRuleContext {
public SSubannotationContext sSubannotation() {
return getRuleContext(SSubannotationContext.class,0);
}
public SBaseValueContext sBaseValue() {
return getRuleContext(SBaseValueContext.class,0);
}
public SArrayValueContext sArrayValue() {
return getRuleContext(SArrayValueContext.class,0);
}
public TerminalNode FIELD_FULL() { return getToken(SmaliParser.FIELD_FULL, 0); }
public TerminalNode METHOD_FULL() { return getToken(SmaliParser.METHOD_FULL, 0); }
public SAnnotationValueContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sAnnotationValue; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSAnnotationValue(this);
else return visitor.visitChildren(this);
}
}
public final SAnnotationValueContext sAnnotationValue() throws RecognitionException {
SAnnotationValueContext _localctx = new SAnnotationValueContext(_ctx, getState());
enterRule(_localctx, 24, RULE_sAnnotationValue);
int _la;
try {
setState(234);
switch (_input.LA(1)) {
case T__12:
enterOuterAlt(_localctx, 1);
{
setState(227);
sSubannotation();
}
break;
case VOID_TYPE:
case METHOD_FULL:
case METHOD_PROTO:
case FLOAT_NAN:
case DOUBLE_NAN:
case FLOAT_INFINITY:
case DOUBLE_INFINITY:
case BASE_FLOAT:
case BASE_DOUBLE:
case CHAR:
case LONG:
case SHORT:
case BYTE:
case INT:
case BOOLEAN:
case STRING:
case OBJECT_TYPE:
case ARRAY_TYPE:
case PRIMITIVE_TYPE:
case NULL:
case DENUM:
enterOuterAlt(_localctx, 2);
{
setState(228);
sBaseValue();
}
break;
case T__23:
enterOuterAlt(_localctx, 3);
{
setState(229);
sArrayValue();
}
break;
case T__17:
case T__18:
case T__19:
case T__20:
enterOuterAlt(_localctx, 4);
{
setState(230);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__17) | (1L << T__18) | (1L << T__19) | (1L << T__20))) != 0)) ) {
_errHandler.recoverInline(this);
} else {
consume();
}
setState(231);
match(FIELD_FULL);
}
break;
case T__21:
case T__22:
enterOuterAlt(_localctx, 5);
{
setState(232);
_la = _input.LA(1);
if ( !(_la==T__21 || _la==T__22) ) {
_errHandler.recoverInline(this);
} else {
consume();
}
setState(233);
match(METHOD_FULL);
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SBaseValueContext extends ParserRuleContext {
public TerminalNode STRING() { return getToken(SmaliParser.STRING, 0); }
public TerminalNode BOOLEAN() { return getToken(SmaliParser.BOOLEAN, 0); }
public TerminalNode BYTE() { return getToken(SmaliParser.BYTE, 0); }
public TerminalNode SHORT() { return getToken(SmaliParser.SHORT, 0); }
public TerminalNode CHAR() { return getToken(SmaliParser.CHAR, 0); }
public TerminalNode INT() { return getToken(SmaliParser.INT, 0); }
public TerminalNode LONG() { return getToken(SmaliParser.LONG, 0); }
public TerminalNode BASE_FLOAT() { return getToken(SmaliParser.BASE_FLOAT, 0); }
public TerminalNode FLOAT_INFINITY() { return getToken(SmaliParser.FLOAT_INFINITY, 0); }
public TerminalNode FLOAT_NAN() { return getToken(SmaliParser.FLOAT_NAN, 0); }
public TerminalNode BASE_DOUBLE() { return getToken(SmaliParser.BASE_DOUBLE, 0); }
public TerminalNode DOUBLE_INFINITY() { return getToken(SmaliParser.DOUBLE_INFINITY, 0); }
public TerminalNode DOUBLE_NAN() { return getToken(SmaliParser.DOUBLE_NAN, 0); }
public TerminalNode METHOD_FULL() { return getToken(SmaliParser.METHOD_FULL, 0); }
public TerminalNode METHOD_PROTO() { return getToken(SmaliParser.METHOD_PROTO, 0); }
public TerminalNode OBJECT_TYPE() { return getToken(SmaliParser.OBJECT_TYPE, 0); }
public TerminalNode ARRAY_TYPE() { return getToken(SmaliParser.ARRAY_TYPE, 0); }
public TerminalNode PRIMITIVE_TYPE() { return getToken(SmaliParser.PRIMITIVE_TYPE, 0); }
public TerminalNode VOID_TYPE() { return getToken(SmaliParser.VOID_TYPE, 0); }
public TerminalNode NULL() { return getToken(SmaliParser.NULL, 0); }
public TerminalNode DENUM() { return getToken(SmaliParser.DENUM, 0); }
public TerminalNode FIELD_FULL() { return getToken(SmaliParser.FIELD_FULL, 0); }
public SBaseValueContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sBaseValue; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSBaseValue(this);
else return visitor.visitChildren(this);
}
}
public final SBaseValueContext sBaseValue() throws RecognitionException {
SBaseValueContext _localctx = new SBaseValueContext(_ctx, getState());
enterRule(_localctx, 26, RULE_sBaseValue);
try {
setState(258);
switch (_input.LA(1)) {
case STRING:
enterOuterAlt(_localctx, 1);
{
setState(236);
match(STRING);
}
break;
case BOOLEAN:
enterOuterAlt(_localctx, 2);
{
setState(237);
match(BOOLEAN);
}
break;
case BYTE:
enterOuterAlt(_localctx, 3);
{
setState(238);
match(BYTE);
}
break;
case SHORT:
enterOuterAlt(_localctx, 4);
{
setState(239);
match(SHORT);
}
break;
case CHAR:
enterOuterAlt(_localctx, 5);
{
setState(240);
match(CHAR);
}
break;
case INT:
enterOuterAlt(_localctx, 6);
{
setState(241);
match(INT);
}
break;
case LONG:
enterOuterAlt(_localctx, 7);
{
setState(242);
match(LONG);
}
break;
case BASE_FLOAT:
enterOuterAlt(_localctx, 8);
{
setState(243);
match(BASE_FLOAT);
}
break;
case FLOAT_INFINITY:
enterOuterAlt(_localctx, 9);
{
setState(244);
match(FLOAT_INFINITY);
}
break;
case FLOAT_NAN:
enterOuterAlt(_localctx, 10);
{
setState(245);
match(FLOAT_NAN);
}
break;
case BASE_DOUBLE:
enterOuterAlt(_localctx, 11);
{
setState(246);
match(BASE_DOUBLE);
}
break;
case DOUBLE_INFINITY:
enterOuterAlt(_localctx, 12);
{
setState(247);
match(DOUBLE_INFINITY);
}
break;
case DOUBLE_NAN:
enterOuterAlt(_localctx, 13);
{
setState(248);
match(DOUBLE_NAN);
}
break;
case METHOD_FULL:
enterOuterAlt(_localctx, 14);
{
setState(249);
match(METHOD_FULL);
}
break;
case METHOD_PROTO:
enterOuterAlt(_localctx, 15);
{
setState(250);
match(METHOD_PROTO);
}
break;
case OBJECT_TYPE:
enterOuterAlt(_localctx, 16);
{
setState(251);
match(OBJECT_TYPE);
}
break;
case ARRAY_TYPE:
enterOuterAlt(_localctx, 17);
{
setState(252);
match(ARRAY_TYPE);
}
break;
case PRIMITIVE_TYPE:
enterOuterAlt(_localctx, 18);
{
setState(253);
match(PRIMITIVE_TYPE);
}
break;
case VOID_TYPE:
enterOuterAlt(_localctx, 19);
{
setState(254);
match(VOID_TYPE);
}
break;
case NULL:
enterOuterAlt(_localctx, 20);
{
setState(255);
match(NULL);
}
break;
case DENUM:
enterOuterAlt(_localctx, 21);
{
setState(256);
match(DENUM);
setState(257);
match(FIELD_FULL);
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SArrayValueContext extends ParserRuleContext {
public List sAnnotationValue() {
return getRuleContexts(SAnnotationValueContext.class);
}
public SAnnotationValueContext sAnnotationValue(int i) {
return getRuleContext(SAnnotationValueContext.class,i);
}
public SArrayValueContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sArrayValue; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSArrayValue(this);
else return visitor.visitChildren(this);
}
}
public final SArrayValueContext sArrayValue() throws RecognitionException {
SArrayValueContext _localctx = new SArrayValueContext(_ctx, getState());
enterRule(_localctx, 28, RULE_sArrayValue);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(260);
match(T__23);
setState(262);
_la = _input.LA(1);
if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__12) | (1L << T__17) | (1L << T__18) | (1L << T__19) | (1L << T__20) | (1L << T__21) | (1L << T__22) | (1L << T__23))) != 0) || ((((_la - 251)) & ~0x3f) == 0 && ((1L << (_la - 251)) & ((1L << (VOID_TYPE - 251)) | (1L << (METHOD_FULL - 251)) | (1L << (METHOD_PROTO - 251)) | (1L << (FLOAT_NAN - 251)) | (1L << (DOUBLE_NAN - 251)) | (1L << (FLOAT_INFINITY - 251)) | (1L << (DOUBLE_INFINITY - 251)) | (1L << (BASE_FLOAT - 251)) | (1L << (BASE_DOUBLE - 251)) | (1L << (CHAR - 251)) | (1L << (LONG - 251)) | (1L << (SHORT - 251)) | (1L << (BYTE - 251)) | (1L << (INT - 251)) | (1L << (BOOLEAN - 251)) | (1L << (STRING - 251)) | (1L << (OBJECT_TYPE - 251)) | (1L << (ARRAY_TYPE - 251)) | (1L << (PRIMITIVE_TYPE - 251)) | (1L << (NULL - 251)) | (1L << (DENUM - 251)))) != 0)) {
{
setState(261);
sAnnotationValue();
}
}
setState(268);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__15) {
{
{
setState(264);
match(T__15);
setState(265);
sAnnotationValue();
}
}
setState(270);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(271);
match(T__24);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SInstructionContext extends ParserRuleContext {
public FlineContext fline() {
return getRuleContext(FlineContext.class,0);
}
public FlocalContext flocal() {
return getRuleContext(FlocalContext.class,0);
}
public FendContext fend() {
return getRuleContext(FendContext.class,0);
}
public FrestartContext frestart() {
return getRuleContext(FrestartContext.class,0);
}
public FprologueContext fprologue() {
return getRuleContext(FprologueContext.class,0);
}
public FepiogueContext fepiogue() {
return getRuleContext(FepiogueContext.class,0);
}
public FregistersContext fregisters() {
return getRuleContext(FregistersContext.class,0);
}
public FlocalsContext flocals() {
return getRuleContext(FlocalsContext.class,0);
}
public FcacheContext fcache() {
return getRuleContext(FcacheContext.class,0);
}
public FcacheallContext fcacheall() {
return getRuleContext(FcacheallContext.class,0);
}
public F0xContext f0x() {
return getRuleContext(F0xContext.class,0);
}
public F0tContext f0t() {
return getRuleContext(F0tContext.class,0);
}
public F1tContext f1t() {
return getRuleContext(F1tContext.class,0);
}
public F2tContext f2t() {
return getRuleContext(F2tContext.class,0);
}
public F1xContext f1x() {
return getRuleContext(F1xContext.class,0);
}
public FconstContext fconst() {
return getRuleContext(FconstContext.class,0);
}
public Ft2cContext ft2c() {
return getRuleContext(Ft2cContext.class,0);
}
public Ff1cContext ff1c() {
return getRuleContext(Ff1cContext.class,0);
}
public Ff2cContext ff2c() {
return getRuleContext(Ff2cContext.class,0);
}
public F2xContext f2x() {
return getRuleContext(F2xContext.class,0);
}
public F3xContext f3x() {
return getRuleContext(F3xContext.class,0);
}
public Ft5cContext ft5c() {
return getRuleContext(Ft5cContext.class,0);
}
public Fm5cContext fm5c() {
return getRuleContext(Fm5cContext.class,0);
}
public FmrcContext fmrc() {
return getRuleContext(FmrcContext.class,0);
}
public Fm45ccContext fm45cc() {
return getRuleContext(Fm45ccContext.class,0);
}
public Fm4rccContext fm4rcc() {
return getRuleContext(Fm4rccContext.class,0);
}
public FmcustomcContext fmcustomc() {
return getRuleContext(FmcustomcContext.class,0);
}
public FmcustomrcContext fmcustomrc() {
return getRuleContext(FmcustomrcContext.class,0);
}
public FtrcContext ftrc() {
return getRuleContext(FtrcContext.class,0);
}
public SLabelContext sLabel() {
return getRuleContext(SLabelContext.class,0);
}
public F2sbContext f2sb() {
return getRuleContext(F2sbContext.class,0);
}
public F31tContext f31t() {
return getRuleContext(F31tContext.class,0);
}
public FpackageswitchContext fpackageswitch() {
return getRuleContext(FpackageswitchContext.class,0);
}
public FspareswitchContext fspareswitch() {
return getRuleContext(FspareswitchContext.class,0);
}
public FarraydataContext farraydata() {
return getRuleContext(FarraydataContext.class,0);
}
public SInstructionContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sInstruction; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSInstruction(this);
else return visitor.visitChildren(this);
}
}
public final SInstructionContext sInstruction() throws RecognitionException {
SInstructionContext _localctx = new SInstructionContext(_ctx, getState());
enterRule(_localctx, 30, RULE_sInstruction);
try {
setState(308);
switch (_input.LA(1)) {
case DLINENUMBER:
enterOuterAlt(_localctx, 1);
{
setState(273);
fline();
}
break;
case DLOCAL:
enterOuterAlt(_localctx, 2);
{
setState(274);
flocal();
}
break;
case DENDLOCAL:
enterOuterAlt(_localctx, 3);
{
setState(275);
fend();
}
break;
case DRESTARTLOCAL:
enterOuterAlt(_localctx, 4);
{
setState(276);
frestart();
}
break;
case DPROLOGUE:
enterOuterAlt(_localctx, 5);
{
setState(277);
fprologue();
}
break;
case DEPIOGUE:
enterOuterAlt(_localctx, 6);
{
setState(278);
fepiogue();
}
break;
case T__26:
enterOuterAlt(_localctx, 7);
{
setState(279);
fregisters();
}
break;
case T__27:
enterOuterAlt(_localctx, 8);
{
setState(280);
flocals();
}
break;
case T__28:
enterOuterAlt(_localctx, 9);
{
setState(281);
fcache();
}
break;
case T__30:
enterOuterAlt(_localctx, 10);
{
setState(282);
fcacheall();
}
break;
case T__38:
case NOP:
enterOuterAlt(_localctx, 11);
{
setState(283);
f0x();
}
break;
case T__39:
case T__40:
case GOTO:
enterOuterAlt(_localctx, 12);
{
setState(284);
f0t();
}
break;
case T__217:
case T__218:
case T__219:
case T__220:
case T__221:
case T__222:
enterOuterAlt(_localctx, 13);
{
setState(285);
f1t();
}
break;
case T__223:
case T__224:
case T__225:
case T__226:
case T__227:
case T__228:
enterOuterAlt(_localctx, 14);
{
setState(286);
f2t();
}
break;
case T__41:
case T__42:
case T__43:
case T__44:
case T__45:
case T__46:
case T__47:
case T__48:
case RETURN:
case THROW:
enterOuterAlt(_localctx, 15);
{
setState(287);
f1x();
}
break;
case T__49:
case T__50:
case T__51:
case T__52:
case T__53:
case T__54:
case T__55:
case T__56:
case T__57:
case T__58:
case T__59:
case T__60:
case CONST:
enterOuterAlt(_localctx, 16);
{
setState(288);
fconst();
}
break;
case T__73:
case T__74:
enterOuterAlt(_localctx, 17);
{
setState(289);
ft2c();
}
break;
case T__61:
case T__62:
case T__63:
case T__64:
case T__65:
case T__66:
case T__67:
case T__68:
case T__69:
case T__70:
case T__71:
case T__72:
case SGET:
case SPUT:
enterOuterAlt(_localctx, 18);
{
setState(290);
ff1c();
}
break;
case T__75:
case T__76:
case T__77:
case T__78:
case T__79:
case T__80:
case T__81:
case T__82:
case T__83:
case T__84:
case T__85:
case T__86:
case IGET:
case IPUT:
enterOuterAlt(_localctx, 19);
{
setState(291);
ff2c();
}
break;
case T__87:
case T__88:
case T__89:
case T__90:
case T__91:
case T__92:
case T__93:
case T__94:
case T__95:
case T__96:
case T__97:
case T__98:
case T__99:
case T__100:
case T__101:
case T__102:
case T__103:
case T__104:
case T__105:
case T__106:
case T__107:
case T__108:
case T__109:
case T__110:
case T__111:
case T__112:
case T__113:
case T__114:
case T__115:
case T__116:
case T__117:
case T__118:
case T__119:
case T__120:
case T__121:
case T__122:
case T__123:
case T__124:
case T__125:
case T__126:
case T__127:
case T__128:
case T__129:
case T__130:
case T__131:
case T__132:
case T__133:
case T__134:
case T__135:
case T__136:
case T__137:
case T__138:
case T__139:
case T__140:
case T__141:
case T__142:
case T__143:
case T__144:
case T__145:
case T__146:
case T__147:
case T__148:
case MOVE:
enterOuterAlt(_localctx, 20);
{
setState(292);
f2x();
}
break;
case T__149:
case T__150:
case T__151:
case T__152:
case T__153:
case T__154:
case T__155:
case T__156:
case T__157:
case T__158:
case T__159:
case T__160:
case T__161:
case T__162:
case T__163:
case T__164:
case T__165:
case T__166:
case T__167:
case T__168:
case T__169:
case T__170:
case T__171:
case T__172:
case T__173:
case T__174:
case T__175:
case T__176:
case T__177:
case T__178:
case T__179:
case T__180:
case T__181:
case T__182:
case T__183:
case T__184:
case T__185:
case T__186:
case T__187:
case T__188:
case T__189:
case T__190:
case T__191:
case T__192:
case T__193:
case T__194:
case T__195:
case T__196:
case T__197:
case AGET:
case APUT:
enterOuterAlt(_localctx, 21);
{
setState(293);
f3x();
}
break;
case T__198:
enterOuterAlt(_localctx, 22);
{
setState(294);
ft5c();
}
break;
case T__199:
case T__200:
case T__201:
case T__202:
case T__203:
enterOuterAlt(_localctx, 23);
{
setState(295);
fm5c();
}
break;
case T__204:
case T__205:
case T__206:
case T__207:
case T__208:
enterOuterAlt(_localctx, 24);
{
setState(296);
fmrc();
}
break;
case T__209:
enterOuterAlt(_localctx, 25);
{
setState(297);
fm45cc();
}
break;
case T__210:
enterOuterAlt(_localctx, 26);
{
setState(298);
fm4rcc();
}
break;
case T__211:
enterOuterAlt(_localctx, 27);
{
setState(299);
fmcustomc();
}
break;
case T__212:
enterOuterAlt(_localctx, 28);
{
setState(300);
fmcustomrc();
}
break;
case T__213:
enterOuterAlt(_localctx, 29);
{
setState(301);
ftrc();
}
break;
case LABEL:
enterOuterAlt(_localctx, 30);
{
setState(302);
sLabel();
}
break;
case T__229:
case T__230:
case T__231:
case T__232:
case T__233:
case T__234:
case T__235:
case T__236:
case T__237:
case T__238:
case T__239:
case T__240:
case T__241:
case T__242:
case T__243:
case T__244:
case T__245:
case T__246:
case T__247:
enterOuterAlt(_localctx, 31);
{
setState(303);
f2sb();
}
break;
case T__214:
case T__215:
case T__216:
enterOuterAlt(_localctx, 32);
{
setState(304);
f31t();
}
break;
case T__31:
enterOuterAlt(_localctx, 33);
{
setState(305);
fpackageswitch();
}
break;
case T__33:
enterOuterAlt(_localctx, 34);
{
setState(306);
fspareswitch();
}
break;
case T__36:
enterOuterAlt(_localctx, 35);
{
setState(307);
farraydata();
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FlineContext extends ParserRuleContext {
public Token line;
public TerminalNode INT() { return getToken(SmaliParser.INT, 0); }
public FlineContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fline; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFline(this);
else return visitor.visitChildren(this);
}
}
public final FlineContext fline() throws RecognitionException {
FlineContext _localctx = new FlineContext(_ctx, getState());
enterRule(_localctx, 32, RULE_fline);
try {
enterOuterAlt(_localctx, 1);
{
setState(310);
match(DLINENUMBER);
setState(311);
((FlineContext)_localctx).line = match(INT);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FlocalContext extends ParserRuleContext {
public Token r;
public SAnnotationKeyNameContext name1;
public Token name2;
public Token type;
public Token v1;
public Token v2;
public Token sig;
public TerminalNode REGISTER() { return getToken(SmaliParser.REGISTER, 0); }
public TerminalNode FIELD_PART() { return getToken(SmaliParser.FIELD_PART, 0); }
public TerminalNode SMALI_V2_LOCAL_NAME_TYPE() { return getToken(SmaliParser.SMALI_V2_LOCAL_NAME_TYPE, 0); }
public TerminalNode OBJECT_TYPE() { return getToken(SmaliParser.OBJECT_TYPE, 0); }
public TerminalNode PRIMITIVE_TYPE() { return getToken(SmaliParser.PRIMITIVE_TYPE, 0); }
public TerminalNode ARRAY_TYPE() { return getToken(SmaliParser.ARRAY_TYPE, 0); }
public List STRING() { return getTokens(SmaliParser.STRING); }
public TerminalNode STRING(int i) {
return getToken(SmaliParser.STRING, i);
}
public SAnnotationKeyNameContext sAnnotationKeyName() {
return getRuleContext(SAnnotationKeyNameContext.class,0);
}
public FlocalContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_flocal; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFlocal(this);
else return visitor.visitChildren(this);
}
}
public final FlocalContext flocal() throws RecognitionException {
FlocalContext _localctx = new FlocalContext(_ctx, getState());
enterRule(_localctx, 34, RULE_flocal);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(313);
match(DLOCAL);
setState(314);
((FlocalContext)_localctx).r = match(REGISTER);
setState(315);
match(T__15);
setState(324);
switch (_input.LA(1)) {
case VOID_TYPE:
case FLOAT_NAN:
case DOUBLE_NAN:
case FLOAT_INFINITY:
case DOUBLE_INFINITY:
case BOOLEAN:
case STRING:
case PRIMITIVE_TYPE:
case ACC:
case ANN_VISIBLE:
case REGISTER:
case NOP:
case MOVE:
case RETURN:
case CONST:
case THROW:
case GOTO:
case AGET:
case APUT:
case IGET:
case IPUT:
case SGET:
case SPUT:
case NULL:
case ID:
{
setState(318);
switch (_input.LA(1)) {
case VOID_TYPE:
case FLOAT_NAN:
case DOUBLE_NAN:
case FLOAT_INFINITY:
case DOUBLE_INFINITY:
case BOOLEAN:
case PRIMITIVE_TYPE:
case ACC:
case ANN_VISIBLE:
case REGISTER:
case NOP:
case MOVE:
case RETURN:
case CONST:
case THROW:
case GOTO:
case AGET:
case APUT:
case IGET:
case IPUT:
case SGET:
case SPUT:
case NULL:
case ID:
{
setState(316);
((FlocalContext)_localctx).name1 = sAnnotationKeyName();
}
break;
case STRING:
{
setState(317);
((FlocalContext)_localctx).name2 = match(STRING);
}
break;
default:
throw new NoViableAltException(this);
}
setState(320);
match(T__25);
setState(321);
((FlocalContext)_localctx).type = _input.LT(1);
_la = _input.LA(1);
if ( !(((((_la - 273)) & ~0x3f) == 0 && ((1L << (_la - 273)) & ((1L << (OBJECT_TYPE - 273)) | (1L << (ARRAY_TYPE - 273)) | (1L << (PRIMITIVE_TYPE - 273)))) != 0)) ) {
((FlocalContext)_localctx).type = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
}
break;
case FIELD_PART:
{
setState(322);
((FlocalContext)_localctx).v1 = match(FIELD_PART);
}
break;
case SMALI_V2_LOCAL_NAME_TYPE:
{
setState(323);
((FlocalContext)_localctx).v2 = match(SMALI_V2_LOCAL_NAME_TYPE);
}
break;
default:
throw new NoViableAltException(this);
}
setState(328);
_la = _input.LA(1);
if (_la==T__15) {
{
setState(326);
match(T__15);
setState(327);
((FlocalContext)_localctx).sig = match(STRING);
}
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FendContext extends ParserRuleContext {
public Token r;
public TerminalNode REGISTER() { return getToken(SmaliParser.REGISTER, 0); }
public FendContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fend; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFend(this);
else return visitor.visitChildren(this);
}
}
public final FendContext fend() throws RecognitionException {
FendContext _localctx = new FendContext(_ctx, getState());
enterRule(_localctx, 36, RULE_fend);
try {
enterOuterAlt(_localctx, 1);
{
setState(330);
match(DENDLOCAL);
setState(331);
((FendContext)_localctx).r = match(REGISTER);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FrestartContext extends ParserRuleContext {
public Token r;
public TerminalNode REGISTER() { return getToken(SmaliParser.REGISTER, 0); }
public FrestartContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_frestart; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFrestart(this);
else return visitor.visitChildren(this);
}
}
public final FrestartContext frestart() throws RecognitionException {
FrestartContext _localctx = new FrestartContext(_ctx, getState());
enterRule(_localctx, 38, RULE_frestart);
try {
enterOuterAlt(_localctx, 1);
{
setState(333);
match(DRESTARTLOCAL);
setState(334);
((FrestartContext)_localctx).r = match(REGISTER);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FprologueContext extends ParserRuleContext {
public FprologueContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fprologue; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFprologue(this);
else return visitor.visitChildren(this);
}
}
public final FprologueContext fprologue() throws RecognitionException {
FprologueContext _localctx = new FprologueContext(_ctx, getState());
enterRule(_localctx, 40, RULE_fprologue);
try {
enterOuterAlt(_localctx, 1);
{
setState(336);
match(DPROLOGUE);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FepiogueContext extends ParserRuleContext {
public FepiogueContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fepiogue; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFepiogue(this);
else return visitor.visitChildren(this);
}
}
public final FepiogueContext fepiogue() throws RecognitionException {
FepiogueContext _localctx = new FepiogueContext(_ctx, getState());
enterRule(_localctx, 42, RULE_fepiogue);
try {
enterOuterAlt(_localctx, 1);
{
setState(338);
match(DEPIOGUE);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FregistersContext extends ParserRuleContext {
public Token xregisters;
public TerminalNode INT() { return getToken(SmaliParser.INT, 0); }
public FregistersContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fregisters; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFregisters(this);
else return visitor.visitChildren(this);
}
}
public final FregistersContext fregisters() throws RecognitionException {
FregistersContext _localctx = new FregistersContext(_ctx, getState());
enterRule(_localctx, 44, RULE_fregisters);
try {
enterOuterAlt(_localctx, 1);
{
setState(340);
match(T__26);
setState(341);
((FregistersContext)_localctx).xregisters = match(INT);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FlocalsContext extends ParserRuleContext {
public Token xlocals;
public TerminalNode INT() { return getToken(SmaliParser.INT, 0); }
public FlocalsContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_flocals; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFlocals(this);
else return visitor.visitChildren(this);
}
}
public final FlocalsContext flocals() throws RecognitionException {
FlocalsContext _localctx = new FlocalsContext(_ctx, getState());
enterRule(_localctx, 46, RULE_flocals);
try {
enterOuterAlt(_localctx, 1);
{
setState(343);
match(T__27);
setState(344);
((FlocalsContext)_localctx).xlocals = match(INT);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FcacheContext extends ParserRuleContext {
public Token type;
public Token start;
public Token end;
public Token handle;
public TerminalNode OBJECT_TYPE() { return getToken(SmaliParser.OBJECT_TYPE, 0); }
public List LABEL() { return getTokens(SmaliParser.LABEL); }
public TerminalNode LABEL(int i) {
return getToken(SmaliParser.LABEL, i);
}
public FcacheContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fcache; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFcache(this);
else return visitor.visitChildren(this);
}
}
public final FcacheContext fcache() throws RecognitionException {
FcacheContext _localctx = new FcacheContext(_ctx, getState());
enterRule(_localctx, 48, RULE_fcache);
try {
enterOuterAlt(_localctx, 1);
{
setState(346);
match(T__28);
setState(347);
((FcacheContext)_localctx).type = match(OBJECT_TYPE);
setState(348);
match(T__23);
setState(349);
((FcacheContext)_localctx).start = match(LABEL);
setState(350);
match(T__29);
setState(351);
((FcacheContext)_localctx).end = match(LABEL);
setState(352);
match(T__24);
setState(353);
((FcacheContext)_localctx).handle = match(LABEL);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FcacheallContext extends ParserRuleContext {
public Token start;
public Token end;
public Token handle;
public List LABEL() { return getTokens(SmaliParser.LABEL); }
public TerminalNode LABEL(int i) {
return getToken(SmaliParser.LABEL, i);
}
public FcacheallContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fcacheall; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFcacheall(this);
else return visitor.visitChildren(this);
}
}
public final FcacheallContext fcacheall() throws RecognitionException {
FcacheallContext _localctx = new FcacheallContext(_ctx, getState());
enterRule(_localctx, 50, RULE_fcacheall);
try {
enterOuterAlt(_localctx, 1);
{
setState(355);
match(T__30);
setState(356);
match(T__23);
setState(357);
((FcacheallContext)_localctx).start = match(LABEL);
setState(358);
match(T__29);
setState(359);
((FcacheallContext)_localctx).end = match(LABEL);
setState(360);
match(T__24);
setState(361);
((FcacheallContext)_localctx).handle = match(LABEL);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class SLabelContext extends ParserRuleContext {
public Token label;
public TerminalNode LABEL() { return getToken(SmaliParser.LABEL, 0); }
public SLabelContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_sLabel; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitSLabel(this);
else return visitor.visitChildren(this);
}
}
public final SLabelContext sLabel() throws RecognitionException {
SLabelContext _localctx = new SLabelContext(_ctx, getState());
enterRule(_localctx, 52, RULE_sLabel);
try {
enterOuterAlt(_localctx, 1);
{
setState(363);
((SLabelContext)_localctx).label = match(LABEL);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FpackageswitchContext extends ParserRuleContext {
public Token start;
public TerminalNode INT() { return getToken(SmaliParser.INT, 0); }
public List LABEL() { return getTokens(SmaliParser.LABEL); }
public TerminalNode LABEL(int i) {
return getToken(SmaliParser.LABEL, i);
}
public FpackageswitchContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fpackageswitch; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFpackageswitch(this);
else return visitor.visitChildren(this);
}
}
public final FpackageswitchContext fpackageswitch() throws RecognitionException {
FpackageswitchContext _localctx = new FpackageswitchContext(_ctx, getState());
enterRule(_localctx, 54, RULE_fpackageswitch);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(365);
match(T__31);
setState(366);
((FpackageswitchContext)_localctx).start = match(INT);
setState(368);
_errHandler.sync(this);
_la = _input.LA(1);
do {
{
{
setState(367);
match(LABEL);
}
}
setState(370);
_errHandler.sync(this);
_la = _input.LA(1);
} while ( _la==LABEL );
setState(372);
match(T__32);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FspareswitchContext extends ParserRuleContext {
public List INT() { return getTokens(SmaliParser.INT); }
public TerminalNode INT(int i) {
return getToken(SmaliParser.INT, i);
}
public List LABEL() { return getTokens(SmaliParser.LABEL); }
public TerminalNode LABEL(int i) {
return getToken(SmaliParser.LABEL, i);
}
public FspareswitchContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fspareswitch; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFspareswitch(this);
else return visitor.visitChildren(this);
}
}
public final FspareswitchContext fspareswitch() throws RecognitionException {
FspareswitchContext _localctx = new FspareswitchContext(_ctx, getState());
enterRule(_localctx, 56, RULE_fspareswitch);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(374);
match(T__33);
setState(380);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==INT) {
{
{
setState(375);
match(INT);
setState(376);
match(T__34);
setState(377);
match(LABEL);
}
}
setState(382);
_errHandler.sync(this);
_la = _input.LA(1);
}
setState(383);
match(T__35);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FarraydataContext extends ParserRuleContext {
public Token size;
public TerminalNode INT() { return getToken(SmaliParser.INT, 0); }
public List sBaseValue() {
return getRuleContexts(SBaseValueContext.class);
}
public SBaseValueContext sBaseValue(int i) {
return getRuleContext(SBaseValueContext.class,i);
}
public FarraydataContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_farraydata; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFarraydata(this);
else return visitor.visitChildren(this);
}
}
public final FarraydataContext farraydata() throws RecognitionException {
FarraydataContext _localctx = new FarraydataContext(_ctx, getState());
enterRule(_localctx, 58, RULE_farraydata);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(385);
match(T__36);
setState(386);
((FarraydataContext)_localctx).size = match(INT);
setState(388);
_errHandler.sync(this);
_la = _input.LA(1);
do {
{
{
setState(387);
sBaseValue();
}
}
setState(390);
_errHandler.sync(this);
_la = _input.LA(1);
} while ( ((((_la - 251)) & ~0x3f) == 0 && ((1L << (_la - 251)) & ((1L << (VOID_TYPE - 251)) | (1L << (METHOD_FULL - 251)) | (1L << (METHOD_PROTO - 251)) | (1L << (FLOAT_NAN - 251)) | (1L << (DOUBLE_NAN - 251)) | (1L << (FLOAT_INFINITY - 251)) | (1L << (DOUBLE_INFINITY - 251)) | (1L << (BASE_FLOAT - 251)) | (1L << (BASE_DOUBLE - 251)) | (1L << (CHAR - 251)) | (1L << (LONG - 251)) | (1L << (SHORT - 251)) | (1L << (BYTE - 251)) | (1L << (INT - 251)) | (1L << (BOOLEAN - 251)) | (1L << (STRING - 251)) | (1L << (OBJECT_TYPE - 251)) | (1L << (ARRAY_TYPE - 251)) | (1L << (PRIMITIVE_TYPE - 251)) | (1L << (NULL - 251)) | (1L << (DENUM - 251)))) != 0) );
setState(392);
match(T__37);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class F0xContext extends ParserRuleContext {
public Token op;
public TerminalNode NOP() { return getToken(SmaliParser.NOP, 0); }
public F0xContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_f0x; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitF0x(this);
else return visitor.visitChildren(this);
}
}
public final F0xContext f0x() throws RecognitionException {
F0xContext _localctx = new F0xContext(_ctx, getState());
enterRule(_localctx, 60, RULE_f0x);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(394);
((F0xContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(_la==T__38 || _la==NOP) ) {
((F0xContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class F0tContext extends ParserRuleContext {
public Token op;
public Token target;
public TerminalNode LABEL() { return getToken(SmaliParser.LABEL, 0); }
public TerminalNode GOTO() { return getToken(SmaliParser.GOTO, 0); }
public F0tContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_f0t; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitF0t(this);
else return visitor.visitChildren(this);
}
}
public final F0tContext f0t() throws RecognitionException {
F0tContext _localctx = new F0tContext(_ctx, getState());
enterRule(_localctx, 62, RULE_f0t);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(396);
((F0tContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(_la==T__39 || _la==T__40 || _la==GOTO) ) {
((F0tContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(397);
((F0tContext)_localctx).target = match(LABEL);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class F1xContext extends ParserRuleContext {
public Token op;
public Token r1;
public TerminalNode REGISTER() { return getToken(SmaliParser.REGISTER, 0); }
public TerminalNode RETURN() { return getToken(SmaliParser.RETURN, 0); }
public TerminalNode THROW() { return getToken(SmaliParser.THROW, 0); }
public F1xContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_f1x; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitF1x(this);
else return visitor.visitChildren(this);
}
}
public final F1xContext f1x() throws RecognitionException {
F1xContext _localctx = new F1xContext(_ctx, getState());
enterRule(_localctx, 64, RULE_f1x);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(399);
((F1xContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__41) | (1L << T__42) | (1L << T__43) | (1L << T__44) | (1L << T__45) | (1L << T__46) | (1L << T__47) | (1L << T__48))) != 0) || _la==RETURN || _la==THROW) ) {
((F1xContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(400);
((F1xContext)_localctx).r1 = match(REGISTER);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FconstContext extends ParserRuleContext {
public Token op;
public Token r1;
public Token cst;
public TerminalNode REGISTER() { return getToken(SmaliParser.REGISTER, 0); }
public TerminalNode CONST() { return getToken(SmaliParser.CONST, 0); }
public TerminalNode INT() { return getToken(SmaliParser.INT, 0); }
public TerminalNode LONG() { return getToken(SmaliParser.LONG, 0); }
public TerminalNode STRING() { return getToken(SmaliParser.STRING, 0); }
public TerminalNode OBJECT_TYPE() { return getToken(SmaliParser.OBJECT_TYPE, 0); }
public TerminalNode ARRAY_TYPE() { return getToken(SmaliParser.ARRAY_TYPE, 0); }
public FconstContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fconst; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFconst(this);
else return visitor.visitChildren(this);
}
}
public final FconstContext fconst() throws RecognitionException {
FconstContext _localctx = new FconstContext(_ctx, getState());
enterRule(_localctx, 66, RULE_fconst);
int _la;
try {
setState(414);
switch (_input.LA(1)) {
case T__49:
case T__50:
case T__51:
case T__52:
case T__53:
case T__54:
case T__55:
case CONST:
enterOuterAlt(_localctx, 1);
{
setState(402);
((FconstContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__49) | (1L << T__50) | (1L << T__51) | (1L << T__52) | (1L << T__53) | (1L << T__54) | (1L << T__55))) != 0) || _la==CONST) ) {
((FconstContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(403);
((FconstContext)_localctx).r1 = match(REGISTER);
setState(404);
match(T__15);
setState(405);
((FconstContext)_localctx).cst = _input.LT(1);
_la = _input.LA(1);
if ( !(_la==LONG || _la==INT) ) {
((FconstContext)_localctx).cst = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
}
break;
case T__56:
case T__57:
enterOuterAlt(_localctx, 2);
{
setState(406);
((FconstContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(_la==T__56 || _la==T__57) ) {
((FconstContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(407);
((FconstContext)_localctx).r1 = match(REGISTER);
setState(408);
match(T__15);
setState(409);
((FconstContext)_localctx).cst = match(STRING);
}
break;
case T__58:
case T__59:
case T__60:
enterOuterAlt(_localctx, 3);
{
setState(410);
((FconstContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__58) | (1L << T__59) | (1L << T__60))) != 0)) ) {
((FconstContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(411);
((FconstContext)_localctx).r1 = match(REGISTER);
setState(412);
match(T__15);
setState(413);
((FconstContext)_localctx).cst = _input.LT(1);
_la = _input.LA(1);
if ( !(_la==OBJECT_TYPE || _la==ARRAY_TYPE) ) {
((FconstContext)_localctx).cst = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class Ff1cContext extends ParserRuleContext {
public Token op;
public Token r1;
public Token fld;
public TerminalNode REGISTER() { return getToken(SmaliParser.REGISTER, 0); }
public TerminalNode FIELD_FULL() { return getToken(SmaliParser.FIELD_FULL, 0); }
public TerminalNode SGET() { return getToken(SmaliParser.SGET, 0); }
public TerminalNode SPUT() { return getToken(SmaliParser.SPUT, 0); }
public Ff1cContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_ff1c; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFf1c(this);
else return visitor.visitChildren(this);
}
}
public final Ff1cContext ff1c() throws RecognitionException {
Ff1cContext _localctx = new Ff1cContext(_ctx, getState());
enterRule(_localctx, 68, RULE_ff1c);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(416);
((Ff1cContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(((((_la - 62)) & ~0x3f) == 0 && ((1L << (_la - 62)) & ((1L << (T__61 - 62)) | (1L << (T__62 - 62)) | (1L << (T__63 - 62)) | (1L << (T__64 - 62)) | (1L << (T__65 - 62)) | (1L << (T__66 - 62)) | (1L << (T__67 - 62)) | (1L << (T__68 - 62)) | (1L << (T__69 - 62)) | (1L << (T__70 - 62)) | (1L << (T__71 - 62)) | (1L << (T__72 - 62)))) != 0) || _la==SGET || _la==SPUT) ) {
((Ff1cContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(417);
((Ff1cContext)_localctx).r1 = match(REGISTER);
setState(418);
match(T__15);
setState(419);
((Ff1cContext)_localctx).fld = match(FIELD_FULL);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class Ft2cContext extends ParserRuleContext {
public Token op;
public Token r1;
public Token r2;
public Token type;
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public TerminalNode OBJECT_TYPE() { return getToken(SmaliParser.OBJECT_TYPE, 0); }
public TerminalNode ARRAY_TYPE() { return getToken(SmaliParser.ARRAY_TYPE, 0); }
public Ft2cContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_ft2c; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFt2c(this);
else return visitor.visitChildren(this);
}
}
public final Ft2cContext ft2c() throws RecognitionException {
Ft2cContext _localctx = new Ft2cContext(_ctx, getState());
enterRule(_localctx, 70, RULE_ft2c);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(421);
((Ft2cContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(_la==T__73 || _la==T__74) ) {
((Ft2cContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(422);
((Ft2cContext)_localctx).r1 = match(REGISTER);
setState(423);
match(T__15);
setState(424);
((Ft2cContext)_localctx).r2 = match(REGISTER);
setState(425);
match(T__15);
setState(426);
((Ft2cContext)_localctx).type = _input.LT(1);
_la = _input.LA(1);
if ( !(_la==OBJECT_TYPE || _la==ARRAY_TYPE) ) {
((Ft2cContext)_localctx).type = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class Ff2cContext extends ParserRuleContext {
public Token op;
public Token r1;
public Token r2;
public Token fld;
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public TerminalNode FIELD_FULL() { return getToken(SmaliParser.FIELD_FULL, 0); }
public TerminalNode IGET() { return getToken(SmaliParser.IGET, 0); }
public TerminalNode IPUT() { return getToken(SmaliParser.IPUT, 0); }
public Ff2cContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_ff2c; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFf2c(this);
else return visitor.visitChildren(this);
}
}
public final Ff2cContext ff2c() throws RecognitionException {
Ff2cContext _localctx = new Ff2cContext(_ctx, getState());
enterRule(_localctx, 72, RULE_ff2c);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(428);
((Ff2cContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(((((_la - 76)) & ~0x3f) == 0 && ((1L << (_la - 76)) & ((1L << (T__75 - 76)) | (1L << (T__76 - 76)) | (1L << (T__77 - 76)) | (1L << (T__78 - 76)) | (1L << (T__79 - 76)) | (1L << (T__80 - 76)) | (1L << (T__81 - 76)) | (1L << (T__82 - 76)) | (1L << (T__83 - 76)) | (1L << (T__84 - 76)) | (1L << (T__85 - 76)) | (1L << (T__86 - 76)))) != 0) || _la==IGET || _la==IPUT) ) {
((Ff2cContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(429);
((Ff2cContext)_localctx).r1 = match(REGISTER);
setState(430);
match(T__15);
setState(431);
((Ff2cContext)_localctx).r2 = match(REGISTER);
setState(432);
match(T__15);
setState(433);
((Ff2cContext)_localctx).fld = match(FIELD_FULL);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class F2xContext extends ParserRuleContext {
public Token op;
public Token r1;
public Token r2;
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public TerminalNode MOVE() { return getToken(SmaliParser.MOVE, 0); }
public F2xContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_f2x; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitF2x(this);
else return visitor.visitChildren(this);
}
}
public final F2xContext f2x() throws RecognitionException {
F2xContext _localctx = new F2xContext(_ctx, getState());
enterRule(_localctx, 74, RULE_f2x);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(435);
((F2xContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(((((_la - 88)) & ~0x3f) == 0 && ((1L << (_la - 88)) & ((1L << (T__87 - 88)) | (1L << (T__88 - 88)) | (1L << (T__89 - 88)) | (1L << (T__90 - 88)) | (1L << (T__91 - 88)) | (1L << (T__92 - 88)) | (1L << (T__93 - 88)) | (1L << (T__94 - 88)) | (1L << (T__95 - 88)) | (1L << (T__96 - 88)) | (1L << (T__97 - 88)) | (1L << (T__98 - 88)) | (1L << (T__99 - 88)) | (1L << (T__100 - 88)) | (1L << (T__101 - 88)) | (1L << (T__102 - 88)) | (1L << (T__103 - 88)) | (1L << (T__104 - 88)) | (1L << (T__105 - 88)) | (1L << (T__106 - 88)) | (1L << (T__107 - 88)) | (1L << (T__108 - 88)) | (1L << (T__109 - 88)) | (1L << (T__110 - 88)) | (1L << (T__111 - 88)) | (1L << (T__112 - 88)) | (1L << (T__113 - 88)) | (1L << (T__114 - 88)) | (1L << (T__115 - 88)) | (1L << (T__116 - 88)) | (1L << (T__117 - 88)) | (1L << (T__118 - 88)) | (1L << (T__119 - 88)) | (1L << (T__120 - 88)) | (1L << (T__121 - 88)) | (1L << (T__122 - 88)) | (1L << (T__123 - 88)) | (1L << (T__124 - 88)) | (1L << (T__125 - 88)) | (1L << (T__126 - 88)) | (1L << (T__127 - 88)) | (1L << (T__128 - 88)) | (1L << (T__129 - 88)) | (1L << (T__130 - 88)) | (1L << (T__131 - 88)) | (1L << (T__132 - 88)) | (1L << (T__133 - 88)) | (1L << (T__134 - 88)) | (1L << (T__135 - 88)) | (1L << (T__136 - 88)) | (1L << (T__137 - 88)) | (1L << (T__138 - 88)) | (1L << (T__139 - 88)) | (1L << (T__140 - 88)) | (1L << (T__141 - 88)) | (1L << (T__142 - 88)) | (1L << (T__143 - 88)) | (1L << (T__144 - 88)) | (1L << (T__145 - 88)) | (1L << (T__146 - 88)) | (1L << (T__147 - 88)) | (1L << (T__148 - 88)))) != 0) || _la==MOVE) ) {
((F2xContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(436);
((F2xContext)_localctx).r1 = match(REGISTER);
setState(437);
match(T__15);
setState(438);
((F2xContext)_localctx).r2 = match(REGISTER);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class F3xContext extends ParserRuleContext {
public Token op;
public Token r1;
public Token r2;
public Token r3;
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public TerminalNode AGET() { return getToken(SmaliParser.AGET, 0); }
public TerminalNode APUT() { return getToken(SmaliParser.APUT, 0); }
public F3xContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_f3x; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitF3x(this);
else return visitor.visitChildren(this);
}
}
public final F3xContext f3x() throws RecognitionException {
F3xContext _localctx = new F3xContext(_ctx, getState());
enterRule(_localctx, 76, RULE_f3x);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(440);
((F3xContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(((((_la - 150)) & ~0x3f) == 0 && ((1L << (_la - 150)) & ((1L << (T__149 - 150)) | (1L << (T__150 - 150)) | (1L << (T__151 - 150)) | (1L << (T__152 - 150)) | (1L << (T__153 - 150)) | (1L << (T__154 - 150)) | (1L << (T__155 - 150)) | (1L << (T__156 - 150)) | (1L << (T__157 - 150)) | (1L << (T__158 - 150)) | (1L << (T__159 - 150)) | (1L << (T__160 - 150)) | (1L << (T__161 - 150)) | (1L << (T__162 - 150)) | (1L << (T__163 - 150)) | (1L << (T__164 - 150)) | (1L << (T__165 - 150)) | (1L << (T__166 - 150)) | (1L << (T__167 - 150)) | (1L << (T__168 - 150)) | (1L << (T__169 - 150)) | (1L << (T__170 - 150)) | (1L << (T__171 - 150)) | (1L << (T__172 - 150)) | (1L << (T__173 - 150)) | (1L << (T__174 - 150)) | (1L << (T__175 - 150)) | (1L << (T__176 - 150)) | (1L << (T__177 - 150)) | (1L << (T__178 - 150)) | (1L << (T__179 - 150)) | (1L << (T__180 - 150)) | (1L << (T__181 - 150)) | (1L << (T__182 - 150)) | (1L << (T__183 - 150)) | (1L << (T__184 - 150)) | (1L << (T__185 - 150)) | (1L << (T__186 - 150)) | (1L << (T__187 - 150)) | (1L << (T__188 - 150)) | (1L << (T__189 - 150)) | (1L << (T__190 - 150)) | (1L << (T__191 - 150)) | (1L << (T__192 - 150)) | (1L << (T__193 - 150)) | (1L << (T__194 - 150)) | (1L << (T__195 - 150)) | (1L << (T__196 - 150)) | (1L << (T__197 - 150)))) != 0) || _la==AGET || _la==APUT) ) {
((F3xContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(441);
((F3xContext)_localctx).r1 = match(REGISTER);
setState(442);
match(T__15);
setState(443);
((F3xContext)_localctx).r2 = match(REGISTER);
setState(444);
match(T__15);
setState(445);
((F3xContext)_localctx).r3 = match(REGISTER);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class Ft5cContext extends ParserRuleContext {
public Token op;
public Token type;
public TerminalNode ARRAY_TYPE() { return getToken(SmaliParser.ARRAY_TYPE, 0); }
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public Ft5cContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_ft5c; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFt5c(this);
else return visitor.visitChildren(this);
}
}
public final Ft5cContext ft5c() throws RecognitionException {
Ft5cContext _localctx = new Ft5cContext(_ctx, getState());
enterRule(_localctx, 78, RULE_ft5c);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(447);
((Ft5cContext)_localctx).op = match(T__198);
setState(448);
match(T__23);
setState(457);
_la = _input.LA(1);
if (_la==REGISTER) {
{
setState(449);
match(REGISTER);
setState(454);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__15) {
{
{
setState(450);
match(T__15);
setState(451);
match(REGISTER);
}
}
setState(456);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
}
setState(459);
match(T__24);
setState(460);
match(T__15);
setState(461);
((Ft5cContext)_localctx).type = match(ARRAY_TYPE);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class Fm5cContext extends ParserRuleContext {
public Token op;
public Token method;
public TerminalNode METHOD_FULL() { return getToken(SmaliParser.METHOD_FULL, 0); }
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public Fm5cContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fm5c; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFm5c(this);
else return visitor.visitChildren(this);
}
}
public final Fm5cContext fm5c() throws RecognitionException {
Fm5cContext _localctx = new Fm5cContext(_ctx, getState());
enterRule(_localctx, 80, RULE_fm5c);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(463);
((Fm5cContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(((((_la - 200)) & ~0x3f) == 0 && ((1L << (_la - 200)) & ((1L << (T__199 - 200)) | (1L << (T__200 - 200)) | (1L << (T__201 - 200)) | (1L << (T__202 - 200)) | (1L << (T__203 - 200)))) != 0)) ) {
((Fm5cContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(464);
match(T__23);
setState(473);
_la = _input.LA(1);
if (_la==REGISTER) {
{
setState(465);
match(REGISTER);
setState(470);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__15) {
{
{
setState(466);
match(T__15);
setState(467);
match(REGISTER);
}
}
setState(472);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
}
setState(475);
match(T__24);
setState(476);
match(T__15);
setState(477);
((Fm5cContext)_localctx).method = match(METHOD_FULL);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FmrcContext extends ParserRuleContext {
public Token op;
public Token rstart;
public Token rend;
public Token method;
public TerminalNode METHOD_FULL() { return getToken(SmaliParser.METHOD_FULL, 0); }
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public FmrcContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fmrc; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFmrc(this);
else return visitor.visitChildren(this);
}
}
public final FmrcContext fmrc() throws RecognitionException {
FmrcContext _localctx = new FmrcContext(_ctx, getState());
enterRule(_localctx, 82, RULE_fmrc);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(479);
((FmrcContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(((((_la - 205)) & ~0x3f) == 0 && ((1L << (_la - 205)) & ((1L << (T__204 - 205)) | (1L << (T__205 - 205)) | (1L << (T__206 - 205)) | (1L << (T__207 - 205)) | (1L << (T__208 - 205)))) != 0)) ) {
((FmrcContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(480);
match(T__23);
setState(484);
_la = _input.LA(1);
if (_la==REGISTER) {
{
setState(481);
((FmrcContext)_localctx).rstart = match(REGISTER);
setState(482);
match(T__29);
setState(483);
((FmrcContext)_localctx).rend = match(REGISTER);
}
}
setState(486);
match(T__24);
setState(487);
match(T__15);
setState(488);
((FmrcContext)_localctx).method = match(METHOD_FULL);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class Fm45ccContext extends ParserRuleContext {
public Token op;
public Token method;
public Token proto;
public TerminalNode METHOD_FULL() { return getToken(SmaliParser.METHOD_FULL, 0); }
public TerminalNode METHOD_PROTO() { return getToken(SmaliParser.METHOD_PROTO, 0); }
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public Fm45ccContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fm45cc; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFm45cc(this);
else return visitor.visitChildren(this);
}
}
public final Fm45ccContext fm45cc() throws RecognitionException {
Fm45ccContext _localctx = new Fm45ccContext(_ctx, getState());
enterRule(_localctx, 84, RULE_fm45cc);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(490);
((Fm45ccContext)_localctx).op = match(T__209);
setState(491);
match(T__23);
setState(500);
_la = _input.LA(1);
if (_la==REGISTER) {
{
setState(492);
match(REGISTER);
setState(497);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__15) {
{
{
setState(493);
match(T__15);
setState(494);
match(REGISTER);
}
}
setState(499);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
}
setState(502);
match(T__24);
setState(503);
match(T__15);
setState(504);
((Fm45ccContext)_localctx).method = match(METHOD_FULL);
setState(505);
match(T__15);
setState(506);
((Fm45ccContext)_localctx).proto = match(METHOD_PROTO);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class Fm4rccContext extends ParserRuleContext {
public Token op;
public Token rstart;
public Token rend;
public Token method;
public Token proto;
public TerminalNode METHOD_FULL() { return getToken(SmaliParser.METHOD_FULL, 0); }
public TerminalNode METHOD_PROTO() { return getToken(SmaliParser.METHOD_PROTO, 0); }
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public Fm4rccContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fm4rcc; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFm4rcc(this);
else return visitor.visitChildren(this);
}
}
public final Fm4rccContext fm4rcc() throws RecognitionException {
Fm4rccContext _localctx = new Fm4rccContext(_ctx, getState());
enterRule(_localctx, 86, RULE_fm4rcc);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(508);
((Fm4rccContext)_localctx).op = match(T__210);
setState(509);
match(T__23);
setState(513);
_la = _input.LA(1);
if (_la==REGISTER) {
{
setState(510);
((Fm4rccContext)_localctx).rstart = match(REGISTER);
setState(511);
match(T__29);
setState(512);
((Fm4rccContext)_localctx).rend = match(REGISTER);
}
}
setState(515);
match(T__24);
setState(516);
match(T__15);
setState(517);
((Fm4rccContext)_localctx).method = match(METHOD_FULL);
setState(518);
match(T__15);
setState(519);
((Fm4rccContext)_localctx).proto = match(METHOD_PROTO);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FmcustomcContext extends ParserRuleContext {
public Token op;
public SArrayValueContext sArrayValue() {
return getRuleContext(SArrayValueContext.class,0);
}
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public FmcustomcContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fmcustomc; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFmcustomc(this);
else return visitor.visitChildren(this);
}
}
public final FmcustomcContext fmcustomc() throws RecognitionException {
FmcustomcContext _localctx = new FmcustomcContext(_ctx, getState());
enterRule(_localctx, 88, RULE_fmcustomc);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(521);
((FmcustomcContext)_localctx).op = match(T__211);
setState(522);
match(T__23);
setState(531);
_la = _input.LA(1);
if (_la==REGISTER) {
{
setState(523);
match(REGISTER);
setState(528);
_errHandler.sync(this);
_la = _input.LA(1);
while (_la==T__15) {
{
{
setState(524);
match(T__15);
setState(525);
match(REGISTER);
}
}
setState(530);
_errHandler.sync(this);
_la = _input.LA(1);
}
}
}
setState(533);
match(T__24);
setState(534);
match(T__15);
setState(535);
sArrayValue();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FmcustomrcContext extends ParserRuleContext {
public Token op;
public Token rstart;
public Token rend;
public SArrayValueContext sArrayValue() {
return getRuleContext(SArrayValueContext.class,0);
}
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public FmcustomrcContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_fmcustomrc; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFmcustomrc(this);
else return visitor.visitChildren(this);
}
}
public final FmcustomrcContext fmcustomrc() throws RecognitionException {
FmcustomrcContext _localctx = new FmcustomrcContext(_ctx, getState());
enterRule(_localctx, 90, RULE_fmcustomrc);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(537);
((FmcustomrcContext)_localctx).op = match(T__212);
setState(538);
match(T__23);
setState(542);
_la = _input.LA(1);
if (_la==REGISTER) {
{
setState(539);
((FmcustomrcContext)_localctx).rstart = match(REGISTER);
setState(540);
match(T__29);
setState(541);
((FmcustomrcContext)_localctx).rend = match(REGISTER);
}
}
setState(544);
match(T__24);
setState(545);
match(T__15);
setState(546);
sArrayValue();
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class FtrcContext extends ParserRuleContext {
public Token op;
public Token rstart;
public Token rend;
public Token type;
public TerminalNode OBJECT_TYPE() { return getToken(SmaliParser.OBJECT_TYPE, 0); }
public TerminalNode ARRAY_TYPE() { return getToken(SmaliParser.ARRAY_TYPE, 0); }
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public FtrcContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_ftrc; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitFtrc(this);
else return visitor.visitChildren(this);
}
}
public final FtrcContext ftrc() throws RecognitionException {
FtrcContext _localctx = new FtrcContext(_ctx, getState());
enterRule(_localctx, 92, RULE_ftrc);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(548);
((FtrcContext)_localctx).op = match(T__213);
setState(549);
match(T__23);
setState(553);
_la = _input.LA(1);
if (_la==REGISTER) {
{
setState(550);
((FtrcContext)_localctx).rstart = match(REGISTER);
setState(551);
match(T__29);
setState(552);
((FtrcContext)_localctx).rend = match(REGISTER);
}
}
setState(555);
match(T__24);
setState(556);
match(T__15);
setState(557);
((FtrcContext)_localctx).type = _input.LT(1);
_la = _input.LA(1);
if ( !(_la==OBJECT_TYPE || _la==ARRAY_TYPE) ) {
((FtrcContext)_localctx).type = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class F31tContext extends ParserRuleContext {
public Token op;
public Token r1;
public Token label;
public TerminalNode REGISTER() { return getToken(SmaliParser.REGISTER, 0); }
public TerminalNode LABEL() { return getToken(SmaliParser.LABEL, 0); }
public F31tContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_f31t; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitF31t(this);
else return visitor.visitChildren(this);
}
}
public final F31tContext f31t() throws RecognitionException {
F31tContext _localctx = new F31tContext(_ctx, getState());
enterRule(_localctx, 94, RULE_f31t);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(559);
((F31tContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(((((_la - 215)) & ~0x3f) == 0 && ((1L << (_la - 215)) & ((1L << (T__214 - 215)) | (1L << (T__215 - 215)) | (1L << (T__216 - 215)))) != 0)) ) {
((F31tContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(560);
((F31tContext)_localctx).r1 = match(REGISTER);
setState(561);
match(T__15);
setState(562);
((F31tContext)_localctx).label = match(LABEL);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class F1tContext extends ParserRuleContext {
public Token op;
public Token r1;
public Token label;
public TerminalNode REGISTER() { return getToken(SmaliParser.REGISTER, 0); }
public TerminalNode LABEL() { return getToken(SmaliParser.LABEL, 0); }
public F1tContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_f1t; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitF1t(this);
else return visitor.visitChildren(this);
}
}
public final F1tContext f1t() throws RecognitionException {
F1tContext _localctx = new F1tContext(_ctx, getState());
enterRule(_localctx, 96, RULE_f1t);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(564);
((F1tContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(((((_la - 218)) & ~0x3f) == 0 && ((1L << (_la - 218)) & ((1L << (T__217 - 218)) | (1L << (T__218 - 218)) | (1L << (T__219 - 218)) | (1L << (T__220 - 218)) | (1L << (T__221 - 218)) | (1L << (T__222 - 218)))) != 0)) ) {
((F1tContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(565);
((F1tContext)_localctx).r1 = match(REGISTER);
setState(566);
match(T__15);
setState(567);
((F1tContext)_localctx).label = match(LABEL);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class F2tContext extends ParserRuleContext {
public Token op;
public Token r1;
public Token r2;
public Token label;
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public TerminalNode LABEL() { return getToken(SmaliParser.LABEL, 0); }
public F2tContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_f2t; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitF2t(this);
else return visitor.visitChildren(this);
}
}
public final F2tContext f2t() throws RecognitionException {
F2tContext _localctx = new F2tContext(_ctx, getState());
enterRule(_localctx, 98, RULE_f2t);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(569);
((F2tContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(((((_la - 224)) & ~0x3f) == 0 && ((1L << (_la - 224)) & ((1L << (T__223 - 224)) | (1L << (T__224 - 224)) | (1L << (T__225 - 224)) | (1L << (T__226 - 224)) | (1L << (T__227 - 224)) | (1L << (T__228 - 224)))) != 0)) ) {
((F2tContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(570);
((F2tContext)_localctx).r1 = match(REGISTER);
setState(571);
match(T__15);
setState(572);
((F2tContext)_localctx).r2 = match(REGISTER);
setState(573);
match(T__15);
setState(574);
((F2tContext)_localctx).label = match(LABEL);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static class F2sbContext extends ParserRuleContext {
public Token op;
public Token r1;
public Token r2;
public Token lit;
public List REGISTER() { return getTokens(SmaliParser.REGISTER); }
public TerminalNode REGISTER(int i) {
return getToken(SmaliParser.REGISTER, i);
}
public TerminalNode INT() { return getToken(SmaliParser.INT, 0); }
public F2sbContext(ParserRuleContext parent, int invokingState) {
super(parent, invokingState);
}
@Override public int getRuleIndex() { return RULE_f2sb; }
@Override
public T accept(ParseTreeVisitor extends T> visitor) {
if ( visitor instanceof SmaliVisitor ) return ((SmaliVisitor extends T>)visitor).visitF2sb(this);
else return visitor.visitChildren(this);
}
}
public final F2sbContext f2sb() throws RecognitionException {
F2sbContext _localctx = new F2sbContext(_ctx, getState());
enterRule(_localctx, 100, RULE_f2sb);
int _la;
try {
enterOuterAlt(_localctx, 1);
{
setState(576);
((F2sbContext)_localctx).op = _input.LT(1);
_la = _input.LA(1);
if ( !(((((_la - 230)) & ~0x3f) == 0 && ((1L << (_la - 230)) & ((1L << (T__229 - 230)) | (1L << (T__230 - 230)) | (1L << (T__231 - 230)) | (1L << (T__232 - 230)) | (1L << (T__233 - 230)) | (1L << (T__234 - 230)) | (1L << (T__235 - 230)) | (1L << (T__236 - 230)) | (1L << (T__237 - 230)) | (1L << (T__238 - 230)) | (1L << (T__239 - 230)) | (1L << (T__240 - 230)) | (1L << (T__241 - 230)) | (1L << (T__242 - 230)) | (1L << (T__243 - 230)) | (1L << (T__244 - 230)) | (1L << (T__245 - 230)) | (1L << (T__246 - 230)) | (1L << (T__247 - 230)))) != 0)) ) {
((F2sbContext)_localctx).op = (Token)_errHandler.recoverInline(this);
} else {
consume();
}
setState(577);
((F2sbContext)_localctx).r1 = match(REGISTER);
setState(578);
match(T__15);
setState(579);
((F2sbContext)_localctx).r2 = match(REGISTER);
setState(580);
match(T__15);
setState(581);
((F2sbContext)_localctx).lit = match(INT);
}
}
catch (RecognitionException re) {
_localctx.exception = re;
_errHandler.reportError(this, re);
_errHandler.recover(this, re);
}
finally {
exitRule();
}
return _localctx;
}
public static final String _serializedATN =
"\3\u0430\ud6d1\u8206\uad2d\u4417\uaef1\u8d80\uaadd\3\u012f\u024a\4\2\t"+
"\2\4\3\t\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\4\n\t\n\4\13"+
"\t\13\4\f\t\f\4\r\t\r\4\16\t\16\4\17\t\17\4\20\t\20\4\21\t\21\4\22\t\22"+
"\4\23\t\23\4\24\t\24\4\25\t\25\4\26\t\26\4\27\t\27\4\30\t\30\4\31\t\31"+
"\4\32\t\32\4\33\t\33\4\34\t\34\4\35\t\35\4\36\t\36\4\37\t\37\4 \t \4!"+
"\t!\4\"\t\"\4#\t#\4$\t$\4%\t%\4&\t&\4\'\t\'\4(\t(\4)\t)\4*\t*\4+\t+\4"+
",\t,\4-\t-\4.\t.\4/\t/\4\60\t\60\4\61\t\61\4\62\t\62\4\63\t\63\4\64\t"+
"\64\3\2\6\2j\n\2\r\2\16\2k\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\3\7\3w\n"+
"\3\f\3\16\3z\13\3\3\3\5\3}\n\3\3\4\3\4\3\4\3\5\3\5\3\5\3\6\3\6\3\6\3\7"+
"\3\7\3\7\3\7\3\7\3\7\7\7\u008e\n\7\f\7\16\7\u0091\13\7\3\7\3\7\3\b\3\b"+
"\3\b\3\b\3\b\5\b\u009a\n\b\3\b\7\b\u009d\n\b\f\b\16\b\u00a0\13\b\3\b\5"+
"\b\u00a3\n\b\3\t\7\t\u00a6\n\t\f\t\16\t\u00a9\13\t\3\n\3\n\3\n\3\n\3\n"+
"\3\n\3\n\7\n\u00b2\n\n\f\n\16\n\u00b5\13\n\3\n\3\n\3\13\3\13\3\13\3\13"+
"\3\13\3\13\7\13\u00bf\n\13\f\13\16\13\u00c2\13\13\3\13\3\13\3\f\3\f\5"+
"\f\u00c8\n\f\3\f\7\f\u00cb\n\f\f\f\16\f\u00ce\13\f\3\f\5\f\u00d1\n\f\3"+
"\f\3\f\3\f\3\f\5\f\u00d7\n\f\3\f\7\f\u00da\n\f\f\f\16\f\u00dd\13\f\3\f"+
"\5\f\u00e0\n\f\5\f\u00e2\n\f\3\r\3\r\3\16\3\16\3\16\3\16\3\16\3\16\3\16"+
"\5\16\u00ed\n\16\3\17\3\17\3\17\3\17\3\17\3\17\3\17\3\17\3\17\3\17\3\17"+
"\3\17\3\17\3\17\3\17\3\17\3\17\3\17\3\17\3\17\3\17\3\17\5\17\u0105\n\17"+
"\3\20\3\20\5\20\u0109\n\20\3\20\3\20\7\20\u010d\n\20\f\20\16\20\u0110"+
"\13\20\3\20\3\20\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21"+
"\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21"+
"\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\3\21\5\21\u0137\n\21\3\22"+
"\3\22\3\22\3\23\3\23\3\23\3\23\3\23\5\23\u0141\n\23\3\23\3\23\3\23\3\23"+
"\5\23\u0147\n\23\3\23\3\23\5\23\u014b\n\23\3\24\3\24\3\24\3\25\3\25\3"+
"\25\3\26\3\26\3\27\3\27\3\30\3\30\3\30\3\31\3\31\3\31\3\32\3\32\3\32\3"+
"\32\3\32\3\32\3\32\3\32\3\32\3\33\3\33\3\33\3\33\3\33\3\33\3\33\3\33\3"+
"\34\3\34\3\35\3\35\3\35\6\35\u0173\n\35\r\35\16\35\u0174\3\35\3\35\3\36"+
"\3\36\3\36\3\36\7\36\u017d\n\36\f\36\16\36\u0180\13\36\3\36\3\36\3\37"+
"\3\37\3\37\6\37\u0187\n\37\r\37\16\37\u0188\3\37\3\37\3 \3 \3!\3!\3!\3"+
"\"\3\"\3\"\3#\3#\3#\3#\3#\3#\3#\3#\3#\3#\3#\3#\5#\u01a1\n#\3$\3$\3$\3"+
"$\3$\3%\3%\3%\3%\3%\3%\3%\3&\3&\3&\3&\3&\3&\3&\3\'\3\'\3\'\3\'\3\'\3("+
"\3(\3(\3(\3(\3(\3(\3)\3)\3)\3)\3)\7)\u01c7\n)\f)\16)\u01ca\13)\5)\u01cc"+
"\n)\3)\3)\3)\3)\3*\3*\3*\3*\3*\7*\u01d7\n*\f*\16*\u01da\13*\5*\u01dc\n"+
"*\3*\3*\3*\3*\3+\3+\3+\3+\3+\5+\u01e7\n+\3+\3+\3+\3+\3,\3,\3,\3,\3,\7"+
",\u01f2\n,\f,\16,\u01f5\13,\5,\u01f7\n,\3,\3,\3,\3,\3,\3,\3-\3-\3-\3-"+
"\3-\5-\u0204\n-\3-\3-\3-\3-\3-\3-\3.\3.\3.\3.\3.\7.\u0211\n.\f.\16.\u0214"+
"\13.\5.\u0216\n.\3.\3.\3.\3.\3/\3/\3/\3/\3/\5/\u0221\n/\3/\3/\3/\3/\3"+
"\60\3\60\3\60\3\60\3\60\5\60\u022c\n\60\3\60\3\60\3\60\3\60\3\61\3\61"+
"\3\61\3\61\3\61\3\62\3\62\3\62\3\62\3\62\3\63\3\63\3\63\3\63\3\63\3\63"+
"\3\63\3\64\3\64\3\64\3\64\3\64\3\64\3\64\3\64\2\2\65\2\4\6\b\n\f\16\20"+
"\22\24\26\30\32\34\36 \"$&(*,.\60\62\64\668:<>@BDFHJLNPRTVXZ\\^`bdf\2"+
"\33\3\2\u00fe\u00ff\3\2\u0101\u0102\6\2\u00fd\u00fd\u0106\u0109\u0111"+
"\u0111\u0115\u0126\3\2\24\27\3\2\30\31\3\2\u0113\u0115\4\2))\u0119\u0119"+
"\4\2*+\u011e\u011e\5\2,\63\u011b\u011b\u011d\u011d\4\2\64:\u011c\u011c"+
"\4\2\u010d\u010d\u0110\u0110\3\2;<\3\2=?\3\2\u0113\u0114\4\2@K\u0123\u0124"+
"\3\2LM\4\2NY\u0121\u0122\4\2Z\u0097\u011a\u011a\4\2\u0098\u00c8\u011f"+
"\u0120\3\2\u00ca\u00ce\3\2\u00cf\u00d3\3\2\u00d9\u00db\3\2\u00dc\u00e1"+
"\3\2\u00e2\u00e7\3\2\u00e8\u00fa\u027f\2i\3\2\2\2\4m\3\2\2\2\6~\3\2\2"+
"\2\b\u0081\3\2\2\2\n\u0084\3\2\2\2\f\u0087\3\2\2\2\16\u0094\3\2\2\2\20"+
"\u00a7\3\2\2\2\22\u00aa\3\2\2\2\24\u00b8\3\2\2\2\26\u00e1\3\2\2\2\30\u00e3"+
"\3\2\2\2\32\u00ec\3\2\2\2\34\u0104\3\2\2\2\36\u0106\3\2\2\2 \u0136\3\2"+
"\2\2\"\u0138\3\2\2\2$\u013b\3\2\2\2&\u014c\3\2\2\2(\u014f\3\2\2\2*\u0152"+
"\3\2\2\2,\u0154\3\2\2\2.\u0156\3\2\2\2\60\u0159\3\2\2\2\62\u015c\3\2\2"+
"\2\64\u0165\3\2\2\2\66\u016d\3\2\2\28\u016f\3\2\2\2:\u0178\3\2\2\2<\u0183"+
"\3\2\2\2>\u018c\3\2\2\2@\u018e\3\2\2\2B\u0191\3\2\2\2D\u01a0\3\2\2\2F"+
"\u01a2\3\2\2\2H\u01a7\3\2\2\2J\u01ae\3\2\2\2L\u01b5\3\2\2\2N\u01ba\3\2"+
"\2\2P\u01c1\3\2\2\2R\u01d1\3\2\2\2T\u01e1\3\2\2\2V\u01ec\3\2\2\2X\u01fe"+
"\3\2\2\2Z\u020b\3\2\2\2\\\u021b\3\2\2\2^\u0226\3\2\2\2`\u0231\3\2\2\2"+
"b\u0236\3\2\2\2d\u023b\3\2\2\2f\u0242\3\2\2\2hj\5\4\3\2ih\3\2\2\2jk\3"+
"\2\2\2ki\3\2\2\2kl\3\2\2\2l\3\3\2\2\2mn\7\3\2\2no\5\20\t\2ox\7\u0113\2"+
"\2pw\5\b\5\2qw\5\n\6\2rw\5\6\4\2sw\5\f\7\2tw\5\16\b\2uw\5\22\n\2vp\3\2"+
"\2\2vq\3\2\2\2vr\3\2\2\2vs\3\2\2\2vt\3\2\2\2vu\3\2\2\2wz\3\2\2\2xv\3\2"+
"\2\2xy\3\2\2\2y|\3\2\2\2zx\3\2\2\2{}\7\4\2\2|{\3\2\2\2|}\3\2\2\2}\5\3"+
"\2\2\2~\177\7\5\2\2\177\u0080\7\u0112\2\2\u0080\7\3\2\2\2\u0081\u0082"+
"\7\6\2\2\u0082\u0083\7\u0113\2\2\u0083\t\3\2\2\2\u0084\u0085\7\7\2\2\u0085"+
"\u0086\7\u0113\2\2\u0086\13\3\2\2\2\u0087\u0088\7\b\2\2\u0088\u0089\5"+
"\20\t\2\u0089\u008f\t\2\2\2\u008a\u008e\5\22\n\2\u008b\u008e\5\26\f\2"+
"\u008c\u008e\5 \21\2\u008d\u008a\3\2\2\2\u008d\u008b\3\2\2\2\u008d\u008c"+
"\3\2\2\2\u008e\u0091\3\2\2\2\u008f\u008d\3\2\2\2\u008f\u0090\3\2\2\2\u0090"+
"\u0092\3\2\2\2\u0091\u008f\3\2\2\2\u0092\u0093\7\t\2\2\u0093\r\3\2\2\2"+
"\u0094\u0095\7\n\2\2\u0095\u0096\5\20\t\2\u0096\u0099\t\3\2\2\u0097\u0098"+
"\7\13\2\2\u0098\u009a\5\34\17\2\u0099\u0097\3\2\2\2\u0099\u009a\3\2\2"+
"\2\u009a\u00a2\3\2\2\2\u009b\u009d\5\22\n\2\u009c\u009b\3\2\2\2\u009d"+
"\u00a0\3\2\2\2\u009e\u009c\3\2\2\2\u009e\u009f\3\2\2\2\u009f\u00a1\3\2"+
"\2\2\u00a0\u009e\3\2\2\2\u00a1\u00a3\7\f\2\2\u00a2\u009e\3\2\2\2\u00a2"+
"\u00a3\3\2\2\2\u00a3\17\3\2\2\2\u00a4\u00a6\7\u0116\2\2\u00a5\u00a4\3"+
"\2\2\2\u00a6\u00a9\3\2\2\2\u00a7\u00a5\3\2\2\2\u00a7\u00a8\3\2\2\2\u00a8"+
"\21\3\2\2\2\u00a9\u00a7\3\2\2\2\u00aa\u00ab\7\r\2\2\u00ab\u00ac\7\u0117"+
"\2\2\u00ac\u00b3\7\u0113\2\2\u00ad\u00ae\5\30\r\2\u00ae\u00af\7\13\2\2"+
"\u00af\u00b0\5\32\16\2\u00b0\u00b2\3\2\2\2\u00b1\u00ad\3\2\2\2\u00b2\u00b5"+
"\3\2\2\2\u00b3\u00b1\3\2\2\2\u00b3\u00b4\3\2\2\2\u00b4\u00b6\3\2\2\2\u00b5"+
"\u00b3\3\2\2\2\u00b6\u00b7\7\16\2\2\u00b7\23\3\2\2\2\u00b8\u00b9\7\17"+
"\2\2\u00b9\u00c0\7\u0113\2\2\u00ba\u00bb\5\30\r\2\u00bb\u00bc\7\13\2\2"+
"\u00bc\u00bd\5\32\16\2\u00bd\u00bf\3\2\2\2\u00be\u00ba\3\2\2\2\u00bf\u00c2"+
"\3\2\2\2\u00c0\u00be\3\2\2\2\u00c0\u00c1\3\2\2\2\u00c1\u00c3\3\2\2\2\u00c2"+
"\u00c0\3\2\2\2\u00c3\u00c4\7\20\2\2\u00c4\25\3\2\2\2\u00c5\u00c7\7\u0127"+
"\2\2\u00c6\u00c8\7\u0112\2\2\u00c7\u00c6\3\2\2\2\u00c7\u00c8\3\2\2\2\u00c8"+
"\u00d0\3\2\2\2\u00c9\u00cb\5\22\n\2\u00ca\u00c9\3\2\2\2\u00cb\u00ce\3"+
"\2\2\2\u00cc\u00ca\3\2\2\2\u00cc\u00cd\3\2\2\2\u00cd\u00cf\3\2\2\2\u00ce"+
"\u00cc\3\2\2\2\u00cf\u00d1\7\21\2\2\u00d0\u00cc\3\2\2\2\u00d0\u00d1\3"+
"\2\2\2\u00d1\u00e2\3\2\2\2\u00d2\u00d3\7\u0129\2\2\u00d3\u00d6\7\u0118"+
"\2\2\u00d4\u00d5\7\22\2\2\u00d5\u00d7\7\u0112\2\2\u00d6\u00d4\3\2\2\2"+
"\u00d6\u00d7\3\2\2\2\u00d7\u00df\3\2\2\2\u00d8\u00da\5\22\n\2\u00d9\u00d8"+
"\3\2\2\2\u00da\u00dd\3\2\2\2\u00db\u00d9\3\2\2\2\u00db\u00dc\3\2\2\2\u00dc"+
"\u00de\3\2\2\2\u00dd\u00db\3\2\2\2\u00de\u00e0\7\23\2\2\u00df\u00db\3"+
"\2\2\2\u00df\u00e0\3\2\2\2\u00e0\u00e2\3\2\2\2\u00e1\u00c5\3\2\2\2\u00e1"+
"\u00d2\3\2\2\2\u00e2\27\3\2\2\2\u00e3\u00e4\t\4\2\2\u00e4\31\3\2\2\2\u00e5"+
"\u00ed\5\24\13\2\u00e6\u00ed\5\34\17\2\u00e7\u00ed\5\36\20\2\u00e8\u00e9"+
"\t\5\2\2\u00e9\u00ed\7\u0101\2\2\u00ea\u00eb\t\6\2\2\u00eb\u00ed\7\u00fe"+
"\2\2\u00ec\u00e5\3\2\2\2\u00ec\u00e6\3\2\2\2\u00ec\u00e7\3\2\2\2\u00ec"+
"\u00e8\3\2\2\2\u00ec\u00ea\3\2\2\2\u00ed\33\3\2\2\2\u00ee\u0105\7\u0112"+
"\2\2\u00ef\u0105\7\u0111\2\2\u00f0\u0105\7\u010f\2\2\u00f1\u0105\7\u010e"+
"\2\2\u00f2\u0105\7\u010c\2\2\u00f3\u0105\7\u0110\2\2\u00f4\u0105\7\u010d"+
"\2\2\u00f5\u0105\7\u010a\2\2\u00f6\u0105\7\u0108\2\2\u00f7\u0105\7\u0106"+
"\2\2\u00f8\u0105\7\u010b\2\2\u00f9\u0105\7\u0109\2\2\u00fa\u0105\7\u0107"+
"\2\2\u00fb\u0105\7\u00fe\2\2\u00fc\u0105\7\u0100\2\2\u00fd\u0105\7\u0113"+
"\2\2\u00fe\u0105\7\u0114\2\2\u00ff\u0105\7\u0115\2\2\u0100\u0105\7\u00fd"+
"\2\2\u0101\u0105\7\u0125\2\2\u0102\u0103\7\u0128\2\2\u0103\u0105\7\u0101"+
"\2\2\u0104\u00ee\3\2\2\2\u0104\u00ef\3\2\2\2\u0104\u00f0\3\2\2\2\u0104"+
"\u00f1\3\2\2\2\u0104\u00f2\3\2\2\2\u0104\u00f3\3\2\2\2\u0104\u00f4\3\2"+
"\2\2\u0104\u00f5\3\2\2\2\u0104\u00f6\3\2\2\2\u0104\u00f7\3\2\2\2\u0104"+
"\u00f8\3\2\2\2\u0104\u00f9\3\2\2\2\u0104\u00fa\3\2\2\2\u0104\u00fb\3\2"+
"\2\2\u0104\u00fc\3\2\2\2\u0104\u00fd\3\2\2\2\u0104\u00fe\3\2\2\2\u0104"+
"\u00ff\3\2\2\2\u0104\u0100\3\2\2\2\u0104\u0101\3\2\2\2\u0104\u0102\3\2"+
"\2\2\u0105\35\3\2\2\2\u0106\u0108\7\32\2\2\u0107\u0109\5\32\16\2\u0108"+
"\u0107\3\2\2\2\u0108\u0109\3\2\2\2\u0109\u010e\3\2\2\2\u010a\u010b\7\22"+
"\2\2\u010b\u010d\5\32\16\2\u010c\u010a\3\2\2\2\u010d\u0110\3\2\2\2\u010e"+
"\u010c\3\2\2\2\u010e\u010f\3\2\2\2\u010f\u0111\3\2\2\2\u0110\u010e\3\2"+
"\2\2\u0111\u0112\7\33\2\2\u0112\37\3\2\2\2\u0113\u0137\5\"\22\2\u0114"+
"\u0137\5$\23\2\u0115\u0137\5&\24\2\u0116\u0137\5(\25\2\u0117\u0137\5*"+
"\26\2\u0118\u0137\5,\27\2\u0119\u0137\5.\30\2\u011a\u0137\5\60\31\2\u011b"+
"\u0137\5\62\32\2\u011c\u0137\5\64\33\2\u011d\u0137\5> \2\u011e\u0137\5"+
"@!\2\u011f\u0137\5b\62\2\u0120\u0137\5d\63\2\u0121\u0137\5B\"\2\u0122"+
"\u0137\5D#\2\u0123\u0137\5H%\2\u0124\u0137\5F$\2\u0125\u0137\5J&\2\u0126"+
"\u0137\5L\'\2\u0127\u0137\5N(\2\u0128\u0137\5P)\2\u0129\u0137\5R*\2\u012a"+
"\u0137\5T+\2\u012b\u0137\5V,\2\u012c\u0137\5X-\2\u012d\u0137\5Z.\2\u012e"+
"\u0137\5\\/\2\u012f\u0137\5^\60\2\u0130\u0137\5\66\34\2\u0131\u0137\5"+
"f\64\2\u0132\u0137\5`\61\2\u0133\u0137\58\35\2\u0134\u0137\5:\36\2\u0135"+
"\u0137\5<\37\2\u0136\u0113\3\2\2\2\u0136\u0114\3\2\2\2\u0136\u0115\3\2"+
"\2\2\u0136\u0116\3\2\2\2\u0136\u0117\3\2\2\2\u0136\u0118\3\2\2\2\u0136"+
"\u0119\3\2\2\2\u0136\u011a\3\2\2\2\u0136\u011b\3\2\2\2\u0136\u011c\3\2"+
"\2\2\u0136\u011d\3\2\2\2\u0136\u011e\3\2\2\2\u0136\u011f\3\2\2\2\u0136"+
"\u0120\3\2\2\2\u0136\u0121\3\2\2\2\u0136\u0122\3\2\2\2\u0136\u0123\3\2"+
"\2\2\u0136\u0124\3\2\2\2\u0136\u0125\3\2\2\2\u0136\u0126\3\2\2\2\u0136"+
"\u0127\3\2\2\2\u0136\u0128\3\2\2\2\u0136\u0129\3\2\2\2\u0136\u012a\3\2"+
"\2\2\u0136\u012b\3\2\2\2\u0136\u012c\3\2\2\2\u0136\u012d\3\2\2\2\u0136"+
"\u012e\3\2\2\2\u0136\u012f\3\2\2\2\u0136\u0130\3\2\2\2\u0136\u0131\3\2"+
"\2\2\u0136\u0132\3\2\2\2\u0136\u0133\3\2\2\2\u0136\u0134\3\2\2\2\u0136"+
"\u0135\3\2\2\2\u0137!\3\2\2\2\u0138\u0139\7\u012a\2\2\u0139\u013a\7\u0110"+
"\2\2\u013a#\3\2\2\2\u013b\u013c\7\u012b\2\2\u013c\u013d\7\u0118\2\2\u013d"+
"\u0146\7\22\2\2\u013e\u0141\5\30\r\2\u013f\u0141\7\u0112\2\2\u0140\u013e"+
"\3\2\2\2\u0140\u013f\3\2\2\2\u0141\u0142\3\2\2\2\u0142\u0143\7\34\2\2"+
"\u0143\u0147\t\7\2\2\u0144\u0147\7\u0102\2\2\u0145\u0147\7\u0104\2\2\u0146"+
"\u0140\3\2\2\2\u0146\u0144\3\2\2\2\u0146\u0145\3\2\2\2\u0147\u014a\3\2"+
"\2\2\u0148\u0149\7\22\2\2\u0149\u014b\7\u0112\2\2\u014a\u0148\3\2\2\2"+
"\u014a\u014b\3\2\2\2\u014b%\3\2\2\2\u014c\u014d\7\u012c\2\2\u014d\u014e"+
"\7\u0118\2\2\u014e\'\3\2\2\2\u014f\u0150\7\u012d\2\2\u0150\u0151\7\u0118"+
"\2\2\u0151)\3\2\2\2\u0152\u0153\7\u012e\2\2\u0153+\3\2\2\2\u0154\u0155"+
"\7\u012f\2\2\u0155-\3\2\2\2\u0156\u0157\7\35\2\2\u0157\u0158\7\u0110\2"+
"\2\u0158/\3\2\2\2\u0159\u015a\7\36\2\2\u015a\u015b\7\u0110\2\2\u015b\61"+
"\3\2\2\2\u015c\u015d\7\37\2\2\u015d\u015e\7\u0113\2\2\u015e\u015f\7\32"+
"\2\2\u015f\u0160\7\u0103\2\2\u0160\u0161\7 \2\2\u0161\u0162\7\u0103\2"+
"\2\u0162\u0163\7\33\2\2\u0163\u0164\7\u0103\2\2\u0164\63\3\2\2\2\u0165"+
"\u0166\7!\2\2\u0166\u0167\7\32\2\2\u0167\u0168\7\u0103\2\2\u0168\u0169"+
"\7 \2\2\u0169\u016a\7\u0103\2\2\u016a\u016b\7\33\2\2\u016b\u016c\7\u0103"+
"\2\2\u016c\65\3\2\2\2\u016d\u016e\7\u0103\2\2\u016e\67\3\2\2\2\u016f\u0170"+
"\7\"\2\2\u0170\u0172\7\u0110\2\2\u0171\u0173\7\u0103\2\2\u0172\u0171\3"+
"\2\2\2\u0173\u0174\3\2\2\2\u0174\u0172\3\2\2\2\u0174\u0175\3\2\2\2\u0175"+
"\u0176\3\2\2\2\u0176\u0177\7#\2\2\u01779\3\2\2\2\u0178\u017e\7$\2\2\u0179"+
"\u017a\7\u0110\2\2\u017a\u017b\7%\2\2\u017b\u017d\7\u0103\2\2\u017c\u0179"+
"\3\2\2\2\u017d\u0180\3\2\2\2\u017e\u017c\3\2\2\2\u017e\u017f\3\2\2\2\u017f"+
"\u0181\3\2\2\2\u0180\u017e\3\2\2\2\u0181\u0182\7&\2\2\u0182;\3\2\2\2\u0183"+
"\u0184\7\'\2\2\u0184\u0186\7\u0110\2\2\u0185\u0187\5\34\17\2\u0186\u0185"+
"\3\2\2\2\u0187\u0188\3\2\2\2\u0188\u0186\3\2\2\2\u0188\u0189\3\2\2\2\u0189"+
"\u018a\3\2\2\2\u018a\u018b\7(\2\2\u018b=\3\2\2\2\u018c\u018d\t\b\2\2\u018d"+
"?\3\2\2\2\u018e\u018f\t\t\2\2\u018f\u0190\7\u0103\2\2\u0190A\3\2\2\2\u0191"+
"\u0192\t\n\2\2\u0192\u0193\7\u0118\2\2\u0193C\3\2\2\2\u0194\u0195\t\13"+
"\2\2\u0195\u0196\7\u0118\2\2\u0196\u0197\7\22\2\2\u0197\u01a1\t\f\2\2"+
"\u0198\u0199\t\r\2\2\u0199\u019a\7\u0118\2\2\u019a\u019b\7\22\2\2\u019b"+
"\u01a1\7\u0112\2\2\u019c\u019d\t\16\2\2\u019d\u019e\7\u0118\2\2\u019e"+
"\u019f\7\22\2\2\u019f\u01a1\t\17\2\2\u01a0\u0194\3\2\2\2\u01a0\u0198\3"+
"\2\2\2\u01a0\u019c\3\2\2\2\u01a1E\3\2\2\2\u01a2\u01a3\t\20\2\2\u01a3\u01a4"+
"\7\u0118\2\2\u01a4\u01a5\7\22\2\2\u01a5\u01a6\7\u0101\2\2\u01a6G\3\2\2"+
"\2\u01a7\u01a8\t\21\2\2\u01a8\u01a9\7\u0118\2\2\u01a9\u01aa\7\22\2\2\u01aa"+
"\u01ab\7\u0118\2\2\u01ab\u01ac\7\22\2\2\u01ac\u01ad\t\17\2\2\u01adI\3"+
"\2\2\2\u01ae\u01af\t\22\2\2\u01af\u01b0\7\u0118\2\2\u01b0\u01b1\7\22\2"+
"\2\u01b1\u01b2\7\u0118\2\2\u01b2\u01b3\7\22\2\2\u01b3\u01b4\7\u0101\2"+
"\2\u01b4K\3\2\2\2\u01b5\u01b6\t\23\2\2\u01b6\u01b7\7\u0118\2\2\u01b7\u01b8"+
"\7\22\2\2\u01b8\u01b9\7\u0118\2\2\u01b9M\3\2\2\2\u01ba\u01bb\t\24\2\2"+
"\u01bb\u01bc\7\u0118\2\2\u01bc\u01bd\7\22\2\2\u01bd\u01be\7\u0118\2\2"+
"\u01be\u01bf\7\22\2\2\u01bf\u01c0\7\u0118\2\2\u01c0O\3\2\2\2\u01c1\u01c2"+
"\7\u00c9\2\2\u01c2\u01cb\7\32\2\2\u01c3\u01c8\7\u0118\2\2\u01c4\u01c5"+
"\7\22\2\2\u01c5\u01c7\7\u0118\2\2\u01c6\u01c4\3\2\2\2\u01c7\u01ca\3\2"+
"\2\2\u01c8\u01c6\3\2\2\2\u01c8\u01c9\3\2\2\2\u01c9\u01cc\3\2\2\2\u01ca"+
"\u01c8\3\2\2\2\u01cb\u01c3\3\2\2\2\u01cb\u01cc\3\2\2\2\u01cc\u01cd\3\2"+
"\2\2\u01cd\u01ce\7\33\2\2\u01ce\u01cf\7\22\2\2\u01cf\u01d0\7\u0114\2\2"+
"\u01d0Q\3\2\2\2\u01d1\u01d2\t\25\2\2\u01d2\u01db\7\32\2\2\u01d3\u01d8"+
"\7\u0118\2\2\u01d4\u01d5\7\22\2\2\u01d5\u01d7\7\u0118\2\2\u01d6\u01d4"+
"\3\2\2\2\u01d7\u01da\3\2\2\2\u01d8\u01d6\3\2\2\2\u01d8\u01d9\3\2\2\2\u01d9"+
"\u01dc\3\2\2\2\u01da\u01d8\3\2\2\2\u01db\u01d3\3\2\2\2\u01db\u01dc\3\2"+
"\2\2\u01dc\u01dd\3\2\2\2\u01dd\u01de\7\33\2\2\u01de\u01df\7\22\2\2\u01df"+
"\u01e0\7\u00fe\2\2\u01e0S\3\2\2\2\u01e1\u01e2\t\26\2\2\u01e2\u01e6\7\32"+
"\2\2\u01e3\u01e4\7\u0118\2\2\u01e4\u01e5\7 \2\2\u01e5\u01e7\7\u0118\2"+
"\2\u01e6\u01e3\3\2\2\2\u01e6\u01e7\3\2\2\2\u01e7\u01e8\3\2\2\2\u01e8\u01e9"+
"\7\33\2\2\u01e9\u01ea\7\22\2\2\u01ea\u01eb\7\u00fe\2\2\u01ebU\3\2\2\2"+
"\u01ec\u01ed\7\u00d4\2\2\u01ed\u01f6\7\32\2\2\u01ee\u01f3\7\u0118\2\2"+
"\u01ef\u01f0\7\22\2\2\u01f0\u01f2\7\u0118\2\2\u01f1\u01ef\3\2\2\2\u01f2"+
"\u01f5\3\2\2\2\u01f3\u01f1\3\2\2\2\u01f3\u01f4\3\2\2\2\u01f4\u01f7\3\2"+
"\2\2\u01f5\u01f3\3\2\2\2\u01f6\u01ee\3\2\2\2\u01f6\u01f7\3\2\2\2\u01f7"+
"\u01f8\3\2\2\2\u01f8\u01f9\7\33\2\2\u01f9\u01fa\7\22\2\2\u01fa\u01fb\7"+
"\u00fe\2\2\u01fb\u01fc\7\22\2\2\u01fc\u01fd\7\u0100\2\2\u01fdW\3\2\2\2"+
"\u01fe\u01ff\7\u00d5\2\2\u01ff\u0203\7\32\2\2\u0200\u0201\7\u0118\2\2"+
"\u0201\u0202\7 \2\2\u0202\u0204\7\u0118\2\2\u0203\u0200\3\2\2\2\u0203"+
"\u0204\3\2\2\2\u0204\u0205\3\2\2\2\u0205\u0206\7\33\2\2\u0206\u0207\7"+
"\22\2\2\u0207\u0208\7\u00fe\2\2\u0208\u0209\7\22\2\2\u0209\u020a\7\u0100"+
"\2\2\u020aY\3\2\2\2\u020b\u020c\7\u00d6\2\2\u020c\u0215\7\32\2\2\u020d"+
"\u0212\7\u0118\2\2\u020e\u020f\7\22\2\2\u020f\u0211\7\u0118\2\2\u0210"+
"\u020e\3\2\2\2\u0211\u0214\3\2\2\2\u0212\u0210\3\2\2\2\u0212\u0213\3\2"+
"\2\2\u0213\u0216\3\2\2\2\u0214\u0212\3\2\2\2\u0215\u020d\3\2\2\2\u0215"+
"\u0216\3\2\2\2\u0216\u0217\3\2\2\2\u0217\u0218\7\33\2\2\u0218\u0219\7"+
"\22\2\2\u0219\u021a\5\36\20\2\u021a[\3\2\2\2\u021b\u021c\7\u00d7\2\2\u021c"+
"\u0220\7\32\2\2\u021d\u021e\7\u0118\2\2\u021e\u021f\7 \2\2\u021f\u0221"+
"\7\u0118\2\2\u0220\u021d\3\2\2\2\u0220\u0221\3\2\2\2\u0221\u0222\3\2\2"+
"\2\u0222\u0223\7\33\2\2\u0223\u0224\7\22\2\2\u0224\u0225\5\36\20\2\u0225"+
"]\3\2\2\2\u0226\u0227\7\u00d8\2\2\u0227\u022b\7\32\2\2\u0228\u0229\7\u0118"+
"\2\2\u0229\u022a\7 \2\2\u022a\u022c\7\u0118\2\2\u022b\u0228\3\2\2\2\u022b"+
"\u022c\3\2\2\2\u022c\u022d\3\2\2\2\u022d\u022e\7\33\2\2\u022e\u022f\7"+
"\22\2\2\u022f\u0230\t\17\2\2\u0230_\3\2\2\2\u0231\u0232\t\27\2\2\u0232"+
"\u0233\7\u0118\2\2\u0233\u0234\7\22\2\2\u0234\u0235\7\u0103\2\2\u0235"+
"a\3\2\2\2\u0236\u0237\t\30\2\2\u0237\u0238\7\u0118\2\2\u0238\u0239\7\22"+
"\2\2\u0239\u023a\7\u0103\2\2\u023ac\3\2\2\2\u023b\u023c\t\31\2\2\u023c"+
"\u023d\7\u0118\2\2\u023d\u023e\7\22\2\2\u023e\u023f\7\u0118\2\2\u023f"+
"\u0240\7\22\2\2\u0240\u0241\7\u0103\2\2\u0241e\3\2\2\2\u0242\u0243\t\32"+
"\2\2\u0243\u0244\7\u0118\2\2\u0244\u0245\7\22\2\2\u0245\u0246\7\u0118"+
"\2\2\u0246\u0247\7\22\2\2\u0247\u0248\7\u0110\2\2\u0248g\3\2\2\2-kvx|"+
"\u008d\u008f\u0099\u009e\u00a2\u00a7\u00b3\u00c0\u00c7\u00cc\u00d0\u00d6"+
"\u00db\u00df\u00e1\u00ec\u0104\u0108\u010e\u0136\u0140\u0146\u014a\u0174"+
"\u017e\u0188\u01a0\u01c8\u01cb\u01d8\u01db\u01e6\u01f3\u01f6\u0203\u0212"+
"\u0215\u0220\u022b";
public static final ATN _ATN =
new ATNDeserializer().deserialize(_serializedATN.toCharArray());
static {
_decisionToDFA = new DFA[_ATN.getNumberOfDecisions()];
for (int i = 0; i < _ATN.getNumberOfDecisions(); i++) {
_decisionToDFA[i] = new DFA(_ATN.getDecisionState(i), i);
}
}
}