Home | History | Annotate | Download | only in smali
      1 // $ANTLR 3.5 /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g 2014-02-12 17:39:16
      2 
      3 package org.jf.smali;
      4 
      5 import org.jf.dexlib2.Format;
      6 import org.jf.dexlib2.Opcode;
      7 import org.jf.dexlib2.Opcodes;
      8 
      9 
     10 import org.antlr.runtime.*;
     11 import java.util.Stack;
     12 import java.util.List;
     13 import java.util.ArrayList;
     14 
     15 import org.antlr.runtime.tree.*;
     16 
     17 
     18 @SuppressWarnings("all")
     19 public class smaliParser extends Parser {
     20 	public static final String[] tokenNames = new String[] {
     21 		"<invalid>", "<EOR>", "<DOWN>", "<UP>", "ACCESS_SPEC", "ANNOTATION_DIRECTIVE",
     22 		"ANNOTATION_VISIBILITY", "ARRAY_DATA_DIRECTIVE", "ARRAY_DESCRIPTOR", "ARROW",
     23 		"BASE_ARRAY_DESCRIPTOR", "BASE_CHAR_LITERAL", "BASE_CLASS_DESCRIPTOR",
     24 		"BASE_FLOAT", "BASE_FLOAT_OR_ID", "BASE_INTEGER", "BASE_PRIMITIVE_TYPE",
     25 		"BASE_SIMPLE_NAME", "BASE_STRING_LITERAL", "BASE_TYPE", "BINARY_EXPONENT",
     26 		"BOOL_LITERAL", "BYTE_LITERAL", "CATCHALL_DIRECTIVE", "CATCH_DIRECTIVE",
     27 		"CHAR_LITERAL", "CLASS_DESCRIPTOR", "CLASS_DIRECTIVE", "CLOSE_BRACE",
     28 		"CLOSE_PAREN", "COLON", "COMMA", "DECIMAL_EXPONENT", "DOTDOT", "DOUBLE_LITERAL",
     29 		"DOUBLE_LITERAL_OR_ID", "END_ANNOTATION_DIRECTIVE", "END_ARRAY_DATA_DIRECTIVE",
     30 		"END_FIELD_DIRECTIVE", "END_LOCAL_DIRECTIVE", "END_METHOD_DIRECTIVE",
     31 		"END_PACKED_SWITCH_DIRECTIVE", "END_PARAMETER_DIRECTIVE", "END_SPARSE_SWITCH_DIRECTIVE",
     32 		"END_SUBANNOTATION_DIRECTIVE", "ENUM_DIRECTIVE", "EPILOGUE_DIRECTIVE",
     33 		"EQUAL", "ESCAPE_SEQUENCE", "FIELD_DIRECTIVE", "FIELD_OFFSET", "FLOAT_LITERAL",
     34 		"FLOAT_LITERAL_OR_ID", "HEX_DIGIT", "HEX_DIGITS", "HEX_PREFIX", "IMPLEMENTS_DIRECTIVE",
     35 		"INLINE_INDEX", "INSTRUCTION_FORMAT10t", "INSTRUCTION_FORMAT10x", "INSTRUCTION_FORMAT10x_ODEX",
     36 		"INSTRUCTION_FORMAT11n", "INSTRUCTION_FORMAT11x", "INSTRUCTION_FORMAT12x",
     37 		"INSTRUCTION_FORMAT12x_OR_ID", "INSTRUCTION_FORMAT20bc", "INSTRUCTION_FORMAT20t",
     38 		"INSTRUCTION_FORMAT21c_FIELD", "INSTRUCTION_FORMAT21c_FIELD_ODEX", "INSTRUCTION_FORMAT21c_STRING",
     39 		"INSTRUCTION_FORMAT21c_TYPE", "INSTRUCTION_FORMAT21ih", "INSTRUCTION_FORMAT21lh",
     40 		"INSTRUCTION_FORMAT21s", "INSTRUCTION_FORMAT21t", "INSTRUCTION_FORMAT22b",
     41 		"INSTRUCTION_FORMAT22c_FIELD", "INSTRUCTION_FORMAT22c_FIELD_ODEX", "INSTRUCTION_FORMAT22c_TYPE",
     42 		"INSTRUCTION_FORMAT22cs_FIELD", "INSTRUCTION_FORMAT22s", "INSTRUCTION_FORMAT22s_OR_ID",
     43 		"INSTRUCTION_FORMAT22t", "INSTRUCTION_FORMAT22x", "INSTRUCTION_FORMAT23x",
     44 		"INSTRUCTION_FORMAT30t", "INSTRUCTION_FORMAT31c", "INSTRUCTION_FORMAT31i",
     45 		"INSTRUCTION_FORMAT31i_OR_ID", "INSTRUCTION_FORMAT31t", "INSTRUCTION_FORMAT32x",
     46 		"INSTRUCTION_FORMAT35c_METHOD", "INSTRUCTION_FORMAT35c_METHOD_ODEX", "INSTRUCTION_FORMAT35c_TYPE",
     47 		"INSTRUCTION_FORMAT35mi_METHOD", "INSTRUCTION_FORMAT35ms_METHOD", "INSTRUCTION_FORMAT3rc_METHOD",
     48 		"INSTRUCTION_FORMAT3rc_METHOD_ODEX", "INSTRUCTION_FORMAT3rc_TYPE", "INSTRUCTION_FORMAT3rmi_METHOD",
     49 		"INSTRUCTION_FORMAT3rms_METHOD", "INSTRUCTION_FORMAT51l", "INTEGER_LITERAL",
     50 		"INVALID_TOKEN", "I_ACCESS_LIST", "I_ANNOTATION", "I_ANNOTATIONS", "I_ANNOTATION_ELEMENT",
     51 		"I_ARRAY_ELEMENTS", "I_ARRAY_ELEMENT_SIZE", "I_CATCH", "I_CATCHALL", "I_CATCHES",
     52 		"I_CLASS_DEF", "I_ENCODED_ARRAY", "I_ENCODED_ENUM", "I_ENCODED_FIELD",
     53 		"I_ENCODED_METHOD", "I_END_LOCAL", "I_EPILOGUE", "I_FIELD", "I_FIELDS",
     54 		"I_FIELD_INITIAL_VALUE", "I_FIELD_TYPE", "I_IMPLEMENTS", "I_LABEL", "I_LINE",
     55 		"I_LOCAL", "I_LOCALS", "I_METHOD", "I_METHODS", "I_METHOD_PROTOTYPE",
     56 		"I_METHOD_RETURN_TYPE", "I_ORDERED_METHOD_ITEMS", "I_PACKED_SWITCH_ELEMENTS",
     57 		"I_PACKED_SWITCH_START_KEY", "I_PARAMETER", "I_PARAMETERS", "I_PARAMETER_NOT_SPECIFIED",
     58 		"I_PROLOGUE", "I_REGISTERS", "I_REGISTER_LIST", "I_REGISTER_RANGE", "I_RESTART_LOCAL",
     59 		"I_SOURCE", "I_SPARSE_SWITCH_ELEMENTS", "I_STATEMENT_ARRAY_DATA", "I_STATEMENT_FORMAT10t",
     60 		"I_STATEMENT_FORMAT10x", "I_STATEMENT_FORMAT11n", "I_STATEMENT_FORMAT11x",
     61 		"I_STATEMENT_FORMAT12x", "I_STATEMENT_FORMAT20bc", "I_STATEMENT_FORMAT20t",
     62 		"I_STATEMENT_FORMAT21c_FIELD", "I_STATEMENT_FORMAT21c_STRING", "I_STATEMENT_FORMAT21c_TYPE",
     63 		"I_STATEMENT_FORMAT21ih", "I_STATEMENT_FORMAT21lh", "I_STATEMENT_FORMAT21s",
     64 		"I_STATEMENT_FORMAT21t", "I_STATEMENT_FORMAT22b", "I_STATEMENT_FORMAT22c_FIELD",
     65 		"I_STATEMENT_FORMAT22c_TYPE", "I_STATEMENT_FORMAT22s", "I_STATEMENT_FORMAT22t",
     66 		"I_STATEMENT_FORMAT22x", "I_STATEMENT_FORMAT23x", "I_STATEMENT_FORMAT30t",
     67 		"I_STATEMENT_FORMAT31c", "I_STATEMENT_FORMAT31i", "I_STATEMENT_FORMAT31t",
     68 		"I_STATEMENT_FORMAT32x", "I_STATEMENT_FORMAT35c_METHOD", "I_STATEMENT_FORMAT35c_TYPE",
     69 		"I_STATEMENT_FORMAT3rc_METHOD", "I_STATEMENT_FORMAT3rc_TYPE", "I_STATEMENT_FORMAT51l",
     70 		"I_STATEMENT_PACKED_SWITCH", "I_STATEMENT_SPARSE_SWITCH", "I_SUBANNOTATION",
     71 		"I_SUPER", "LABEL", "LINE_COMMENT", "LINE_DIRECTIVE", "LOCALS_DIRECTIVE",
     72 		"LOCAL_DIRECTIVE", "LONG_LITERAL", "MEMBER_NAME", "METHOD_DIRECTIVE",
     73 		"NEGATIVE_INTEGER_LITERAL", "NULL_LITERAL", "OPEN_BRACE", "OPEN_PAREN",
     74 		"PACKED_SWITCH_DIRECTIVE", "PARAMETER_DIRECTIVE", "PARAM_LIST", "PARAM_LIST_OR_ID",
     75 		"POSITIVE_INTEGER_LITERAL", "PRIMITIVE_TYPE", "PROLOGUE_DIRECTIVE", "REGISTER",
     76 		"REGISTERS_DIRECTIVE", "RESTART_LOCAL_DIRECTIVE", "SHORT_LITERAL", "SIMPLE_NAME",
     77 		"SOURCE_DIRECTIVE", "SPARSE_SWITCH_DIRECTIVE", "STRING_LITERAL", "SUBANNOTATION_DIRECTIVE",
     78 		"SUPER_DIRECTIVE", "VERIFICATION_ERROR_TYPE", "VOID_TYPE", "VTABLE_INDEX",
     79 		"WHITE_SPACE"
     80 	};
     81 	public static final int EOF=-1;
     82 	public static final int ACCESS_SPEC=4;
     83 	public static final int ANNOTATION_DIRECTIVE=5;
     84 	public static final int ANNOTATION_VISIBILITY=6;
     85 	public static final int ARRAY_DATA_DIRECTIVE=7;
     86 	public static final int ARRAY_DESCRIPTOR=8;
     87 	public static final int ARROW=9;
     88 	public static final int BASE_ARRAY_DESCRIPTOR=10;
     89 	public static final int BASE_CHAR_LITERAL=11;
     90 	public static final int BASE_CLASS_DESCRIPTOR=12;
     91 	public static final int BASE_FLOAT=13;
     92 	public static final int BASE_FLOAT_OR_ID=14;
     93 	public static final int BASE_INTEGER=15;
     94 	public static final int BASE_PRIMITIVE_TYPE=16;
     95 	public static final int BASE_SIMPLE_NAME=17;
     96 	public static final int BASE_STRING_LITERAL=18;
     97 	public static final int BASE_TYPE=19;
     98 	public static final int BINARY_EXPONENT=20;
     99 	public static final int BOOL_LITERAL=21;
    100 	public static final int BYTE_LITERAL=22;
    101 	public static final int CATCHALL_DIRECTIVE=23;
    102 	public static final int CATCH_DIRECTIVE=24;
    103 	public static final int CHAR_LITERAL=25;
    104 	public static final int CLASS_DESCRIPTOR=26;
    105 	public static final int CLASS_DIRECTIVE=27;
    106 	public static final int CLOSE_BRACE=28;
    107 	public static final int CLOSE_PAREN=29;
    108 	public static final int COLON=30;
    109 	public static final int COMMA=31;
    110 	public static final int DECIMAL_EXPONENT=32;
    111 	public static final int DOTDOT=33;
    112 	public static final int DOUBLE_LITERAL=34;
    113 	public static final int DOUBLE_LITERAL_OR_ID=35;
    114 	public static final int END_ANNOTATION_DIRECTIVE=36;
    115 	public static final int END_ARRAY_DATA_DIRECTIVE=37;
    116 	public static final int END_FIELD_DIRECTIVE=38;
    117 	public static final int END_LOCAL_DIRECTIVE=39;
    118 	public static final int END_METHOD_DIRECTIVE=40;
    119 	public static final int END_PACKED_SWITCH_DIRECTIVE=41;
    120 	public static final int END_PARAMETER_DIRECTIVE=42;
    121 	public static final int END_SPARSE_SWITCH_DIRECTIVE=43;
    122 	public static final int END_SUBANNOTATION_DIRECTIVE=44;
    123 	public static final int ENUM_DIRECTIVE=45;
    124 	public static final int EPILOGUE_DIRECTIVE=46;
    125 	public static final int EQUAL=47;
    126 	public static final int ESCAPE_SEQUENCE=48;
    127 	public static final int FIELD_DIRECTIVE=49;
    128 	public static final int FIELD_OFFSET=50;
    129 	public static final int FLOAT_LITERAL=51;
    130 	public static final int FLOAT_LITERAL_OR_ID=52;
    131 	public static final int HEX_DIGIT=53;
    132 	public static final int HEX_DIGITS=54;
    133 	public static final int HEX_PREFIX=55;
    134 	public static final int IMPLEMENTS_DIRECTIVE=56;
    135 	public static final int INLINE_INDEX=57;
    136 	public static final int INSTRUCTION_FORMAT10t=58;
    137 	public static final int INSTRUCTION_FORMAT10x=59;
    138 	public static final int INSTRUCTION_FORMAT10x_ODEX=60;
    139 	public static final int INSTRUCTION_FORMAT11n=61;
    140 	public static final int INSTRUCTION_FORMAT11x=62;
    141 	public static final int INSTRUCTION_FORMAT12x=63;
    142 	public static final int INSTRUCTION_FORMAT12x_OR_ID=64;
    143 	public static final int INSTRUCTION_FORMAT20bc=65;
    144 	public static final int INSTRUCTION_FORMAT20t=66;
    145 	public static final int INSTRUCTION_FORMAT21c_FIELD=67;
    146 	public static final int INSTRUCTION_FORMAT21c_FIELD_ODEX=68;
    147 	public static final int INSTRUCTION_FORMAT21c_STRING=69;
    148 	public static final int INSTRUCTION_FORMAT21c_TYPE=70;
    149 	public static final int INSTRUCTION_FORMAT21ih=71;
    150 	public static final int INSTRUCTION_FORMAT21lh=72;
    151 	public static final int INSTRUCTION_FORMAT21s=73;
    152 	public static final int INSTRUCTION_FORMAT21t=74;
    153 	public static final int INSTRUCTION_FORMAT22b=75;
    154 	public static final int INSTRUCTION_FORMAT22c_FIELD=76;
    155 	public static final int INSTRUCTION_FORMAT22c_FIELD_ODEX=77;
    156 	public static final int INSTRUCTION_FORMAT22c_TYPE=78;
    157 	public static final int INSTRUCTION_FORMAT22cs_FIELD=79;
    158 	public static final int INSTRUCTION_FORMAT22s=80;
    159 	public static final int INSTRUCTION_FORMAT22s_OR_ID=81;
    160 	public static final int INSTRUCTION_FORMAT22t=82;
    161 	public static final int INSTRUCTION_FORMAT22x=83;
    162 	public static final int INSTRUCTION_FORMAT23x=84;
    163 	public static final int INSTRUCTION_FORMAT30t=85;
    164 	public static final int INSTRUCTION_FORMAT31c=86;
    165 	public static final int INSTRUCTION_FORMAT31i=87;
    166 	public static final int INSTRUCTION_FORMAT31i_OR_ID=88;
    167 	public static final int INSTRUCTION_FORMAT31t=89;
    168 	public static final int INSTRUCTION_FORMAT32x=90;
    169 	public static final int INSTRUCTION_FORMAT35c_METHOD=91;
    170 	public static final int INSTRUCTION_FORMAT35c_METHOD_ODEX=92;
    171 	public static final int INSTRUCTION_FORMAT35c_TYPE=93;
    172 	public static final int INSTRUCTION_FORMAT35mi_METHOD=94;
    173 	public static final int INSTRUCTION_FORMAT35ms_METHOD=95;
    174 	public static final int INSTRUCTION_FORMAT3rc_METHOD=96;
    175 	public static final int INSTRUCTION_FORMAT3rc_METHOD_ODEX=97;
    176 	public static final int INSTRUCTION_FORMAT3rc_TYPE=98;
    177 	public static final int INSTRUCTION_FORMAT3rmi_METHOD=99;
    178 	public static final int INSTRUCTION_FORMAT3rms_METHOD=100;
    179 	public static final int INSTRUCTION_FORMAT51l=101;
    180 	public static final int INTEGER_LITERAL=102;
    181 	public static final int INVALID_TOKEN=103;
    182 	public static final int I_ACCESS_LIST=104;
    183 	public static final int I_ANNOTATION=105;
    184 	public static final int I_ANNOTATIONS=106;
    185 	public static final int I_ANNOTATION_ELEMENT=107;
    186 	public static final int I_ARRAY_ELEMENTS=108;
    187 	public static final int I_ARRAY_ELEMENT_SIZE=109;
    188 	public static final int I_CATCH=110;
    189 	public static final int I_CATCHALL=111;
    190 	public static final int I_CATCHES=112;
    191 	public static final int I_CLASS_DEF=113;
    192 	public static final int I_ENCODED_ARRAY=114;
    193 	public static final int I_ENCODED_ENUM=115;
    194 	public static final int I_ENCODED_FIELD=116;
    195 	public static final int I_ENCODED_METHOD=117;
    196 	public static final int I_END_LOCAL=118;
    197 	public static final int I_EPILOGUE=119;
    198 	public static final int I_FIELD=120;
    199 	public static final int I_FIELDS=121;
    200 	public static final int I_FIELD_INITIAL_VALUE=122;
    201 	public static final int I_FIELD_TYPE=123;
    202 	public static final int I_IMPLEMENTS=124;
    203 	public static final int I_LABEL=125;
    204 	public static final int I_LINE=126;
    205 	public static final int I_LOCAL=127;
    206 	public static final int I_LOCALS=128;
    207 	public static final int I_METHOD=129;
    208 	public static final int I_METHODS=130;
    209 	public static final int I_METHOD_PROTOTYPE=131;
    210 	public static final int I_METHOD_RETURN_TYPE=132;
    211 	public static final int I_ORDERED_METHOD_ITEMS=133;
    212 	public static final int I_PACKED_SWITCH_ELEMENTS=134;
    213 	public static final int I_PACKED_SWITCH_START_KEY=135;
    214 	public static final int I_PARAMETER=136;
    215 	public static final int I_PARAMETERS=137;
    216 	public static final int I_PARAMETER_NOT_SPECIFIED=138;
    217 	public static final int I_PROLOGUE=139;
    218 	public static final int I_REGISTERS=140;
    219 	public static final int I_REGISTER_LIST=141;
    220 	public static final int I_REGISTER_RANGE=142;
    221 	public static final int I_RESTART_LOCAL=143;
    222 	public static final int I_SOURCE=144;
    223 	public static final int I_SPARSE_SWITCH_ELEMENTS=145;
    224 	public static final int I_STATEMENT_ARRAY_DATA=146;
    225 	public static final int I_STATEMENT_FORMAT10t=147;
    226 	public static final int I_STATEMENT_FORMAT10x=148;
    227 	public static final int I_STATEMENT_FORMAT11n=149;
    228 	public static final int I_STATEMENT_FORMAT11x=150;
    229 	public static final int I_STATEMENT_FORMAT12x=151;
    230 	public static final int I_STATEMENT_FORMAT20bc=152;
    231 	public static final int I_STATEMENT_FORMAT20t=153;
    232 	public static final int I_STATEMENT_FORMAT21c_FIELD=154;
    233 	public static final int I_STATEMENT_FORMAT21c_STRING=155;
    234 	public static final int I_STATEMENT_FORMAT21c_TYPE=156;
    235 	public static final int I_STATEMENT_FORMAT21ih=157;
    236 	public static final int I_STATEMENT_FORMAT21lh=158;
    237 	public static final int I_STATEMENT_FORMAT21s=159;
    238 	public static final int I_STATEMENT_FORMAT21t=160;
    239 	public static final int I_STATEMENT_FORMAT22b=161;
    240 	public static final int I_STATEMENT_FORMAT22c_FIELD=162;
    241 	public static final int I_STATEMENT_FORMAT22c_TYPE=163;
    242 	public static final int I_STATEMENT_FORMAT22s=164;
    243 	public static final int I_STATEMENT_FORMAT22t=165;
    244 	public static final int I_STATEMENT_FORMAT22x=166;
    245 	public static final int I_STATEMENT_FORMAT23x=167;
    246 	public static final int I_STATEMENT_FORMAT30t=168;
    247 	public static final int I_STATEMENT_FORMAT31c=169;
    248 	public static final int I_STATEMENT_FORMAT31i=170;
    249 	public static final int I_STATEMENT_FORMAT31t=171;
    250 	public static final int I_STATEMENT_FORMAT32x=172;
    251 	public static final int I_STATEMENT_FORMAT35c_METHOD=173;
    252 	public static final int I_STATEMENT_FORMAT35c_TYPE=174;
    253 	public static final int I_STATEMENT_FORMAT3rc_METHOD=175;
    254 	public static final int I_STATEMENT_FORMAT3rc_TYPE=176;
    255 	public static final int I_STATEMENT_FORMAT51l=177;
    256 	public static final int I_STATEMENT_PACKED_SWITCH=178;
    257 	public static final int I_STATEMENT_SPARSE_SWITCH=179;
    258 	public static final int I_SUBANNOTATION=180;
    259 	public static final int I_SUPER=181;
    260 	public static final int LABEL=182;
    261 	public static final int LINE_COMMENT=183;
    262 	public static final int LINE_DIRECTIVE=184;
    263 	public static final int LOCALS_DIRECTIVE=185;
    264 	public static final int LOCAL_DIRECTIVE=186;
    265 	public static final int LONG_LITERAL=187;
    266 	public static final int MEMBER_NAME=188;
    267 	public static final int METHOD_DIRECTIVE=189;
    268 	public static final int NEGATIVE_INTEGER_LITERAL=190;
    269 	public static final int NULL_LITERAL=191;
    270 	public static final int OPEN_BRACE=192;
    271 	public static final int OPEN_PAREN=193;
    272 	public static final int PACKED_SWITCH_DIRECTIVE=194;
    273 	public static final int PARAMETER_DIRECTIVE=195;
    274 	public static final int PARAM_LIST=196;
    275 	public static final int PARAM_LIST_OR_ID=197;
    276 	public static final int POSITIVE_INTEGER_LITERAL=198;
    277 	public static final int PRIMITIVE_TYPE=199;
    278 	public static final int PROLOGUE_DIRECTIVE=200;
    279 	public static final int REGISTER=201;
    280 	public static final int REGISTERS_DIRECTIVE=202;
    281 	public static final int RESTART_LOCAL_DIRECTIVE=203;
    282 	public static final int SHORT_LITERAL=204;
    283 	public static final int SIMPLE_NAME=205;
    284 	public static final int SOURCE_DIRECTIVE=206;
    285 	public static final int SPARSE_SWITCH_DIRECTIVE=207;
    286 	public static final int STRING_LITERAL=208;
    287 	public static final int SUBANNOTATION_DIRECTIVE=209;
    288 	public static final int SUPER_DIRECTIVE=210;
    289 	public static final int VERIFICATION_ERROR_TYPE=211;
    290 	public static final int VOID_TYPE=212;
    291 	public static final int VTABLE_INDEX=213;
    292 	public static final int WHITE_SPACE=214;
    293 
    294 	// delegates
    295 	public Parser[] getDelegates() {
    296 		return new Parser[] {};
    297 	}
    298 
    299 	// delegators
    300 
    301 
    302 	public smaliParser(TokenStream input) {
    303 		this(input, new RecognizerSharedState());
    304 	}
    305 	public smaliParser(TokenStream input, RecognizerSharedState state) {
    306 		super(input, state);
    307 	}
    308 
    309 	protected TreeAdaptor adaptor = new CommonTreeAdaptor();
    310 
    311 	public void setTreeAdaptor(TreeAdaptor adaptor) {
    312 		this.adaptor = adaptor;
    313 	}
    314 	public TreeAdaptor getTreeAdaptor() {
    315 		return adaptor;
    316 	}
    317 	@Override public String[] getTokenNames() { return smaliParser.tokenNames; }
    318 	@Override public String getGrammarFileName() { return "/usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g"; }
    319 
    320 
    321 	  public static final int ERROR_CHANNEL = 100;
    322 
    323 	  private boolean verboseErrors = false;
    324 	  private boolean allowOdex = false;
    325 	  private int apiLevel = 15;
    326 	  private Opcodes opcodes = new Opcodes(apiLevel);
    327 
    328 	  public void setVerboseErrors(boolean verboseErrors) {
    329 	    this.verboseErrors = verboseErrors;
    330 	  }
    331 
    332 	  public void setAllowOdex(boolean allowOdex) {
    333 	      this.allowOdex = allowOdex;
    334 	  }
    335 
    336 	  public void setApiLevel(int apiLevel) {
    337 	      this.opcodes = new Opcodes(apiLevel);
    338 	      this.apiLevel = apiLevel;
    339 	  }
    340 
    341 	  public String getErrorMessage(RecognitionException e,
    342 	    String[] tokenNames) {
    343 
    344 	    if (verboseErrors) {
    345 	      List stack = getRuleInvocationStack(e, this.getClass().getName());
    346 	      String msg = null;
    347 
    348 	      if (e instanceof NoViableAltException) {
    349 	        NoViableAltException nvae = (NoViableAltException)e;
    350 	        msg = " no viable alt; token="+getTokenErrorDisplay(e.token)+
    351 	        " (decision="+nvae.decisionNumber+
    352 	        " state "+nvae.stateNumber+")"+
    353 	        " decision=<<"+nvae.grammarDecisionDescription+">>";
    354 	      } else {
    355 	        msg = super.getErrorMessage(e, tokenNames);
    356 	      }
    357 
    358 	      return stack + " " + msg;
    359 	    } else {
    360 	      return super.getErrorMessage(e, tokenNames);
    361 	    }
    362 	  }
    363 
    364 	  public String getTokenErrorDisplay(Token t) {
    365 	    if (!verboseErrors) {
    366 	      String s = t.getText();
    367 	      if ( s==null ) {
    368 	        if ( t.getType()==Token.EOF ) {
    369 	          s = "<EOF>";
    370 	        }
    371 	        else {
    372 	          s = "<"+tokenNames[t.getType()]+">";
    373 	        }
    374 	      }
    375 	      s = s.replaceAll("\n","\\\\n");
    376 	      s = s.replaceAll("\r","\\\\r");
    377 	      s = s.replaceAll("\t","\\\\t");
    378 	      return "'"+s+"'";
    379 	    }
    380 
    381 	    CommonToken ct = (CommonToken)t;
    382 
    383 	    String channelStr = "";
    384 	    if (t.getChannel()>0) {
    385 	      channelStr=",channel="+t.getChannel();
    386 	    }
    387 	    String txt = t.getText();
    388 	    if ( txt!=null ) {
    389 	      txt = txt.replaceAll("\n","\\\\n");
    390 	      txt = txt.replaceAll("\r","\\\\r");
    391 	      txt = txt.replaceAll("\t","\\\\t");
    392 	    }
    393 	    else {
    394 	      txt = "<no text>";
    395 	    }
    396 	    return "[@"+t.getTokenIndex()+","+ct.getStartIndex()+":"+ct.getStopIndex()+"='"+txt+"',<"+tokenNames[t.getType()]+">"+channelStr+","+t.getLine()+":"+t.getCharPositionInLine()+"]";
    397 	  }
    398 
    399 	  public String getErrorHeader(RecognitionException e) {
    400 	    return getSourceName()+"["+ e.line+","+e.charPositionInLine+"]";
    401 	  }
    402 
    403 	  private CommonTree buildTree(int type, String text, List<CommonTree> children) {
    404 	    CommonTree root = new CommonTree(new CommonToken(type, text));
    405 	    for (CommonTree child: children) {
    406 	      root.addChild(child);
    407 	    }
    408 	    return root;
    409 	  }
    410 
    411 	  private CommonToken getParamListSubToken(CommonToken baseToken, String str, int typeStartIndex) {
    412 	    CommonToken token = new CommonToken(baseToken);
    413 	    token.setStartIndex(baseToken.getStartIndex() + typeStartIndex);
    414 
    415 	    switch (str.charAt(typeStartIndex)) {
    416 	      case 'Z':
    417 	      case 'B':
    418 	      case 'S':
    419 	      case 'C':
    420 	      case 'I':
    421 	      case 'J':
    422 	      case 'F':
    423 	      case 'D':
    424 	      {
    425 	        token.setType(PRIMITIVE_TYPE);
    426 	        token.setText(str.substring(typeStartIndex, typeStartIndex+1));
    427 	        token.setStopIndex(baseToken.getStartIndex() + typeStartIndex);
    428 	        break;
    429 	      }
    430 	      case 'L':
    431 	      {
    432 	        int i = typeStartIndex;
    433 	        while (str.charAt(++i) != ';');
    434 
    435 	        token.setType(CLASS_DESCRIPTOR);
    436 	        token.setText(str.substring(typeStartIndex, i + 1));
    437 	        token.setStopIndex(baseToken.getStartIndex() + i);
    438 	        break;
    439 	      }
    440 	      case '[':
    441 	      {
    442 	        int i = typeStartIndex;
    443 	            while (str.charAt(++i) == '[');
    444 
    445 	            if (str.charAt(i++) == 'L') {
    446 	                while (str.charAt(i++) != ';');
    447 	        }
    448 
    449 	            token.setType(ARRAY_DESCRIPTOR);
    450 	            token.setText(str.substring(typeStartIndex, i));
    451 	            token.setStopIndex(baseToken.getStartIndex() + i - 1);
    452 	            break;
    453 	      }
    454 	      default:
    455 	        throw new RuntimeException(String.format("Invalid character '%c' in param list \"%s\" at position %d", str.charAt(typeStartIndex), str, typeStartIndex));
    456 	    }
    457 
    458 	    return token;
    459 	  }
    460 
    461 	  private CommonTree parseParamList(CommonToken paramListToken) {
    462 	    String paramList = paramListToken.getText();
    463 	    CommonTree root = new CommonTree();
    464 
    465 	    int startIndex = paramListToken.getStartIndex();
    466 
    467 	    int i=0;
    468 	    while (i<paramList.length()) {
    469 	      CommonToken token = getParamListSubToken(paramListToken, paramList, i);
    470 	      root.addChild(new CommonTree(token));
    471 	      i += token.getText().length();
    472 	    }
    473 
    474 	    if (root.getChildCount() == 0) {
    475 	      return null;
    476 	    }
    477 	    return root;
    478 	  }
    479 
    480 	  private void throwOdexedInstructionException(IntStream input, String odexedInstruction)
    481 	      throws OdexedInstructionException {
    482 	    /*this has to be done in a separate method, otherwise java will complain about the
    483 	    auto-generated code in the rule after the throw not being reachable*/
    484 	    throw new OdexedInstructionException(input, odexedInstruction);
    485 	  }
    486 
    487 
    488 	protected static class smali_file_scope {
    489 		boolean hasClassSpec;
    490 		boolean hasSuperSpec;
    491 		boolean hasSourceSpec;
    492 		List<CommonTree> classAnnotations;
    493 	}
    494 	protected Stack<smali_file_scope> smali_file_stack = new Stack<smali_file_scope>();
    495 
    496 	public static class smali_file_return extends ParserRuleReturnScope {
    497 		CommonTree tree;
    498 		@Override
    499 		public CommonTree getTree() { return tree; }
    500 	};
    501 
    502 
    503 	// $ANTLR start "smali_file"
    504 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:433:1: smali_file : ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) ;
    505 	public final smaliParser.smali_file_return smali_file() throws RecognitionException {
    506 		smali_file_stack.push(new smali_file_scope());
    507 		smaliParser.smali_file_return retval = new smaliParser.smali_file_return();
    508 		retval.start = input.LT(1);
    509 
    510 		CommonTree root_0 = null;
    511 
    512 		Token EOF8=null;
    513 		ParserRuleReturnScope class_spec1 =null;
    514 		ParserRuleReturnScope super_spec2 =null;
    515 		ParserRuleReturnScope implements_spec3 =null;
    516 		ParserRuleReturnScope source_spec4 =null;
    517 		ParserRuleReturnScope method5 =null;
    518 		ParserRuleReturnScope field6 =null;
    519 		ParserRuleReturnScope annotation7 =null;
    520 
    521 		CommonTree EOF8_tree=null;
    522 		RewriteRuleTokenStream stream_EOF=new RewriteRuleTokenStream(adaptor,"token EOF");
    523 		RewriteRuleSubtreeStream stream_field=new RewriteRuleSubtreeStream(adaptor,"rule field");
    524 		RewriteRuleSubtreeStream stream_annotation=new RewriteRuleSubtreeStream(adaptor,"rule annotation");
    525 		RewriteRuleSubtreeStream stream_super_spec=new RewriteRuleSubtreeStream(adaptor,"rule super_spec");
    526 		RewriteRuleSubtreeStream stream_implements_spec=new RewriteRuleSubtreeStream(adaptor,"rule implements_spec");
    527 		RewriteRuleSubtreeStream stream_source_spec=new RewriteRuleSubtreeStream(adaptor,"rule source_spec");
    528 		RewriteRuleSubtreeStream stream_method=new RewriteRuleSubtreeStream(adaptor,"rule method");
    529 		RewriteRuleSubtreeStream stream_class_spec=new RewriteRuleSubtreeStream(adaptor,"rule class_spec");
    530 
    531 		 smali_file_stack.peek().hasClassSpec = smali_file_stack.peek().hasSuperSpec = smali_file_stack.peek().hasSourceSpec = false;
    532 		    smali_file_stack.peek().classAnnotations = new ArrayList<CommonTree>();
    533 
    534 		try {
    535 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:445:3: ( ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) )
    536 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:446:3: ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF
    537 			{
    538 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:446:3: ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+
    539 			int cnt1=0;
    540 			loop1:
    541 			while (true) {
    542 				int alt1=8;
    543 				int LA1_0 = input.LA(1);
    544 				if ( (LA1_0==CLASS_DIRECTIVE) && ((!smali_file_stack.peek().hasClassSpec))) {
    545 					alt1=1;
    546 				}
    547 				else if ( (LA1_0==SUPER_DIRECTIVE) && ((!smali_file_stack.peek().hasSuperSpec))) {
    548 					alt1=2;
    549 				}
    550 				else if ( (LA1_0==IMPLEMENTS_DIRECTIVE) ) {
    551 					alt1=3;
    552 				}
    553 				else if ( (LA1_0==SOURCE_DIRECTIVE) && ((!smali_file_stack.peek().hasSourceSpec))) {
    554 					alt1=4;
    555 				}
    556 				else if ( (LA1_0==METHOD_DIRECTIVE) ) {
    557 					alt1=5;
    558 				}
    559 				else if ( (LA1_0==FIELD_DIRECTIVE) ) {
    560 					alt1=6;
    561 				}
    562 				else if ( (LA1_0==ANNOTATION_DIRECTIVE) ) {
    563 					alt1=7;
    564 				}
    565 
    566 				switch (alt1) {
    567 				case 1 :
    568 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:446:5: {...}? => class_spec
    569 					{
    570 					if ( !((!smali_file_stack.peek().hasClassSpec)) ) {
    571 						throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasClassSpec");
    572 					}
    573 					pushFollow(FOLLOW_class_spec_in_smali_file1145);
    574 					class_spec1=class_spec();
    575 					state._fsp--;
    576 
    577 					stream_class_spec.add(class_spec1.getTree());
    578 					smali_file_stack.peek().hasClassSpec = true;
    579 					}
    580 					break;
    581 				case 2 :
    582 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:447:5: {...}? => super_spec
    583 					{
    584 					if ( !((!smali_file_stack.peek().hasSuperSpec)) ) {
    585 						throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasSuperSpec");
    586 					}
    587 					pushFollow(FOLLOW_super_spec_in_smali_file1156);
    588 					super_spec2=super_spec();
    589 					state._fsp--;
    590 
    591 					stream_super_spec.add(super_spec2.getTree());
    592 					smali_file_stack.peek().hasSuperSpec = true;
    593 					}
    594 					break;
    595 				case 3 :
    596 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:448:5: implements_spec
    597 					{
    598 					pushFollow(FOLLOW_implements_spec_in_smali_file1164);
    599 					implements_spec3=implements_spec();
    600 					state._fsp--;
    601 
    602 					stream_implements_spec.add(implements_spec3.getTree());
    603 					}
    604 					break;
    605 				case 4 :
    606 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:449:5: {...}? => source_spec
    607 					{
    608 					if ( !((!smali_file_stack.peek().hasSourceSpec)) ) {
    609 						throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasSourceSpec");
    610 					}
    611 					pushFollow(FOLLOW_source_spec_in_smali_file1173);
    612 					source_spec4=source_spec();
    613 					state._fsp--;
    614 
    615 					stream_source_spec.add(source_spec4.getTree());
    616 					smali_file_stack.peek().hasSourceSpec = true;
    617 					}
    618 					break;
    619 				case 5 :
    620 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:450:5: method
    621 					{
    622 					pushFollow(FOLLOW_method_in_smali_file1181);
    623 					method5=method();
    624 					state._fsp--;
    625 
    626 					stream_method.add(method5.getTree());
    627 					}
    628 					break;
    629 				case 6 :
    630 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:451:5: field
    631 					{
    632 					pushFollow(FOLLOW_field_in_smali_file1187);
    633 					field6=field();
    634 					state._fsp--;
    635 
    636 					stream_field.add(field6.getTree());
    637 					}
    638 					break;
    639 				case 7 :
    640 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:452:5: annotation
    641 					{
    642 					pushFollow(FOLLOW_annotation_in_smali_file1193);
    643 					annotation7=annotation();
    644 					state._fsp--;
    645 
    646 					stream_annotation.add(annotation7.getTree());
    647 					smali_file_stack.peek().classAnnotations.add((annotation7!=null?((CommonTree)annotation7.getTree()):null));
    648 					}
    649 					break;
    650 
    651 				default :
    652 					if ( cnt1 >= 1 ) break loop1;
    653 					EarlyExitException eee = new EarlyExitException(1, input);
    654 					throw eee;
    655 				}
    656 				cnt1++;
    657 			}
    658 
    659 			EOF8=(Token)match(input,EOF,FOLLOW_EOF_in_smali_file1204);
    660 			stream_EOF.add(EOF8);
    661 
    662 
    663 			    if (!smali_file_stack.peek().hasClassSpec) {
    664 			      throw new SemanticException(input, "The file must contain a .class directive");
    665 			    }
    666 
    667 			    if (!smali_file_stack.peek().hasSuperSpec) {
    668 			      if (!(class_spec1!=null?((smaliParser.class_spec_return)class_spec1).className:null).equals("Ljava/lang/Object;")) {
    669 			        throw new SemanticException(input, "The file must contain a .super directive");
    670 			      }
    671 			    }
    672 
    673 			// AST REWRITE
    674 			// elements: source_spec, implements_spec, super_spec, field, class_spec, method
    675 			// token labels:
    676 			// rule labels: retval
    677 			// token list labels:
    678 			// rule list labels:
    679 			// wildcard labels:
    680 			retval.tree = root_0;
    681 			RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
    682 
    683 			root_0 = (CommonTree)adaptor.nil();
    684 			// 466:3: -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) )
    685 			{
    686 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:466:6: ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) )
    687 				{
    688 				CommonTree root_1 = (CommonTree)adaptor.nil();
    689 				root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_CLASS_DEF, "I_CLASS_DEF"), root_1);
    690 				adaptor.addChild(root_1, stream_class_spec.nextTree());
    691 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:468:8: ( super_spec )?
    692 				if ( stream_super_spec.hasNext() ) {
    693 					adaptor.addChild(root_1, stream_super_spec.nextTree());
    694 				}
    695 				stream_super_spec.reset();
    696 
    697 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:469:8: ( implements_spec )*
    698 				while ( stream_implements_spec.hasNext() ) {
    699 					adaptor.addChild(root_1, stream_implements_spec.nextTree());
    700 				}
    701 				stream_implements_spec.reset();
    702 
    703 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:470:8: ( source_spec )?
    704 				if ( stream_source_spec.hasNext() ) {
    705 					adaptor.addChild(root_1, stream_source_spec.nextTree());
    706 				}
    707 				stream_source_spec.reset();
    708 
    709 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:8: ^( I_METHODS ( method )* )
    710 				{
    711 				CommonTree root_2 = (CommonTree)adaptor.nil();
    712 				root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHODS, "I_METHODS"), root_2);
    713 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:20: ( method )*
    714 				while ( stream_method.hasNext() ) {
    715 					adaptor.addChild(root_2, stream_method.nextTree());
    716 				}
    717 				stream_method.reset();
    718 
    719 				adaptor.addChild(root_1, root_2);
    720 				}
    721 
    722 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:29: ^( I_FIELDS ( field )* )
    723 				{
    724 				CommonTree root_2 = (CommonTree)adaptor.nil();
    725 				root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELDS, "I_FIELDS"), root_2);
    726 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:40: ( field )*
    727 				while ( stream_field.hasNext() ) {
    728 					adaptor.addChild(root_2, stream_field.nextTree());
    729 				}
    730 				stream_field.reset();
    731 
    732 				adaptor.addChild(root_1, root_2);
    733 				}
    734 
    735 				adaptor.addChild(root_1, buildTree(I_ANNOTATIONS, "I_ANNOTATIONS", smali_file_stack.peek().classAnnotations));
    736 				adaptor.addChild(root_0, root_1);
    737 				}
    738 
    739 			}
    740 
    741 
    742 			retval.tree = root_0;
    743 
    744 			}
    745 
    746 			retval.stop = input.LT(-1);
    747 
    748 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
    749 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
    750 
    751 		}
    752 		catch (RecognitionException re) {
    753 			reportError(re);
    754 			recover(input,re);
    755 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
    756 		}
    757 		finally {
    758 			// do for sure before leaving
    759 			smali_file_stack.pop();
    760 		}
    761 		return retval;
    762 	}
    763 	// $ANTLR end "smali_file"
    764 
    765 
    766 	public static class class_spec_return extends ParserRuleReturnScope {
    767 		public String className;
    768 		CommonTree tree;
    769 		@Override
    770 		public CommonTree getTree() { return tree; }
    771 	};
    772 
    773 
    774 	// $ANTLR start "class_spec"
    775 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:473:1: class_spec returns [String className] : CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR -> CLASS_DESCRIPTOR access_list ;
    776 	public final smaliParser.class_spec_return class_spec() throws RecognitionException {
    777 		smaliParser.class_spec_return retval = new smaliParser.class_spec_return();
    778 		retval.start = input.LT(1);
    779 
    780 		CommonTree root_0 = null;
    781 
    782 		Token CLASS_DIRECTIVE9=null;
    783 		Token CLASS_DESCRIPTOR11=null;
    784 		ParserRuleReturnScope access_list10 =null;
    785 
    786 		CommonTree CLASS_DIRECTIVE9_tree=null;
    787 		CommonTree CLASS_DESCRIPTOR11_tree=null;
    788 		RewriteRuleTokenStream stream_CLASS_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token CLASS_DIRECTIVE");
    789 		RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR");
    790 		RewriteRuleSubtreeStream stream_access_list=new RewriteRuleSubtreeStream(adaptor,"rule access_list");
    791 
    792 		try {
    793 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:474:3: ( CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR -> CLASS_DESCRIPTOR access_list )
    794 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:474:5: CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR
    795 			{
    796 			CLASS_DIRECTIVE9=(Token)match(input,CLASS_DIRECTIVE,FOLLOW_CLASS_DIRECTIVE_in_class_spec1291);
    797 			stream_CLASS_DIRECTIVE.add(CLASS_DIRECTIVE9);
    798 
    799 			pushFollow(FOLLOW_access_list_in_class_spec1293);
    800 			access_list10=access_list();
    801 			state._fsp--;
    802 
    803 			stream_access_list.add(access_list10.getTree());
    804 			CLASS_DESCRIPTOR11=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_class_spec1295);
    805 			stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR11);
    806 
    807 			retval.className = (CLASS_DESCRIPTOR11!=null?CLASS_DESCRIPTOR11.getText():null);
    808 			// AST REWRITE
    809 			// elements: CLASS_DESCRIPTOR, access_list
    810 			// token labels:
    811 			// rule labels: retval
    812 			// token list labels:
    813 			// rule list labels:
    814 			// wildcard labels:
    815 			retval.tree = root_0;
    816 			RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
    817 
    818 			root_0 = (CommonTree)adaptor.nil();
    819 			// 474:89: -> CLASS_DESCRIPTOR access_list
    820 			{
    821 				adaptor.addChild(root_0, stream_CLASS_DESCRIPTOR.nextNode());
    822 				adaptor.addChild(root_0, stream_access_list.nextTree());
    823 			}
    824 
    825 
    826 			retval.tree = root_0;
    827 
    828 			}
    829 
    830 			retval.stop = input.LT(-1);
    831 
    832 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
    833 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
    834 
    835 		}
    836 		catch (RecognitionException re) {
    837 			reportError(re);
    838 			recover(input,re);
    839 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
    840 		}
    841 		finally {
    842 			// do for sure before leaving
    843 		}
    844 		return retval;
    845 	}
    846 	// $ANTLR end "class_spec"
    847 
    848 
    849 	public static class super_spec_return extends ParserRuleReturnScope {
    850 		CommonTree tree;
    851 		@Override
    852 		public CommonTree getTree() { return tree; }
    853 	};
    854 
    855 
    856 	// $ANTLR start "super_spec"
    857 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:476:1: super_spec : SUPER_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) ;
    858 	public final smaliParser.super_spec_return super_spec() throws RecognitionException {
    859 		smaliParser.super_spec_return retval = new smaliParser.super_spec_return();
    860 		retval.start = input.LT(1);
    861 
    862 		CommonTree root_0 = null;
    863 
    864 		Token SUPER_DIRECTIVE12=null;
    865 		Token CLASS_DESCRIPTOR13=null;
    866 
    867 		CommonTree SUPER_DIRECTIVE12_tree=null;
    868 		CommonTree CLASS_DESCRIPTOR13_tree=null;
    869 		RewriteRuleTokenStream stream_SUPER_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token SUPER_DIRECTIVE");
    870 		RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR");
    871 
    872 		try {
    873 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:477:3: ( SUPER_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) )
    874 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:477:5: SUPER_DIRECTIVE CLASS_DESCRIPTOR
    875 			{
    876 			SUPER_DIRECTIVE12=(Token)match(input,SUPER_DIRECTIVE,FOLLOW_SUPER_DIRECTIVE_in_super_spec1313);
    877 			stream_SUPER_DIRECTIVE.add(SUPER_DIRECTIVE12);
    878 
    879 			CLASS_DESCRIPTOR13=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_super_spec1315);
    880 			stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR13);
    881 
    882 			// AST REWRITE
    883 			// elements: CLASS_DESCRIPTOR
    884 			// token labels:
    885 			// rule labels: retval
    886 			// token list labels:
    887 			// rule list labels:
    888 			// wildcard labels:
    889 			retval.tree = root_0;
    890 			RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
    891 
    892 			root_0 = (CommonTree)adaptor.nil();
    893 			// 477:38: -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR )
    894 			{
    895 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:477:41: ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR )
    896 				{
    897 				CommonTree root_1 = (CommonTree)adaptor.nil();
    898 				root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SUPER, (retval.start), "I_SUPER"), root_1);
    899 				adaptor.addChild(root_1, stream_CLASS_DESCRIPTOR.nextNode());
    900 				adaptor.addChild(root_0, root_1);
    901 				}
    902 
    903 			}
    904 
    905 
    906 			retval.tree = root_0;
    907 
    908 			}
    909 
    910 			retval.stop = input.LT(-1);
    911 
    912 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
    913 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
    914 
    915 		}
    916 		catch (RecognitionException re) {
    917 			reportError(re);
    918 			recover(input,re);
    919 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
    920 		}
    921 		finally {
    922 			// do for sure before leaving
    923 		}
    924 		return retval;
    925 	}
    926 	// $ANTLR end "super_spec"
    927 
    928 
    929 	public static class implements_spec_return extends ParserRuleReturnScope {
    930 		CommonTree tree;
    931 		@Override
    932 		public CommonTree getTree() { return tree; }
    933 	};
    934 
    935 
    936 	// $ANTLR start "implements_spec"
    937 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:479:1: implements_spec : IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) ;
    938 	public final smaliParser.implements_spec_return implements_spec() throws RecognitionException {
    939 		smaliParser.implements_spec_return retval = new smaliParser.implements_spec_return();
    940 		retval.start = input.LT(1);
    941 
    942 		CommonTree root_0 = null;
    943 
    944 		Token IMPLEMENTS_DIRECTIVE14=null;
    945 		Token CLASS_DESCRIPTOR15=null;
    946 
    947 		CommonTree IMPLEMENTS_DIRECTIVE14_tree=null;
    948 		CommonTree CLASS_DESCRIPTOR15_tree=null;
    949 		RewriteRuleTokenStream stream_IMPLEMENTS_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token IMPLEMENTS_DIRECTIVE");
    950 		RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR");
    951 
    952 		try {
    953 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:480:3: ( IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) )
    954 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:480:5: IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR
    955 			{
    956 			IMPLEMENTS_DIRECTIVE14=(Token)match(input,IMPLEMENTS_DIRECTIVE,FOLLOW_IMPLEMENTS_DIRECTIVE_in_implements_spec1334);
    957 			stream_IMPLEMENTS_DIRECTIVE.add(IMPLEMENTS_DIRECTIVE14);
    958 
    959 			CLASS_DESCRIPTOR15=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_implements_spec1336);
    960 			stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR15);
    961 
    962 			// AST REWRITE
    963 			// elements: CLASS_DESCRIPTOR
    964 			// token labels:
    965 			// rule labels: retval
    966 			// token list labels:
    967 			// rule list labels:
    968 			// wildcard labels:
    969 			retval.tree = root_0;
    970 			RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
    971 
    972 			root_0 = (CommonTree)adaptor.nil();
    973 			// 480:43: -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR )
    974 			{
    975 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:480:46: ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR )
    976 				{
    977 				CommonTree root_1 = (CommonTree)adaptor.nil();
    978 				root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_IMPLEMENTS, (retval.start), "I_IMPLEMENTS"), root_1);
    979 				adaptor.addChild(root_1, stream_CLASS_DESCRIPTOR.nextNode());
    980 				adaptor.addChild(root_0, root_1);
    981 				}
    982 
    983 			}
    984 
    985 
    986 			retval.tree = root_0;
    987 
    988 			}
    989 
    990 			retval.stop = input.LT(-1);
    991 
    992 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
    993 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
    994 
    995 		}
    996 		catch (RecognitionException re) {
    997 			reportError(re);
    998 			recover(input,re);
    999 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   1000 		}
   1001 		finally {
   1002 			// do for sure before leaving
   1003 		}
   1004 		return retval;
   1005 	}
   1006 	// $ANTLR end "implements_spec"
   1007 
   1008 
   1009 	public static class source_spec_return extends ParserRuleReturnScope {
   1010 		CommonTree tree;
   1011 		@Override
   1012 		public CommonTree getTree() { return tree; }
   1013 	};
   1014 
   1015 
   1016 	// $ANTLR start "source_spec"
   1017 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:482:1: source_spec : SOURCE_DIRECTIVE STRING_LITERAL -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) ;
   1018 	public final smaliParser.source_spec_return source_spec() throws RecognitionException {
   1019 		smaliParser.source_spec_return retval = new smaliParser.source_spec_return();
   1020 		retval.start = input.LT(1);
   1021 
   1022 		CommonTree root_0 = null;
   1023 
   1024 		Token SOURCE_DIRECTIVE16=null;
   1025 		Token STRING_LITERAL17=null;
   1026 
   1027 		CommonTree SOURCE_DIRECTIVE16_tree=null;
   1028 		CommonTree STRING_LITERAL17_tree=null;
   1029 		RewriteRuleTokenStream stream_STRING_LITERAL=new RewriteRuleTokenStream(adaptor,"token STRING_LITERAL");
   1030 		RewriteRuleTokenStream stream_SOURCE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token SOURCE_DIRECTIVE");
   1031 
   1032 		try {
   1033 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:483:3: ( SOURCE_DIRECTIVE STRING_LITERAL -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) )
   1034 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:483:5: SOURCE_DIRECTIVE STRING_LITERAL
   1035 			{
   1036 			SOURCE_DIRECTIVE16=(Token)match(input,SOURCE_DIRECTIVE,FOLLOW_SOURCE_DIRECTIVE_in_source_spec1355);
   1037 			stream_SOURCE_DIRECTIVE.add(SOURCE_DIRECTIVE16);
   1038 
   1039 			STRING_LITERAL17=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_source_spec1357);
   1040 			stream_STRING_LITERAL.add(STRING_LITERAL17);
   1041 
   1042 			// AST REWRITE
   1043 			// elements: STRING_LITERAL
   1044 			// token labels:
   1045 			// rule labels: retval
   1046 			// token list labels:
   1047 			// rule list labels:
   1048 			// wildcard labels:
   1049 			retval.tree = root_0;
   1050 			RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   1051 
   1052 			root_0 = (CommonTree)adaptor.nil();
   1053 			// 483:37: -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL )
   1054 			{
   1055 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:483:40: ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL )
   1056 				{
   1057 				CommonTree root_1 = (CommonTree)adaptor.nil();
   1058 				root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SOURCE, (retval.start), "I_SOURCE"), root_1);
   1059 				adaptor.addChild(root_1, stream_STRING_LITERAL.nextNode());
   1060 				adaptor.addChild(root_0, root_1);
   1061 				}
   1062 
   1063 			}
   1064 
   1065 
   1066 			retval.tree = root_0;
   1067 
   1068 			}
   1069 
   1070 			retval.stop = input.LT(-1);
   1071 
   1072 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   1073 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   1074 
   1075 		}
   1076 		catch (RecognitionException re) {
   1077 			reportError(re);
   1078 			recover(input,re);
   1079 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   1080 		}
   1081 		finally {
   1082 			// do for sure before leaving
   1083 		}
   1084 		return retval;
   1085 	}
   1086 	// $ANTLR end "source_spec"
   1087 
   1088 
   1089 	public static class access_list_return extends ParserRuleReturnScope {
   1090 		CommonTree tree;
   1091 		@Override
   1092 		public CommonTree getTree() { return tree; }
   1093 	};
   1094 
   1095 
   1096 	// $ANTLR start "access_list"
   1097 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:485:1: access_list : ( ACCESS_SPEC )* -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) ;
   1098 	public final smaliParser.access_list_return access_list() throws RecognitionException {
   1099 		smaliParser.access_list_return retval = new smaliParser.access_list_return();
   1100 		retval.start = input.LT(1);
   1101 
   1102 		CommonTree root_0 = null;
   1103 
   1104 		Token ACCESS_SPEC18=null;
   1105 
   1106 		CommonTree ACCESS_SPEC18_tree=null;
   1107 		RewriteRuleTokenStream stream_ACCESS_SPEC=new RewriteRuleTokenStream(adaptor,"token ACCESS_SPEC");
   1108 
   1109 		try {
   1110 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:3: ( ( ACCESS_SPEC )* -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) )
   1111 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:5: ( ACCESS_SPEC )*
   1112 			{
   1113 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:5: ( ACCESS_SPEC )*
   1114 			loop2:
   1115 			while (true) {
   1116 				int alt2=2;
   1117 				int LA2_0 = input.LA(1);
   1118 				if ( (LA2_0==ACCESS_SPEC) ) {
   1119 					int LA2_2 = input.LA(2);
   1120 					if ( (LA2_2==ACCESS_SPEC||LA2_2==ANNOTATION_VISIBILITY||LA2_2==BOOL_LITERAL||LA2_2==CLASS_DESCRIPTOR||LA2_2==DOUBLE_LITERAL_OR_ID||LA2_2==FLOAT_LITERAL_OR_ID||(LA2_2 >= INSTRUCTION_FORMAT10t && LA2_2 <= INSTRUCTION_FORMAT10x_ODEX)||LA2_2==INSTRUCTION_FORMAT11x||LA2_2==INSTRUCTION_FORMAT12x_OR_ID||(LA2_2 >= INSTRUCTION_FORMAT21c_FIELD && LA2_2 <= INSTRUCTION_FORMAT21c_TYPE)||LA2_2==INSTRUCTION_FORMAT21t||(LA2_2 >= INSTRUCTION_FORMAT22c_FIELD && LA2_2 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA2_2 >= INSTRUCTION_FORMAT22s_OR_ID && LA2_2 <= INSTRUCTION_FORMAT22t)||LA2_2==INSTRUCTION_FORMAT23x||(LA2_2 >= INSTRUCTION_FORMAT31i_OR_ID && LA2_2 <= INSTRUCTION_FORMAT31t)||(LA2_2 >= INSTRUCTION_FORMAT35c_METHOD && LA2_2 <= INSTRUCTION_FORMAT35ms_METHOD)||LA2_2==INSTRUCTION_FORMAT51l||LA2_2==MEMBER_NAME||(LA2_2 >= NEGATIVE_INTEGER_LITERAL && LA2_2 <= NULL_LITERAL)||(LA2_2 >= PARAM_LIST_OR_ID && LA2_2 <= PRIMITIVE_TYPE)||LA2_2==REGISTER||LA2_2==SIMPLE_NAME||(LA2_2 >= VERIFICATION_ERROR_TYPE && LA2_2 <= VOID_TYPE)) ) {
   1121 						alt2=1;
   1122 					}
   1123 
   1124 				}
   1125 
   1126 				switch (alt2) {
   1127 				case 1 :
   1128 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:5: ACCESS_SPEC
   1129 					{
   1130 					ACCESS_SPEC18=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_access_list1376);
   1131 					stream_ACCESS_SPEC.add(ACCESS_SPEC18);
   1132 
   1133 					}
   1134 					break;
   1135 
   1136 				default :
   1137 					break loop2;
   1138 				}
   1139 			}
   1140 
   1141 			// AST REWRITE
   1142 			// elements: ACCESS_SPEC
   1143 			// token labels:
   1144 			// rule labels: retval
   1145 			// token list labels:
   1146 			// rule list labels:
   1147 			// wildcard labels:
   1148 			retval.tree = root_0;
   1149 			RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   1150 
   1151 			root_0 = (CommonTree)adaptor.nil();
   1152 			// 486:18: -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* )
   1153 			{
   1154 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:21: ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* )
   1155 				{
   1156 				CommonTree root_1 = (CommonTree)adaptor.nil();
   1157 				root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ACCESS_LIST, (retval.start), "I_ACCESS_LIST"), root_1);
   1158 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:61: ( ACCESS_SPEC )*
   1159 				while ( stream_ACCESS_SPEC.hasNext() ) {
   1160 					adaptor.addChild(root_1, stream_ACCESS_SPEC.nextNode());
   1161 				}
   1162 				stream_ACCESS_SPEC.reset();
   1163 
   1164 				adaptor.addChild(root_0, root_1);
   1165 				}
   1166 
   1167 			}
   1168 
   1169 
   1170 			retval.tree = root_0;
   1171 
   1172 			}
   1173 
   1174 			retval.stop = input.LT(-1);
   1175 
   1176 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   1177 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   1178 
   1179 		}
   1180 		catch (RecognitionException re) {
   1181 			reportError(re);
   1182 			recover(input,re);
   1183 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   1184 		}
   1185 		finally {
   1186 			// do for sure before leaving
   1187 		}
   1188 		return retval;
   1189 	}
   1190 	// $ANTLR end "access_list"
   1191 
   1192 
   1193 	public static class field_return extends ParserRuleReturnScope {
   1194 		CommonTree tree;
   1195 		@Override
   1196 		public CommonTree getTree() { return tree; }
   1197 	};
   1198 
   1199 
   1200 	// $ANTLR start "field"
   1201 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:493:1: field : FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) ;
   1202 	public final smaliParser.field_return field() throws RecognitionException {
   1203 		smaliParser.field_return retval = new smaliParser.field_return();
   1204 		retval.start = input.LT(1);
   1205 
   1206 		CommonTree root_0 = null;
   1207 
   1208 		Token FIELD_DIRECTIVE19=null;
   1209 		Token COLON22=null;
   1210 		Token EQUAL24=null;
   1211 		Token END_FIELD_DIRECTIVE27=null;
   1212 		ParserRuleReturnScope access_list20 =null;
   1213 		ParserRuleReturnScope member_name21 =null;
   1214 		ParserRuleReturnScope nonvoid_type_descriptor23 =null;
   1215 		ParserRuleReturnScope literal25 =null;
   1216 		ParserRuleReturnScope annotation26 =null;
   1217 
   1218 		CommonTree FIELD_DIRECTIVE19_tree=null;
   1219 		CommonTree COLON22_tree=null;
   1220 		CommonTree EQUAL24_tree=null;
   1221 		CommonTree END_FIELD_DIRECTIVE27_tree=null;
   1222 		RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON");
   1223 		RewriteRuleTokenStream stream_FIELD_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token FIELD_DIRECTIVE");
   1224 		RewriteRuleTokenStream stream_EQUAL=new RewriteRuleTokenStream(adaptor,"token EQUAL");
   1225 		RewriteRuleTokenStream stream_END_FIELD_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_FIELD_DIRECTIVE");
   1226 		RewriteRuleSubtreeStream stream_annotation=new RewriteRuleSubtreeStream(adaptor,"rule annotation");
   1227 		RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor");
   1228 		RewriteRuleSubtreeStream stream_access_list=new RewriteRuleSubtreeStream(adaptor,"rule access_list");
   1229 		RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name");
   1230 		RewriteRuleSubtreeStream stream_literal=new RewriteRuleSubtreeStream(adaptor,"rule literal");
   1231 
   1232 		List<CommonTree> annotations = new ArrayList<CommonTree>();
   1233 		try {
   1234 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:3: ( FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) )
   1235 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:5: FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) )
   1236 			{
   1237 			FIELD_DIRECTIVE19=(Token)match(input,FIELD_DIRECTIVE,FOLLOW_FIELD_DIRECTIVE_in_field1407);
   1238 			stream_FIELD_DIRECTIVE.add(FIELD_DIRECTIVE19);
   1239 
   1240 			pushFollow(FOLLOW_access_list_in_field1409);
   1241 			access_list20=access_list();
   1242 			state._fsp--;
   1243 
   1244 			stream_access_list.add(access_list20.getTree());
   1245 			pushFollow(FOLLOW_member_name_in_field1411);
   1246 			member_name21=member_name();
   1247 			state._fsp--;
   1248 
   1249 			stream_member_name.add(member_name21.getTree());
   1250 			COLON22=(Token)match(input,COLON,FOLLOW_COLON_in_field1413);
   1251 			stream_COLON.add(COLON22);
   1252 
   1253 			pushFollow(FOLLOW_nonvoid_type_descriptor_in_field1415);
   1254 			nonvoid_type_descriptor23=nonvoid_type_descriptor();
   1255 			state._fsp--;
   1256 
   1257 			stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor23.getTree());
   1258 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:75: ( EQUAL literal )?
   1259 			int alt3=2;
   1260 			int LA3_0 = input.LA(1);
   1261 			if ( (LA3_0==EQUAL) ) {
   1262 				alt3=1;
   1263 			}
   1264 			switch (alt3) {
   1265 				case 1 :
   1266 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:76: EQUAL literal
   1267 					{
   1268 					EQUAL24=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_field1418);
   1269 					stream_EQUAL.add(EQUAL24);
   1270 
   1271 					pushFollow(FOLLOW_literal_in_field1420);
   1272 					literal25=literal();
   1273 					state._fsp--;
   1274 
   1275 					stream_literal.add(literal25.getTree());
   1276 					}
   1277 					break;
   1278 
   1279 			}
   1280 
   1281 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:5: ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) )
   1282 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:7: ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) )
   1283 			{
   1284 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:7: ({...}? annotation )*
   1285 			loop4:
   1286 			while (true) {
   1287 				int alt4=2;
   1288 				int LA4_0 = input.LA(1);
   1289 				if ( (LA4_0==ANNOTATION_DIRECTIVE) ) {
   1290 					int LA4_9 = input.LA(2);
   1291 					if ( ((input.LA(1) == ANNOTATION_DIRECTIVE)) ) {
   1292 						alt4=1;
   1293 					}
   1294 
   1295 				}
   1296 
   1297 				switch (alt4) {
   1298 				case 1 :
   1299 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:8: {...}? annotation
   1300 					{
   1301 					if ( !((input.LA(1) == ANNOTATION_DIRECTIVE)) ) {
   1302 						throw new FailedPredicateException(input, "field", "input.LA(1) == ANNOTATION_DIRECTIVE");
   1303 					}
   1304 					pushFollow(FOLLOW_annotation_in_field1433);
   1305 					annotation26=annotation();
   1306 					state._fsp--;
   1307 
   1308 					stream_annotation.add(annotation26.getTree());
   1309 					annotations.add((annotation26!=null?((CommonTree)annotation26.getTree()):null));
   1310 					}
   1311 					break;
   1312 
   1313 				default :
   1314 					break loop4;
   1315 				}
   1316 			}
   1317 
   1318 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:497:7: ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) )
   1319 			int alt5=2;
   1320 			int LA5_0 = input.LA(1);
   1321 			if ( (LA5_0==END_FIELD_DIRECTIVE) ) {
   1322 				alt5=1;
   1323 			}
   1324 			else if ( (LA5_0==EOF||LA5_0==ANNOTATION_DIRECTIVE||LA5_0==CLASS_DIRECTIVE||LA5_0==FIELD_DIRECTIVE||LA5_0==IMPLEMENTS_DIRECTIVE||LA5_0==METHOD_DIRECTIVE||LA5_0==SOURCE_DIRECTIVE||LA5_0==SUPER_DIRECTIVE) ) {
   1325 				alt5=2;
   1326 			}
   1327 
   1328 			else {
   1329 				NoViableAltException nvae =
   1330 					new NoViableAltException("", 5, 0, input);
   1331 				throw nvae;
   1332 			}
   1333 
   1334 			switch (alt5) {
   1335 				case 1 :
   1336 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:497:9: END_FIELD_DIRECTIVE
   1337 					{
   1338 					END_FIELD_DIRECTIVE27=(Token)match(input,END_FIELD_DIRECTIVE,FOLLOW_END_FIELD_DIRECTIVE_in_field1447);
   1339 					stream_END_FIELD_DIRECTIVE.add(END_FIELD_DIRECTIVE27);
   1340 
   1341 					// AST REWRITE
   1342 					// elements: access_list, nonvoid_type_descriptor, member_name, literal, annotation
   1343 					// token labels:
   1344 					// rule labels: retval
   1345 					// token list labels:
   1346 					// rule list labels:
   1347 					// wildcard labels:
   1348 					retval.tree = root_0;
   1349 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   1350 
   1351 					root_0 = (CommonTree)adaptor.nil();
   1352 					// 498:9: -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) )
   1353 					{
   1354 						// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:12: ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) )
   1355 						{
   1356 						CommonTree root_1 = (CommonTree)adaptor.nil();
   1357 						root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD, (retval.start), "I_FIELD"), root_1);
   1358 						adaptor.addChild(root_1, stream_member_name.nextTree());
   1359 						adaptor.addChild(root_1, stream_access_list.nextTree());
   1360 						// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:65: ^( I_FIELD_TYPE nonvoid_type_descriptor )
   1361 						{
   1362 						CommonTree root_2 = (CommonTree)adaptor.nil();
   1363 						root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_TYPE, "I_FIELD_TYPE"), root_2);
   1364 						adaptor.addChild(root_2, stream_nonvoid_type_descriptor.nextTree());
   1365 						adaptor.addChild(root_1, root_2);
   1366 						}
   1367 
   1368 						// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )?
   1369 						if ( stream_literal.hasNext() ) {
   1370 							// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:105: ^( I_FIELD_INITIAL_VALUE literal )
   1371 							{
   1372 							CommonTree root_2 = (CommonTree)adaptor.nil();
   1373 							root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_INITIAL_VALUE, "I_FIELD_INITIAL_VALUE"), root_2);
   1374 							adaptor.addChild(root_2, stream_literal.nextTree());
   1375 							adaptor.addChild(root_1, root_2);
   1376 							}
   1377 
   1378 						}
   1379 						stream_literal.reset();
   1380 
   1381 						// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:139: ^( I_ANNOTATIONS ( annotation )* )
   1382 						{
   1383 						CommonTree root_2 = (CommonTree)adaptor.nil();
   1384 						root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2);
   1385 						// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:155: ( annotation )*
   1386 						while ( stream_annotation.hasNext() ) {
   1387 							adaptor.addChild(root_2, stream_annotation.nextTree());
   1388 						}
   1389 						stream_annotation.reset();
   1390 
   1391 						adaptor.addChild(root_1, root_2);
   1392 						}
   1393 
   1394 						adaptor.addChild(root_0, root_1);
   1395 						}
   1396 
   1397 					}
   1398 
   1399 
   1400 					retval.tree = root_0;
   1401 
   1402 					}
   1403 					break;
   1404 				case 2 :
   1405 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:499:21:
   1406 					{
   1407 					smali_file_stack.peek().classAnnotations.addAll(annotations);
   1408 					// AST REWRITE
   1409 					// elements: access_list, nonvoid_type_descriptor, literal, member_name
   1410 					// token labels:
   1411 					// rule labels: retval
   1412 					// token list labels:
   1413 					// rule list labels:
   1414 					// wildcard labels:
   1415 					retval.tree = root_0;
   1416 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   1417 
   1418 					root_0 = (CommonTree)adaptor.nil();
   1419 					// 500:9: -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) )
   1420 					{
   1421 						// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:12: ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) )
   1422 						{
   1423 						CommonTree root_1 = (CommonTree)adaptor.nil();
   1424 						root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD, (retval.start), "I_FIELD"), root_1);
   1425 						adaptor.addChild(root_1, stream_member_name.nextTree());
   1426 						adaptor.addChild(root_1, stream_access_list.nextTree());
   1427 						// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:65: ^( I_FIELD_TYPE nonvoid_type_descriptor )
   1428 						{
   1429 						CommonTree root_2 = (CommonTree)adaptor.nil();
   1430 						root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_TYPE, "I_FIELD_TYPE"), root_2);
   1431 						adaptor.addChild(root_2, stream_nonvoid_type_descriptor.nextTree());
   1432 						adaptor.addChild(root_1, root_2);
   1433 						}
   1434 
   1435 						// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )?
   1436 						if ( stream_literal.hasNext() ) {
   1437 							// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:105: ^( I_FIELD_INITIAL_VALUE literal )
   1438 							{
   1439 							CommonTree root_2 = (CommonTree)adaptor.nil();
   1440 							root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_INITIAL_VALUE, "I_FIELD_INITIAL_VALUE"), root_2);
   1441 							adaptor.addChild(root_2, stream_literal.nextTree());
   1442 							adaptor.addChild(root_1, root_2);
   1443 							}
   1444 
   1445 						}
   1446 						stream_literal.reset();
   1447 
   1448 						// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:139: ^( I_ANNOTATIONS )
   1449 						{
   1450 						CommonTree root_2 = (CommonTree)adaptor.nil();
   1451 						root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2);
   1452 						adaptor.addChild(root_1, root_2);
   1453 						}
   1454 
   1455 						adaptor.addChild(root_0, root_1);
   1456 						}
   1457 
   1458 					}
   1459 
   1460 
   1461 					retval.tree = root_0;
   1462 
   1463 					}
   1464 					break;
   1465 
   1466 			}
   1467 
   1468 			}
   1469 
   1470 			}
   1471 
   1472 			retval.stop = input.LT(-1);
   1473 
   1474 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   1475 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   1476 
   1477 		}
   1478 		catch (RecognitionException re) {
   1479 			reportError(re);
   1480 			recover(input,re);
   1481 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   1482 		}
   1483 		finally {
   1484 			// do for sure before leaving
   1485 		}
   1486 		return retval;
   1487 	}
   1488 	// $ANTLR end "field"
   1489 
   1490 
   1491 	public static class method_return extends ParserRuleReturnScope {
   1492 		CommonTree tree;
   1493 		@Override
   1494 		public CommonTree getTree() { return tree; }
   1495 	};
   1496 
   1497 
   1498 	// $ANTLR start "method"
   1499 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:504:1: method : METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) ;
   1500 	public final smaliParser.method_return method() throws RecognitionException {
   1501 		smaliParser.method_return retval = new smaliParser.method_return();
   1502 		retval.start = input.LT(1);
   1503 
   1504 		CommonTree root_0 = null;
   1505 
   1506 		Token METHOD_DIRECTIVE28=null;
   1507 		Token END_METHOD_DIRECTIVE33=null;
   1508 		ParserRuleReturnScope access_list29 =null;
   1509 		ParserRuleReturnScope member_name30 =null;
   1510 		ParserRuleReturnScope method_prototype31 =null;
   1511 		ParserRuleReturnScope statements_and_directives32 =null;
   1512 
   1513 		CommonTree METHOD_DIRECTIVE28_tree=null;
   1514 		CommonTree END_METHOD_DIRECTIVE33_tree=null;
   1515 		RewriteRuleTokenStream stream_END_METHOD_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_METHOD_DIRECTIVE");
   1516 		RewriteRuleTokenStream stream_METHOD_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token METHOD_DIRECTIVE");
   1517 		RewriteRuleSubtreeStream stream_access_list=new RewriteRuleSubtreeStream(adaptor,"rule access_list");
   1518 		RewriteRuleSubtreeStream stream_method_prototype=new RewriteRuleSubtreeStream(adaptor,"rule method_prototype");
   1519 		RewriteRuleSubtreeStream stream_statements_and_directives=new RewriteRuleSubtreeStream(adaptor,"rule statements_and_directives");
   1520 		RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name");
   1521 
   1522 		try {
   1523 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:505:3: ( METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) )
   1524 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:505:5: METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE
   1525 			{
   1526 			METHOD_DIRECTIVE28=(Token)match(input,METHOD_DIRECTIVE,FOLLOW_METHOD_DIRECTIVE_in_method1558);
   1527 			stream_METHOD_DIRECTIVE.add(METHOD_DIRECTIVE28);
   1528 
   1529 			pushFollow(FOLLOW_access_list_in_method1560);
   1530 			access_list29=access_list();
   1531 			state._fsp--;
   1532 
   1533 			stream_access_list.add(access_list29.getTree());
   1534 			pushFollow(FOLLOW_member_name_in_method1562);
   1535 			member_name30=member_name();
   1536 			state._fsp--;
   1537 
   1538 			stream_member_name.add(member_name30.getTree());
   1539 			pushFollow(FOLLOW_method_prototype_in_method1564);
   1540 			method_prototype31=method_prototype();
   1541 			state._fsp--;
   1542 
   1543 			stream_method_prototype.add(method_prototype31.getTree());
   1544 			pushFollow(FOLLOW_statements_and_directives_in_method1566);
   1545 			statements_and_directives32=statements_and_directives();
   1546 			state._fsp--;
   1547 
   1548 			stream_statements_and_directives.add(statements_and_directives32.getTree());
   1549 			END_METHOD_DIRECTIVE33=(Token)match(input,END_METHOD_DIRECTIVE,FOLLOW_END_METHOD_DIRECTIVE_in_method1572);
   1550 			stream_END_METHOD_DIRECTIVE.add(END_METHOD_DIRECTIVE33);
   1551 
   1552 			// AST REWRITE
   1553 			// elements: method_prototype, statements_and_directives, access_list, member_name
   1554 			// token labels:
   1555 			// rule labels: retval
   1556 			// token list labels:
   1557 			// rule list labels:
   1558 			// wildcard labels:
   1559 			retval.tree = root_0;
   1560 			RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   1561 
   1562 			root_0 = (CommonTree)adaptor.nil();
   1563 			// 507:5: -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives )
   1564 			{
   1565 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:507:8: ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives )
   1566 				{
   1567 				CommonTree root_1 = (CommonTree)adaptor.nil();
   1568 				root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHOD, (retval.start), "I_METHOD"), root_1);
   1569 				adaptor.addChild(root_1, stream_member_name.nextTree());
   1570 				adaptor.addChild(root_1, stream_method_prototype.nextTree());
   1571 				adaptor.addChild(root_1, stream_access_list.nextTree());
   1572 				adaptor.addChild(root_1, stream_statements_and_directives.nextTree());
   1573 				adaptor.addChild(root_0, root_1);
   1574 				}
   1575 
   1576 			}
   1577 
   1578 
   1579 			retval.tree = root_0;
   1580 
   1581 			}
   1582 
   1583 			retval.stop = input.LT(-1);
   1584 
   1585 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   1586 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   1587 
   1588 		}
   1589 		catch (RecognitionException re) {
   1590 			reportError(re);
   1591 			recover(input,re);
   1592 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   1593 		}
   1594 		finally {
   1595 			// do for sure before leaving
   1596 		}
   1597 		return retval;
   1598 	}
   1599 	// $ANTLR end "method"
   1600 
   1601 
   1602 	protected static class statements_and_directives_scope {
   1603 		boolean hasRegistersDirective;
   1604 		List<CommonTree> methodAnnotations;
   1605 	}
   1606 	protected Stack<statements_and_directives_scope> statements_and_directives_stack = new Stack<statements_and_directives_scope>();
   1607 
   1608 	public static class statements_and_directives_return extends ParserRuleReturnScope {
   1609 		CommonTree tree;
   1610 		@Override
   1611 		public CommonTree getTree() { return tree; }
   1612 	};
   1613 
   1614 
   1615 	// $ANTLR start "statements_and_directives"
   1616 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:509:1: statements_and_directives : ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) ;
   1617 	public final smaliParser.statements_and_directives_return statements_and_directives() throws RecognitionException {
   1618 		statements_and_directives_stack.push(new statements_and_directives_scope());
   1619 		smaliParser.statements_and_directives_return retval = new smaliParser.statements_and_directives_return();
   1620 		retval.start = input.LT(1);
   1621 
   1622 		CommonTree root_0 = null;
   1623 
   1624 		ParserRuleReturnScope ordered_method_item34 =null;
   1625 		ParserRuleReturnScope registers_directive35 =null;
   1626 		ParserRuleReturnScope catch_directive36 =null;
   1627 		ParserRuleReturnScope catchall_directive37 =null;
   1628 		ParserRuleReturnScope parameter_directive38 =null;
   1629 		ParserRuleReturnScope annotation39 =null;
   1630 
   1631 		RewriteRuleSubtreeStream stream_catchall_directive=new RewriteRuleSubtreeStream(adaptor,"rule catchall_directive");
   1632 		RewriteRuleSubtreeStream stream_annotation=new RewriteRuleSubtreeStream(adaptor,"rule annotation");
   1633 		RewriteRuleSubtreeStream stream_ordered_method_item=new RewriteRuleSubtreeStream(adaptor,"rule ordered_method_item");
   1634 		RewriteRuleSubtreeStream stream_catch_directive=new RewriteRuleSubtreeStream(adaptor,"rule catch_directive");
   1635 		RewriteRuleSubtreeStream stream_registers_directive=new RewriteRuleSubtreeStream(adaptor,"rule registers_directive");
   1636 		RewriteRuleSubtreeStream stream_parameter_directive=new RewriteRuleSubtreeStream(adaptor,"rule parameter_directive");
   1637 
   1638 		try {
   1639 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:515:3: ( ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) )
   1640 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:515:5: ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )*
   1641 			{
   1642 
   1643 			      statements_and_directives_stack.peek().hasRegistersDirective = false;
   1644 			      statements_and_directives_stack.peek().methodAnnotations = new ArrayList<CommonTree>();
   1645 
   1646 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:519:5: ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )*
   1647 			loop6:
   1648 			while (true) {
   1649 				int alt6=7;
   1650 				switch ( input.LA(1) ) {
   1651 				case ARRAY_DATA_DIRECTIVE:
   1652 				case COLON:
   1653 				case END_LOCAL_DIRECTIVE:
   1654 				case EPILOGUE_DIRECTIVE:
   1655 				case INSTRUCTION_FORMAT10t:
   1656 				case INSTRUCTION_FORMAT10x:
   1657 				case INSTRUCTION_FORMAT10x_ODEX:
   1658 				case INSTRUCTION_FORMAT11n:
   1659 				case INSTRUCTION_FORMAT11x:
   1660 				case INSTRUCTION_FORMAT12x:
   1661 				case INSTRUCTION_FORMAT12x_OR_ID:
   1662 				case INSTRUCTION_FORMAT20bc:
   1663 				case INSTRUCTION_FORMAT20t:
   1664 				case INSTRUCTION_FORMAT21c_FIELD:
   1665 				case INSTRUCTION_FORMAT21c_FIELD_ODEX:
   1666 				case INSTRUCTION_FORMAT21c_STRING:
   1667 				case INSTRUCTION_FORMAT21c_TYPE:
   1668 				case INSTRUCTION_FORMAT21ih:
   1669 				case INSTRUCTION_FORMAT21lh:
   1670 				case INSTRUCTION_FORMAT21s:
   1671 				case INSTRUCTION_FORMAT21t:
   1672 				case INSTRUCTION_FORMAT22b:
   1673 				case INSTRUCTION_FORMAT22c_FIELD:
   1674 				case INSTRUCTION_FORMAT22c_FIELD_ODEX:
   1675 				case INSTRUCTION_FORMAT22c_TYPE:
   1676 				case INSTRUCTION_FORMAT22cs_FIELD:
   1677 				case INSTRUCTION_FORMAT22s:
   1678 				case INSTRUCTION_FORMAT22s_OR_ID:
   1679 				case INSTRUCTION_FORMAT22t:
   1680 				case INSTRUCTION_FORMAT22x:
   1681 				case INSTRUCTION_FORMAT23x:
   1682 				case INSTRUCTION_FORMAT30t:
   1683 				case INSTRUCTION_FORMAT31c:
   1684 				case INSTRUCTION_FORMAT31i:
   1685 				case INSTRUCTION_FORMAT31i_OR_ID:
   1686 				case INSTRUCTION_FORMAT31t:
   1687 				case INSTRUCTION_FORMAT32x:
   1688 				case INSTRUCTION_FORMAT35c_METHOD:
   1689 				case INSTRUCTION_FORMAT35c_METHOD_ODEX:
   1690 				case INSTRUCTION_FORMAT35c_TYPE:
   1691 				case INSTRUCTION_FORMAT35mi_METHOD:
   1692 				case INSTRUCTION_FORMAT35ms_METHOD:
   1693 				case INSTRUCTION_FORMAT3rc_METHOD:
   1694 				case INSTRUCTION_FORMAT3rc_METHOD_ODEX:
   1695 				case INSTRUCTION_FORMAT3rc_TYPE:
   1696 				case INSTRUCTION_FORMAT3rmi_METHOD:
   1697 				case INSTRUCTION_FORMAT3rms_METHOD:
   1698 				case INSTRUCTION_FORMAT51l:
   1699 				case LINE_DIRECTIVE:
   1700 				case LOCAL_DIRECTIVE:
   1701 				case PACKED_SWITCH_DIRECTIVE:
   1702 				case PROLOGUE_DIRECTIVE:
   1703 				case RESTART_LOCAL_DIRECTIVE:
   1704 				case SOURCE_DIRECTIVE:
   1705 				case SPARSE_SWITCH_DIRECTIVE:
   1706 					{
   1707 					alt6=1;
   1708 					}
   1709 					break;
   1710 				case LOCALS_DIRECTIVE:
   1711 				case REGISTERS_DIRECTIVE:
   1712 					{
   1713 					alt6=2;
   1714 					}
   1715 					break;
   1716 				case CATCH_DIRECTIVE:
   1717 					{
   1718 					alt6=3;
   1719 					}
   1720 					break;
   1721 				case CATCHALL_DIRECTIVE:
   1722 					{
   1723 					alt6=4;
   1724 					}
   1725 					break;
   1726 				case PARAMETER_DIRECTIVE:
   1727 					{
   1728 					alt6=5;
   1729 					}
   1730 					break;
   1731 				case ANNOTATION_DIRECTIVE:
   1732 					{
   1733 					alt6=6;
   1734 					}
   1735 					break;
   1736 				}
   1737 				switch (alt6) {
   1738 				case 1 :
   1739 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:519:7: ordered_method_item
   1740 					{
   1741 					pushFollow(FOLLOW_ordered_method_item_in_statements_and_directives1617);
   1742 					ordered_method_item34=ordered_method_item();
   1743 					state._fsp--;
   1744 
   1745 					stream_ordered_method_item.add(ordered_method_item34.getTree());
   1746 					}
   1747 					break;
   1748 				case 2 :
   1749 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:520:7: registers_directive
   1750 					{
   1751 					pushFollow(FOLLOW_registers_directive_in_statements_and_directives1625);
   1752 					registers_directive35=registers_directive();
   1753 					state._fsp--;
   1754 
   1755 					stream_registers_directive.add(registers_directive35.getTree());
   1756 					}
   1757 					break;
   1758 				case 3 :
   1759 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:521:7: catch_directive
   1760 					{
   1761 					pushFollow(FOLLOW_catch_directive_in_statements_and_directives1633);
   1762 					catch_directive36=catch_directive();
   1763 					state._fsp--;
   1764 
   1765 					stream_catch_directive.add(catch_directive36.getTree());
   1766 					}
   1767 					break;
   1768 				case 4 :
   1769 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:522:7: catchall_directive
   1770 					{
   1771 					pushFollow(FOLLOW_catchall_directive_in_statements_and_directives1641);
   1772 					catchall_directive37=catchall_directive();
   1773 					state._fsp--;
   1774 
   1775 					stream_catchall_directive.add(catchall_directive37.getTree());
   1776 					}
   1777 					break;
   1778 				case 5 :
   1779 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:523:7: parameter_directive
   1780 					{
   1781 					pushFollow(FOLLOW_parameter_directive_in_statements_and_directives1649);
   1782 					parameter_directive38=parameter_directive();
   1783 					state._fsp--;
   1784 
   1785 					stream_parameter_directive.add(parameter_directive38.getTree());
   1786 					}
   1787 					break;
   1788 				case 6 :
   1789 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:524:7: annotation
   1790 					{
   1791 					pushFollow(FOLLOW_annotation_in_statements_and_directives1657);
   1792 					annotation39=annotation();
   1793 					state._fsp--;
   1794 
   1795 					stream_annotation.add(annotation39.getTree());
   1796 					statements_and_directives_stack.peek().methodAnnotations.add((annotation39!=null?((CommonTree)annotation39.getTree()):null));
   1797 					}
   1798 					break;
   1799 
   1800 				default :
   1801 					break loop6;
   1802 				}
   1803 			}
   1804 
   1805 			// AST REWRITE
   1806 			// elements: ordered_method_item, catchall_directive, catch_directive, registers_directive, parameter_directive
   1807 			// token labels:
   1808 			// rule labels: retval
   1809 			// token list labels:
   1810 			// rule list labels:
   1811 			// wildcard labels:
   1812 			retval.tree = root_0;
   1813 			RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   1814 
   1815 			root_0 = (CommonTree)adaptor.nil();
   1816 			// 526:5: -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* )
   1817 			{
   1818 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:526:8: ( registers_directive )?
   1819 				if ( stream_registers_directive.hasNext() ) {
   1820 					adaptor.addChild(root_0, stream_registers_directive.nextTree());
   1821 				}
   1822 				stream_registers_directive.reset();
   1823 
   1824 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:527:8: ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* )
   1825 				{
   1826 				CommonTree root_1 = (CommonTree)adaptor.nil();
   1827 				root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ORDERED_METHOD_ITEMS, "I_ORDERED_METHOD_ITEMS"), root_1);
   1828 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:527:33: ( ordered_method_item )*
   1829 				while ( stream_ordered_method_item.hasNext() ) {
   1830 					adaptor.addChild(root_1, stream_ordered_method_item.nextTree());
   1831 				}
   1832 				stream_ordered_method_item.reset();
   1833 
   1834 				adaptor.addChild(root_0, root_1);
   1835 				}
   1836 
   1837 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:528:8: ^( I_CATCHES ( catch_directive )* ( catchall_directive )* )
   1838 				{
   1839 				CommonTree root_1 = (CommonTree)adaptor.nil();
   1840 				root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_CATCHES, "I_CATCHES"), root_1);
   1841 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:528:20: ( catch_directive )*
   1842 				while ( stream_catch_directive.hasNext() ) {
   1843 					adaptor.addChild(root_1, stream_catch_directive.nextTree());
   1844 				}
   1845 				stream_catch_directive.reset();
   1846 
   1847 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:528:37: ( catchall_directive )*
   1848 				while ( stream_catchall_directive.hasNext() ) {
   1849 					adaptor.addChild(root_1, stream_catchall_directive.nextTree());
   1850 				}
   1851 				stream_catchall_directive.reset();
   1852 
   1853 				adaptor.addChild(root_0, root_1);
   1854 				}
   1855 
   1856 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:529:8: ^( I_PARAMETERS ( parameter_directive )* )
   1857 				{
   1858 				CommonTree root_1 = (CommonTree)adaptor.nil();
   1859 				root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_PARAMETERS, "I_PARAMETERS"), root_1);
   1860 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:529:23: ( parameter_directive )*
   1861 				while ( stream_parameter_directive.hasNext() ) {
   1862 					adaptor.addChild(root_1, stream_parameter_directive.nextTree());
   1863 				}
   1864 				stream_parameter_directive.reset();
   1865 
   1866 				adaptor.addChild(root_0, root_1);
   1867 				}
   1868 
   1869 				adaptor.addChild(root_0, buildTree(I_ANNOTATIONS, "I_ANNOTATIONS", statements_and_directives_stack.peek().methodAnnotations));
   1870 			}
   1871 
   1872 
   1873 			retval.tree = root_0;
   1874 
   1875 			}
   1876 
   1877 			retval.stop = input.LT(-1);
   1878 
   1879 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   1880 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   1881 
   1882 		}
   1883 		catch (RecognitionException re) {
   1884 			reportError(re);
   1885 			recover(input,re);
   1886 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   1887 		}
   1888 		finally {
   1889 			// do for sure before leaving
   1890 			statements_and_directives_stack.pop();
   1891 		}
   1892 		return retval;
   1893 	}
   1894 	// $ANTLR end "statements_and_directives"
   1895 
   1896 
   1897 	public static class ordered_method_item_return extends ParserRuleReturnScope {
   1898 		CommonTree tree;
   1899 		@Override
   1900 		public CommonTree getTree() { return tree; }
   1901 	};
   1902 
   1903 
   1904 	// $ANTLR start "ordered_method_item"
   1905 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:533:1: ordered_method_item : ( label | instruction | debug_directive );
   1906 	public final smaliParser.ordered_method_item_return ordered_method_item() throws RecognitionException {
   1907 		smaliParser.ordered_method_item_return retval = new smaliParser.ordered_method_item_return();
   1908 		retval.start = input.LT(1);
   1909 
   1910 		CommonTree root_0 = null;
   1911 
   1912 		ParserRuleReturnScope label40 =null;
   1913 		ParserRuleReturnScope instruction41 =null;
   1914 		ParserRuleReturnScope debug_directive42 =null;
   1915 
   1916 
   1917 		try {
   1918 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:534:3: ( label | instruction | debug_directive )
   1919 			int alt7=3;
   1920 			switch ( input.LA(1) ) {
   1921 			case COLON:
   1922 				{
   1923 				alt7=1;
   1924 				}
   1925 				break;
   1926 			case ARRAY_DATA_DIRECTIVE:
   1927 			case INSTRUCTION_FORMAT10t:
   1928 			case INSTRUCTION_FORMAT10x:
   1929 			case INSTRUCTION_FORMAT10x_ODEX:
   1930 			case INSTRUCTION_FORMAT11n:
   1931 			case INSTRUCTION_FORMAT11x:
   1932 			case INSTRUCTION_FORMAT12x:
   1933 			case INSTRUCTION_FORMAT12x_OR_ID:
   1934 			case INSTRUCTION_FORMAT20bc:
   1935 			case INSTRUCTION_FORMAT20t:
   1936 			case INSTRUCTION_FORMAT21c_FIELD:
   1937 			case INSTRUCTION_FORMAT21c_FIELD_ODEX:
   1938 			case INSTRUCTION_FORMAT21c_STRING:
   1939 			case INSTRUCTION_FORMAT21c_TYPE:
   1940 			case INSTRUCTION_FORMAT21ih:
   1941 			case INSTRUCTION_FORMAT21lh:
   1942 			case INSTRUCTION_FORMAT21s:
   1943 			case INSTRUCTION_FORMAT21t:
   1944 			case INSTRUCTION_FORMAT22b:
   1945 			case INSTRUCTION_FORMAT22c_FIELD:
   1946 			case INSTRUCTION_FORMAT22c_FIELD_ODEX:
   1947 			case INSTRUCTION_FORMAT22c_TYPE:
   1948 			case INSTRUCTION_FORMAT22cs_FIELD:
   1949 			case INSTRUCTION_FORMAT22s:
   1950 			case INSTRUCTION_FORMAT22s_OR_ID:
   1951 			case INSTRUCTION_FORMAT22t:
   1952 			case INSTRUCTION_FORMAT22x:
   1953 			case INSTRUCTION_FORMAT23x:
   1954 			case INSTRUCTION_FORMAT30t:
   1955 			case INSTRUCTION_FORMAT31c:
   1956 			case INSTRUCTION_FORMAT31i:
   1957 			case INSTRUCTION_FORMAT31i_OR_ID:
   1958 			case INSTRUCTION_FORMAT31t:
   1959 			case INSTRUCTION_FORMAT32x:
   1960 			case INSTRUCTION_FORMAT35c_METHOD:
   1961 			case INSTRUCTION_FORMAT35c_METHOD_ODEX:
   1962 			case INSTRUCTION_FORMAT35c_TYPE:
   1963 			case INSTRUCTION_FORMAT35mi_METHOD:
   1964 			case INSTRUCTION_FORMAT35ms_METHOD:
   1965 			case INSTRUCTION_FORMAT3rc_METHOD:
   1966 			case INSTRUCTION_FORMAT3rc_METHOD_ODEX:
   1967 			case INSTRUCTION_FORMAT3rc_TYPE:
   1968 			case INSTRUCTION_FORMAT3rmi_METHOD:
   1969 			case INSTRUCTION_FORMAT3rms_METHOD:
   1970 			case INSTRUCTION_FORMAT51l:
   1971 			case PACKED_SWITCH_DIRECTIVE:
   1972 			case SPARSE_SWITCH_DIRECTIVE:
   1973 				{
   1974 				alt7=2;
   1975 				}
   1976 				break;
   1977 			case END_LOCAL_DIRECTIVE:
   1978 			case EPILOGUE_DIRECTIVE:
   1979 			case LINE_DIRECTIVE:
   1980 			case LOCAL_DIRECTIVE:
   1981 			case PROLOGUE_DIRECTIVE:
   1982 			case RESTART_LOCAL_DIRECTIVE:
   1983 			case SOURCE_DIRECTIVE:
   1984 				{
   1985 				alt7=3;
   1986 				}
   1987 				break;
   1988 			default:
   1989 				NoViableAltException nvae =
   1990 					new NoViableAltException("", 7, 0, input);
   1991 				throw nvae;
   1992 			}
   1993 			switch (alt7) {
   1994 				case 1 :
   1995 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:534:5: label
   1996 					{
   1997 					root_0 = (CommonTree)adaptor.nil();
   1998 
   1999 
   2000 					pushFollow(FOLLOW_label_in_ordered_method_item1742);
   2001 					label40=label();
   2002 					state._fsp--;
   2003 
   2004 					adaptor.addChild(root_0, label40.getTree());
   2005 
   2006 					}
   2007 					break;
   2008 				case 2 :
   2009 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:535:5: instruction
   2010 					{
   2011 					root_0 = (CommonTree)adaptor.nil();
   2012 
   2013 
   2014 					pushFollow(FOLLOW_instruction_in_ordered_method_item1748);
   2015 					instruction41=instruction();
   2016 					state._fsp--;
   2017 
   2018 					adaptor.addChild(root_0, instruction41.getTree());
   2019 
   2020 					}
   2021 					break;
   2022 				case 3 :
   2023 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:536:5: debug_directive
   2024 					{
   2025 					root_0 = (CommonTree)adaptor.nil();
   2026 
   2027 
   2028 					pushFollow(FOLLOW_debug_directive_in_ordered_method_item1754);
   2029 					debug_directive42=debug_directive();
   2030 					state._fsp--;
   2031 
   2032 					adaptor.addChild(root_0, debug_directive42.getTree());
   2033 
   2034 					}
   2035 					break;
   2036 
   2037 			}
   2038 			retval.stop = input.LT(-1);
   2039 
   2040 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   2041 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   2042 
   2043 		}
   2044 		catch (RecognitionException re) {
   2045 			reportError(re);
   2046 			recover(input,re);
   2047 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   2048 		}
   2049 		finally {
   2050 			// do for sure before leaving
   2051 		}
   2052 		return retval;
   2053 	}
   2054 	// $ANTLR end "ordered_method_item"
   2055 
   2056 
   2057 	public static class registers_directive_return extends ParserRuleReturnScope {
   2058 		CommonTree tree;
   2059 		@Override
   2060 		public CommonTree getTree() { return tree; }
   2061 	};
   2062 
   2063 
   2064 	// $ANTLR start "registers_directive"
   2065 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:538:1: registers_directive : (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) ;
   2066 	public final smaliParser.registers_directive_return registers_directive() throws RecognitionException {
   2067 		smaliParser.registers_directive_return retval = new smaliParser.registers_directive_return();
   2068 		retval.start = input.LT(1);
   2069 
   2070 		CommonTree root_0 = null;
   2071 
   2072 		Token directive=null;
   2073 		ParserRuleReturnScope regCount =null;
   2074 		ParserRuleReturnScope regCount2 =null;
   2075 
   2076 		CommonTree directive_tree=null;
   2077 		RewriteRuleTokenStream stream_REGISTERS_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token REGISTERS_DIRECTIVE");
   2078 		RewriteRuleTokenStream stream_LOCALS_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token LOCALS_DIRECTIVE");
   2079 		RewriteRuleSubtreeStream stream_integral_literal=new RewriteRuleSubtreeStream(adaptor,"rule integral_literal");
   2080 
   2081 		try {
   2082 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:539:3: ( (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) )
   2083 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:539:5: (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) )
   2084 			{
   2085 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:539:5: (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) )
   2086 			int alt8=2;
   2087 			int LA8_0 = input.LA(1);
   2088 			if ( (LA8_0==REGISTERS_DIRECTIVE) ) {
   2089 				alt8=1;
   2090 			}
   2091 			else if ( (LA8_0==LOCALS_DIRECTIVE) ) {
   2092 				alt8=2;
   2093 			}
   2094 
   2095 			else {
   2096 				NoViableAltException nvae =
   2097 					new NoViableAltException("", 8, 0, input);
   2098 				throw nvae;
   2099 			}
   2100 
   2101 			switch (alt8) {
   2102 				case 1 :
   2103 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:540:7: directive= REGISTERS_DIRECTIVE regCount= integral_literal
   2104 					{
   2105 					directive=(Token)match(input,REGISTERS_DIRECTIVE,FOLLOW_REGISTERS_DIRECTIVE_in_registers_directive1774);
   2106 					stream_REGISTERS_DIRECTIVE.add(directive);
   2107 
   2108 					pushFollow(FOLLOW_integral_literal_in_registers_directive1778);
   2109 					regCount=integral_literal();
   2110 					state._fsp--;
   2111 
   2112 					stream_integral_literal.add(regCount.getTree());
   2113 					// AST REWRITE
   2114 					// elements: regCount
   2115 					// token labels:
   2116 					// rule labels: retval, regCount
   2117 					// token list labels:
   2118 					// rule list labels:
   2119 					// wildcard labels:
   2120 					retval.tree = root_0;
   2121 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2122 					RewriteRuleSubtreeStream stream_regCount=new RewriteRuleSubtreeStream(adaptor,"rule regCount",regCount!=null?regCount.getTree():null);
   2123 
   2124 					root_0 = (CommonTree)adaptor.nil();
   2125 					// 540:63: -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount)
   2126 					{
   2127 						// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:540:66: ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount)
   2128 						{
   2129 						CommonTree root_1 = (CommonTree)adaptor.nil();
   2130 						root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTERS, directive, "I_REGISTERS"), root_1);
   2131 						adaptor.addChild(root_1, stream_regCount.nextTree());
   2132 						adaptor.addChild(root_0, root_1);
   2133 						}
   2134 
   2135 					}
   2136 
   2137 
   2138 					retval.tree = root_0;
   2139 
   2140 					}
   2141 					break;
   2142 				case 2 :
   2143 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:541:7: directive= LOCALS_DIRECTIVE regCount2= integral_literal
   2144 					{
   2145 					directive=(Token)match(input,LOCALS_DIRECTIVE,FOLLOW_LOCALS_DIRECTIVE_in_registers_directive1798);
   2146 					stream_LOCALS_DIRECTIVE.add(directive);
   2147 
   2148 					pushFollow(FOLLOW_integral_literal_in_registers_directive1802);
   2149 					regCount2=integral_literal();
   2150 					state._fsp--;
   2151 
   2152 					stream_integral_literal.add(regCount2.getTree());
   2153 					// AST REWRITE
   2154 					// elements: regCount2
   2155 					// token labels:
   2156 					// rule labels: retval, regCount2
   2157 					// token list labels:
   2158 					// rule list labels:
   2159 					// wildcard labels:
   2160 					retval.tree = root_0;
   2161 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2162 					RewriteRuleSubtreeStream stream_regCount2=new RewriteRuleSubtreeStream(adaptor,"rule regCount2",regCount2!=null?regCount2.getTree():null);
   2163 
   2164 					root_0 = (CommonTree)adaptor.nil();
   2165 					// 541:61: -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2)
   2166 					{
   2167 						// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:541:64: ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2)
   2168 						{
   2169 						CommonTree root_1 = (CommonTree)adaptor.nil();
   2170 						root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_LOCALS, directive, "I_LOCALS"), root_1);
   2171 						adaptor.addChild(root_1, stream_regCount2.nextTree());
   2172 						adaptor.addChild(root_0, root_1);
   2173 						}
   2174 
   2175 					}
   2176 
   2177 
   2178 					retval.tree = root_0;
   2179 
   2180 					}
   2181 					break;
   2182 
   2183 			}
   2184 
   2185 
   2186 			      if (statements_and_directives_stack.peek().hasRegistersDirective) {
   2187 			        throw new SemanticException(input, directive, "There can only be a single .registers or .locals directive in a method");
   2188 			      }
   2189 			      statements_and_directives_stack.peek().hasRegistersDirective =true;
   2190 
   2191 			}
   2192 
   2193 			retval.stop = input.LT(-1);
   2194 
   2195 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   2196 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   2197 
   2198 		}
   2199 		catch (RecognitionException re) {
   2200 			reportError(re);
   2201 			recover(input,re);
   2202 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   2203 		}
   2204 		finally {
   2205 			// do for sure before leaving
   2206 		}
   2207 		return retval;
   2208 	}
   2209 	// $ANTLR end "registers_directive"
   2210 
   2211 
   2212 	public static class simple_name_return extends ParserRuleReturnScope {
   2213 		CommonTree tree;
   2214 		@Override
   2215 		public CommonTree getTree() { return tree; }
   2216 	};
   2217 
   2218 
   2219 	// $ANTLR start "simple_name"
   2220 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:552:1: simple_name : ( SIMPLE_NAME | ACCESS_SPEC -> SIMPLE_NAME[$ACCESS_SPEC] | VERIFICATION_ERROR_TYPE -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] | POSITIVE_INTEGER_LITERAL -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] | FLOAT_LITERAL_OR_ID -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] | DOUBLE_LITERAL_OR_ID -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] | BOOL_LITERAL -> SIMPLE_NAME[$BOOL_LITERAL] | NULL_LITERAL -> SIMPLE_NAME[$NULL_LITERAL] | REGISTER -> SIMPLE_NAME[$REGISTER] | PARAM_LIST_OR_ID -> SIMPLE_NAME[$PARAM_LIST_OR_ID] | PRIMITIVE_TYPE -> SIMPLE_NAME[$PRIMITIVE_TYPE] | VOID_TYPE -> SIMPLE_NAME[$VOID_TYPE] | ANNOTATION_VISIBILITY -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] | INSTRUCTION_FORMAT10t -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] | INSTRUCTION_FORMAT10x -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] | INSTRUCTION_FORMAT10x_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] | INSTRUCTION_FORMAT11x -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] | INSTRUCTION_FORMAT12x_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] | INSTRUCTION_FORMAT21c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] | INSTRUCTION_FORMAT21c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] | INSTRUCTION_FORMAT21c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] | INSTRUCTION_FORMAT21c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] | INSTRUCTION_FORMAT21t -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] | INSTRUCTION_FORMAT22c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] | INSTRUCTION_FORMAT22c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] | INSTRUCTION_FORMAT22c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] | INSTRUCTION_FORMAT22cs_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] | INSTRUCTION_FORMAT22s_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] | INSTRUCTION_FORMAT22t -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] | INSTRUCTION_FORMAT23x -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] | INSTRUCTION_FORMAT31i_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] | INSTRUCTION_FORMAT31t -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] | INSTRUCTION_FORMAT35c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] | INSTRUCTION_FORMAT35c_METHOD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] | INSTRUCTION_FORMAT35c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] | INSTRUCTION_FORMAT35mi_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] | INSTRUCTION_FORMAT35ms_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] | INSTRUCTION_FORMAT51l -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] );
   2221 	public final smaliParser.simple_name_return simple_name() throws RecognitionException {
   2222 		smaliParser.simple_name_return retval = new smaliParser.simple_name_return();
   2223 		retval.start = input.LT(1);
   2224 
   2225 		CommonTree root_0 = null;
   2226 
   2227 		Token SIMPLE_NAME43=null;
   2228 		Token ACCESS_SPEC44=null;
   2229 		Token VERIFICATION_ERROR_TYPE45=null;
   2230 		Token POSITIVE_INTEGER_LITERAL46=null;
   2231 		Token NEGATIVE_INTEGER_LITERAL47=null;
   2232 		Token FLOAT_LITERAL_OR_ID48=null;
   2233 		Token DOUBLE_LITERAL_OR_ID49=null;
   2234 		Token BOOL_LITERAL50=null;
   2235 		Token NULL_LITERAL51=null;
   2236 		Token REGISTER52=null;
   2237 		Token PARAM_LIST_OR_ID53=null;
   2238 		Token PRIMITIVE_TYPE54=null;
   2239 		Token VOID_TYPE55=null;
   2240 		Token ANNOTATION_VISIBILITY56=null;
   2241 		Token INSTRUCTION_FORMAT10t57=null;
   2242 		Token INSTRUCTION_FORMAT10x58=null;
   2243 		Token INSTRUCTION_FORMAT10x_ODEX59=null;
   2244 		Token INSTRUCTION_FORMAT11x60=null;
   2245 		Token INSTRUCTION_FORMAT12x_OR_ID61=null;
   2246 		Token INSTRUCTION_FORMAT21c_FIELD62=null;
   2247 		Token INSTRUCTION_FORMAT21c_FIELD_ODEX63=null;
   2248 		Token INSTRUCTION_FORMAT21c_STRING64=null;
   2249 		Token INSTRUCTION_FORMAT21c_TYPE65=null;
   2250 		Token INSTRUCTION_FORMAT21t66=null;
   2251 		Token INSTRUCTION_FORMAT22c_FIELD67=null;
   2252 		Token INSTRUCTION_FORMAT22c_FIELD_ODEX68=null;
   2253 		Token INSTRUCTION_FORMAT22c_TYPE69=null;
   2254 		Token INSTRUCTION_FORMAT22cs_FIELD70=null;
   2255 		Token INSTRUCTION_FORMAT22s_OR_ID71=null;
   2256 		Token INSTRUCTION_FORMAT22t72=null;
   2257 		Token INSTRUCTION_FORMAT23x73=null;
   2258 		Token INSTRUCTION_FORMAT31i_OR_ID74=null;
   2259 		Token INSTRUCTION_FORMAT31t75=null;
   2260 		Token INSTRUCTION_FORMAT35c_METHOD76=null;
   2261 		Token INSTRUCTION_FORMAT35c_METHOD_ODEX77=null;
   2262 		Token INSTRUCTION_FORMAT35c_TYPE78=null;
   2263 		Token INSTRUCTION_FORMAT35mi_METHOD79=null;
   2264 		Token INSTRUCTION_FORMAT35ms_METHOD80=null;
   2265 		Token INSTRUCTION_FORMAT51l81=null;
   2266 
   2267 		CommonTree SIMPLE_NAME43_tree=null;
   2268 		CommonTree ACCESS_SPEC44_tree=null;
   2269 		CommonTree VERIFICATION_ERROR_TYPE45_tree=null;
   2270 		CommonTree POSITIVE_INTEGER_LITERAL46_tree=null;
   2271 		CommonTree NEGATIVE_INTEGER_LITERAL47_tree=null;
   2272 		CommonTree FLOAT_LITERAL_OR_ID48_tree=null;
   2273 		CommonTree DOUBLE_LITERAL_OR_ID49_tree=null;
   2274 		CommonTree BOOL_LITERAL50_tree=null;
   2275 		CommonTree NULL_LITERAL51_tree=null;
   2276 		CommonTree REGISTER52_tree=null;
   2277 		CommonTree PARAM_LIST_OR_ID53_tree=null;
   2278 		CommonTree PRIMITIVE_TYPE54_tree=null;
   2279 		CommonTree VOID_TYPE55_tree=null;
   2280 		CommonTree ANNOTATION_VISIBILITY56_tree=null;
   2281 		CommonTree INSTRUCTION_FORMAT10t57_tree=null;
   2282 		CommonTree INSTRUCTION_FORMAT10x58_tree=null;
   2283 		CommonTree INSTRUCTION_FORMAT10x_ODEX59_tree=null;
   2284 		CommonTree INSTRUCTION_FORMAT11x60_tree=null;
   2285 		CommonTree INSTRUCTION_FORMAT12x_OR_ID61_tree=null;
   2286 		CommonTree INSTRUCTION_FORMAT21c_FIELD62_tree=null;
   2287 		CommonTree INSTRUCTION_FORMAT21c_FIELD_ODEX63_tree=null;
   2288 		CommonTree INSTRUCTION_FORMAT21c_STRING64_tree=null;
   2289 		CommonTree INSTRUCTION_FORMAT21c_TYPE65_tree=null;
   2290 		CommonTree INSTRUCTION_FORMAT21t66_tree=null;
   2291 		CommonTree INSTRUCTION_FORMAT22c_FIELD67_tree=null;
   2292 		CommonTree INSTRUCTION_FORMAT22c_FIELD_ODEX68_tree=null;
   2293 		CommonTree INSTRUCTION_FORMAT22c_TYPE69_tree=null;
   2294 		CommonTree INSTRUCTION_FORMAT22cs_FIELD70_tree=null;
   2295 		CommonTree INSTRUCTION_FORMAT22s_OR_ID71_tree=null;
   2296 		CommonTree INSTRUCTION_FORMAT22t72_tree=null;
   2297 		CommonTree INSTRUCTION_FORMAT23x73_tree=null;
   2298 		CommonTree INSTRUCTION_FORMAT31i_OR_ID74_tree=null;
   2299 		CommonTree INSTRUCTION_FORMAT31t75_tree=null;
   2300 		CommonTree INSTRUCTION_FORMAT35c_METHOD76_tree=null;
   2301 		CommonTree INSTRUCTION_FORMAT35c_METHOD_ODEX77_tree=null;
   2302 		CommonTree INSTRUCTION_FORMAT35c_TYPE78_tree=null;
   2303 		CommonTree INSTRUCTION_FORMAT35mi_METHOD79_tree=null;
   2304 		CommonTree INSTRUCTION_FORMAT35ms_METHOD80_tree=null;
   2305 		CommonTree INSTRUCTION_FORMAT51l81_tree=null;
   2306 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_TYPE");
   2307 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35c_METHOD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35c_METHOD");
   2308 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT11x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT11x");
   2309 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21t");
   2310 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35c_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35c_TYPE");
   2311 		RewriteRuleTokenStream stream_ANNOTATION_VISIBILITY=new RewriteRuleTokenStream(adaptor,"token ANNOTATION_VISIBILITY");
   2312 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT31i_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT31i_OR_ID");
   2313 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22s_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22s_OR_ID");
   2314 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT51l=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT51l");
   2315 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT23x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT23x");
   2316 		RewriteRuleTokenStream stream_NULL_LITERAL=new RewriteRuleTokenStream(adaptor,"token NULL_LITERAL");
   2317 		RewriteRuleTokenStream stream_BOOL_LITERAL=new RewriteRuleTokenStream(adaptor,"token BOOL_LITERAL");
   2318 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_FIELD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_FIELD");
   2319 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35c_METHOD_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35c_METHOD_ODEX");
   2320 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_FIELD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_FIELD");
   2321 		RewriteRuleTokenStream stream_ACCESS_SPEC=new RewriteRuleTokenStream(adaptor,"token ACCESS_SPEC");
   2322 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_STRING=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_STRING");
   2323 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT12x_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT12x_OR_ID");
   2324 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35ms_METHOD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35ms_METHOD");
   2325 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35mi_METHOD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35mi_METHOD");
   2326 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22cs_FIELD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22cs_FIELD");
   2327 		RewriteRuleTokenStream stream_VOID_TYPE=new RewriteRuleTokenStream(adaptor,"token VOID_TYPE");
   2328 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10x");
   2329 		RewriteRuleTokenStream stream_FLOAT_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token FLOAT_LITERAL_OR_ID");
   2330 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22t");
   2331 		RewriteRuleTokenStream stream_PRIMITIVE_TYPE=new RewriteRuleTokenStream(adaptor,"token PRIMITIVE_TYPE");
   2332 		RewriteRuleTokenStream stream_PARAM_LIST_OR_ID=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST_OR_ID");
   2333 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10x_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10x_ODEX");
   2334 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT31t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT31t");
   2335 		RewriteRuleTokenStream stream_DOUBLE_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token DOUBLE_LITERAL_OR_ID");
   2336 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_FIELD_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_FIELD_ODEX");
   2337 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10t");
   2338 		RewriteRuleTokenStream stream_NEGATIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token NEGATIVE_INTEGER_LITERAL");
   2339 		RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER");
   2340 		RewriteRuleTokenStream stream_VERIFICATION_ERROR_TYPE=new RewriteRuleTokenStream(adaptor,"token VERIFICATION_ERROR_TYPE");
   2341 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_TYPE");
   2342 		RewriteRuleTokenStream stream_POSITIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token POSITIVE_INTEGER_LITERAL");
   2343 		RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_FIELD_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_FIELD_ODEX");
   2344 
   2345 		try {
   2346 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:553:3: ( SIMPLE_NAME | ACCESS_SPEC -> SIMPLE_NAME[$ACCESS_SPEC] | VERIFICATION_ERROR_TYPE -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] | POSITIVE_INTEGER_LITERAL -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] | FLOAT_LITERAL_OR_ID -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] | DOUBLE_LITERAL_OR_ID -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] | BOOL_LITERAL -> SIMPLE_NAME[$BOOL_LITERAL] | NULL_LITERAL -> SIMPLE_NAME[$NULL_LITERAL] | REGISTER -> SIMPLE_NAME[$REGISTER] | PARAM_LIST_OR_ID -> SIMPLE_NAME[$PARAM_LIST_OR_ID] | PRIMITIVE_TYPE -> SIMPLE_NAME[$PRIMITIVE_TYPE] | VOID_TYPE -> SIMPLE_NAME[$VOID_TYPE] | ANNOTATION_VISIBILITY -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] | INSTRUCTION_FORMAT10t -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] | INSTRUCTION_FORMAT10x -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] | INSTRUCTION_FORMAT10x_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] | INSTRUCTION_FORMAT11x -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] | INSTRUCTION_FORMAT12x_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] | INSTRUCTION_FORMAT21c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] | INSTRUCTION_FORMAT21c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] | INSTRUCTION_FORMAT21c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] | INSTRUCTION_FORMAT21c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] | INSTRUCTION_FORMAT21t -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] | INSTRUCTION_FORMAT22c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] | INSTRUCTION_FORMAT22c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] | INSTRUCTION_FORMAT22c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] | INSTRUCTION_FORMAT22cs_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] | INSTRUCTION_FORMAT22s_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] | INSTRUCTION_FORMAT22t -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] | INSTRUCTION_FORMAT23x -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] | INSTRUCTION_FORMAT31i_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] | INSTRUCTION_FORMAT31t -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] | INSTRUCTION_FORMAT35c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] | INSTRUCTION_FORMAT35c_METHOD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] | INSTRUCTION_FORMAT35c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] | INSTRUCTION_FORMAT35mi_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] | INSTRUCTION_FORMAT35ms_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] | INSTRUCTION_FORMAT51l -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] )
   2347 			int alt9=39;
   2348 			switch ( input.LA(1) ) {
   2349 			case SIMPLE_NAME:
   2350 				{
   2351 				alt9=1;
   2352 				}
   2353 				break;
   2354 			case ACCESS_SPEC:
   2355 				{
   2356 				alt9=2;
   2357 				}
   2358 				break;
   2359 			case VERIFICATION_ERROR_TYPE:
   2360 				{
   2361 				alt9=3;
   2362 				}
   2363 				break;
   2364 			case POSITIVE_INTEGER_LITERAL:
   2365 				{
   2366 				alt9=4;
   2367 				}
   2368 				break;
   2369 			case NEGATIVE_INTEGER_LITERAL:
   2370 				{
   2371 				alt9=5;
   2372 				}
   2373 				break;
   2374 			case FLOAT_LITERAL_OR_ID:
   2375 				{
   2376 				alt9=6;
   2377 				}
   2378 				break;
   2379 			case DOUBLE_LITERAL_OR_ID:
   2380 				{
   2381 				alt9=7;
   2382 				}
   2383 				break;
   2384 			case BOOL_LITERAL:
   2385 				{
   2386 				alt9=8;
   2387 				}
   2388 				break;
   2389 			case NULL_LITERAL:
   2390 				{
   2391 				alt9=9;
   2392 				}
   2393 				break;
   2394 			case REGISTER:
   2395 				{
   2396 				alt9=10;
   2397 				}
   2398 				break;
   2399 			case PARAM_LIST_OR_ID:
   2400 				{
   2401 				alt9=11;
   2402 				}
   2403 				break;
   2404 			case PRIMITIVE_TYPE:
   2405 				{
   2406 				alt9=12;
   2407 				}
   2408 				break;
   2409 			case VOID_TYPE:
   2410 				{
   2411 				alt9=13;
   2412 				}
   2413 				break;
   2414 			case ANNOTATION_VISIBILITY:
   2415 				{
   2416 				alt9=14;
   2417 				}
   2418 				break;
   2419 			case INSTRUCTION_FORMAT10t:
   2420 				{
   2421 				alt9=15;
   2422 				}
   2423 				break;
   2424 			case INSTRUCTION_FORMAT10x:
   2425 				{
   2426 				alt9=16;
   2427 				}
   2428 				break;
   2429 			case INSTRUCTION_FORMAT10x_ODEX:
   2430 				{
   2431 				alt9=17;
   2432 				}
   2433 				break;
   2434 			case INSTRUCTION_FORMAT11x:
   2435 				{
   2436 				alt9=18;
   2437 				}
   2438 				break;
   2439 			case INSTRUCTION_FORMAT12x_OR_ID:
   2440 				{
   2441 				alt9=19;
   2442 				}
   2443 				break;
   2444 			case INSTRUCTION_FORMAT21c_FIELD:
   2445 				{
   2446 				alt9=20;
   2447 				}
   2448 				break;
   2449 			case INSTRUCTION_FORMAT21c_FIELD_ODEX:
   2450 				{
   2451 				alt9=21;
   2452 				}
   2453 				break;
   2454 			case INSTRUCTION_FORMAT21c_STRING:
   2455 				{
   2456 				alt9=22;
   2457 				}
   2458 				break;
   2459 			case INSTRUCTION_FORMAT21c_TYPE:
   2460 				{
   2461 				alt9=23;
   2462 				}
   2463 				break;
   2464 			case INSTRUCTION_FORMAT21t:
   2465 				{
   2466 				alt9=24;
   2467 				}
   2468 				break;
   2469 			case INSTRUCTION_FORMAT22c_FIELD:
   2470 				{
   2471 				alt9=25;
   2472 				}
   2473 				break;
   2474 			case INSTRUCTION_FORMAT22c_FIELD_ODEX:
   2475 				{
   2476 				alt9=26;
   2477 				}
   2478 				break;
   2479 			case INSTRUCTION_FORMAT22c_TYPE:
   2480 				{
   2481 				alt9=27;
   2482 				}
   2483 				break;
   2484 			case INSTRUCTION_FORMAT22cs_FIELD:
   2485 				{
   2486 				alt9=28;
   2487 				}
   2488 				break;
   2489 			case INSTRUCTION_FORMAT22s_OR_ID:
   2490 				{
   2491 				alt9=29;
   2492 				}
   2493 				break;
   2494 			case INSTRUCTION_FORMAT22t:
   2495 				{
   2496 				alt9=30;
   2497 				}
   2498 				break;
   2499 			case INSTRUCTION_FORMAT23x:
   2500 				{
   2501 				alt9=31;
   2502 				}
   2503 				break;
   2504 			case INSTRUCTION_FORMAT31i_OR_ID:
   2505 				{
   2506 				alt9=32;
   2507 				}
   2508 				break;
   2509 			case INSTRUCTION_FORMAT31t:
   2510 				{
   2511 				alt9=33;
   2512 				}
   2513 				break;
   2514 			case INSTRUCTION_FORMAT35c_METHOD:
   2515 				{
   2516 				alt9=34;
   2517 				}
   2518 				break;
   2519 			case INSTRUCTION_FORMAT35c_METHOD_ODEX:
   2520 				{
   2521 				alt9=35;
   2522 				}
   2523 				break;
   2524 			case INSTRUCTION_FORMAT35c_TYPE:
   2525 				{
   2526 				alt9=36;
   2527 				}
   2528 				break;
   2529 			case INSTRUCTION_FORMAT35mi_METHOD:
   2530 				{
   2531 				alt9=37;
   2532 				}
   2533 				break;
   2534 			case INSTRUCTION_FORMAT35ms_METHOD:
   2535 				{
   2536 				alt9=38;
   2537 				}
   2538 				break;
   2539 			case INSTRUCTION_FORMAT51l:
   2540 				{
   2541 				alt9=39;
   2542 				}
   2543 				break;
   2544 			default:
   2545 				NoViableAltException nvae =
   2546 					new NoViableAltException("", 9, 0, input);
   2547 				throw nvae;
   2548 			}
   2549 			switch (alt9) {
   2550 				case 1 :
   2551 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:553:5: SIMPLE_NAME
   2552 					{
   2553 					root_0 = (CommonTree)adaptor.nil();
   2554 
   2555 
   2556 					SIMPLE_NAME43=(Token)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_simple_name1836);
   2557 					SIMPLE_NAME43_tree = (CommonTree)adaptor.create(SIMPLE_NAME43);
   2558 					adaptor.addChild(root_0, SIMPLE_NAME43_tree);
   2559 
   2560 					}
   2561 					break;
   2562 				case 2 :
   2563 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:554:5: ACCESS_SPEC
   2564 					{
   2565 					ACCESS_SPEC44=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_simple_name1842);
   2566 					stream_ACCESS_SPEC.add(ACCESS_SPEC44);
   2567 
   2568 					// AST REWRITE
   2569 					// elements:
   2570 					// token labels:
   2571 					// rule labels: retval
   2572 					// token list labels:
   2573 					// rule list labels:
   2574 					// wildcard labels:
   2575 					retval.tree = root_0;
   2576 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2577 
   2578 					root_0 = (CommonTree)adaptor.nil();
   2579 					// 554:17: -> SIMPLE_NAME[$ACCESS_SPEC]
   2580 					{
   2581 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, ACCESS_SPEC44));
   2582 					}
   2583 
   2584 
   2585 					retval.tree = root_0;
   2586 
   2587 					}
   2588 					break;
   2589 				case 3 :
   2590 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:555:5: VERIFICATION_ERROR_TYPE
   2591 					{
   2592 					VERIFICATION_ERROR_TYPE45=(Token)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_simple_name1853);
   2593 					stream_VERIFICATION_ERROR_TYPE.add(VERIFICATION_ERROR_TYPE45);
   2594 
   2595 					// AST REWRITE
   2596 					// elements:
   2597 					// token labels:
   2598 					// rule labels: retval
   2599 					// token list labels:
   2600 					// rule list labels:
   2601 					// wildcard labels:
   2602 					retval.tree = root_0;
   2603 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2604 
   2605 					root_0 = (CommonTree)adaptor.nil();
   2606 					// 555:29: -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE]
   2607 					{
   2608 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, VERIFICATION_ERROR_TYPE45));
   2609 					}
   2610 
   2611 
   2612 					retval.tree = root_0;
   2613 
   2614 					}
   2615 					break;
   2616 				case 4 :
   2617 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:556:5: POSITIVE_INTEGER_LITERAL
   2618 					{
   2619 					POSITIVE_INTEGER_LITERAL46=(Token)match(input,POSITIVE_INTEGER_LITERAL,FOLLOW_POSITIVE_INTEGER_LITERAL_in_simple_name1864);
   2620 					stream_POSITIVE_INTEGER_LITERAL.add(POSITIVE_INTEGER_LITERAL46);
   2621 
   2622 					// AST REWRITE
   2623 					// elements:
   2624 					// token labels:
   2625 					// rule labels: retval
   2626 					// token list labels:
   2627 					// rule list labels:
   2628 					// wildcard labels:
   2629 					retval.tree = root_0;
   2630 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2631 
   2632 					root_0 = (CommonTree)adaptor.nil();
   2633 					// 556:30: -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL]
   2634 					{
   2635 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, POSITIVE_INTEGER_LITERAL46));
   2636 					}
   2637 
   2638 
   2639 					retval.tree = root_0;
   2640 
   2641 					}
   2642 					break;
   2643 				case 5 :
   2644 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:557:5: NEGATIVE_INTEGER_LITERAL
   2645 					{
   2646 					NEGATIVE_INTEGER_LITERAL47=(Token)match(input,NEGATIVE_INTEGER_LITERAL,FOLLOW_NEGATIVE_INTEGER_LITERAL_in_simple_name1875);
   2647 					stream_NEGATIVE_INTEGER_LITERAL.add(NEGATIVE_INTEGER_LITERAL47);
   2648 
   2649 					// AST REWRITE
   2650 					// elements:
   2651 					// token labels:
   2652 					// rule labels: retval
   2653 					// token list labels:
   2654 					// rule list labels:
   2655 					// wildcard labels:
   2656 					retval.tree = root_0;
   2657 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2658 
   2659 					root_0 = (CommonTree)adaptor.nil();
   2660 					// 557:30: -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL]
   2661 					{
   2662 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, NEGATIVE_INTEGER_LITERAL47));
   2663 					}
   2664 
   2665 
   2666 					retval.tree = root_0;
   2667 
   2668 					}
   2669 					break;
   2670 				case 6 :
   2671 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:558:5: FLOAT_LITERAL_OR_ID
   2672 					{
   2673 					FLOAT_LITERAL_OR_ID48=(Token)match(input,FLOAT_LITERAL_OR_ID,FOLLOW_FLOAT_LITERAL_OR_ID_in_simple_name1886);
   2674 					stream_FLOAT_LITERAL_OR_ID.add(FLOAT_LITERAL_OR_ID48);
   2675 
   2676 					// AST REWRITE
   2677 					// elements:
   2678 					// token labels:
   2679 					// rule labels: retval
   2680 					// token list labels:
   2681 					// rule list labels:
   2682 					// wildcard labels:
   2683 					retval.tree = root_0;
   2684 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2685 
   2686 					root_0 = (CommonTree)adaptor.nil();
   2687 					// 558:25: -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID]
   2688 					{
   2689 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, FLOAT_LITERAL_OR_ID48));
   2690 					}
   2691 
   2692 
   2693 					retval.tree = root_0;
   2694 
   2695 					}
   2696 					break;
   2697 				case 7 :
   2698 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:559:5: DOUBLE_LITERAL_OR_ID
   2699 					{
   2700 					DOUBLE_LITERAL_OR_ID49=(Token)match(input,DOUBLE_LITERAL_OR_ID,FOLLOW_DOUBLE_LITERAL_OR_ID_in_simple_name1897);
   2701 					stream_DOUBLE_LITERAL_OR_ID.add(DOUBLE_LITERAL_OR_ID49);
   2702 
   2703 					// AST REWRITE
   2704 					// elements:
   2705 					// token labels:
   2706 					// rule labels: retval
   2707 					// token list labels:
   2708 					// rule list labels:
   2709 					// wildcard labels:
   2710 					retval.tree = root_0;
   2711 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2712 
   2713 					root_0 = (CommonTree)adaptor.nil();
   2714 					// 559:26: -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID]
   2715 					{
   2716 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, DOUBLE_LITERAL_OR_ID49));
   2717 					}
   2718 
   2719 
   2720 					retval.tree = root_0;
   2721 
   2722 					}
   2723 					break;
   2724 				case 8 :
   2725 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:560:5: BOOL_LITERAL
   2726 					{
   2727 					BOOL_LITERAL50=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_simple_name1908);
   2728 					stream_BOOL_LITERAL.add(BOOL_LITERAL50);
   2729 
   2730 					// AST REWRITE
   2731 					// elements:
   2732 					// token labels:
   2733 					// rule labels: retval
   2734 					// token list labels:
   2735 					// rule list labels:
   2736 					// wildcard labels:
   2737 					retval.tree = root_0;
   2738 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2739 
   2740 					root_0 = (CommonTree)adaptor.nil();
   2741 					// 560:18: -> SIMPLE_NAME[$BOOL_LITERAL]
   2742 					{
   2743 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, BOOL_LITERAL50));
   2744 					}
   2745 
   2746 
   2747 					retval.tree = root_0;
   2748 
   2749 					}
   2750 					break;
   2751 				case 9 :
   2752 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:561:5: NULL_LITERAL
   2753 					{
   2754 					NULL_LITERAL51=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_simple_name1919);
   2755 					stream_NULL_LITERAL.add(NULL_LITERAL51);
   2756 
   2757 					// AST REWRITE
   2758 					// elements:
   2759 					// token labels:
   2760 					// rule labels: retval
   2761 					// token list labels:
   2762 					// rule list labels:
   2763 					// wildcard labels:
   2764 					retval.tree = root_0;
   2765 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2766 
   2767 					root_0 = (CommonTree)adaptor.nil();
   2768 					// 561:18: -> SIMPLE_NAME[$NULL_LITERAL]
   2769 					{
   2770 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, NULL_LITERAL51));
   2771 					}
   2772 
   2773 
   2774 					retval.tree = root_0;
   2775 
   2776 					}
   2777 					break;
   2778 				case 10 :
   2779 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:562:5: REGISTER
   2780 					{
   2781 					REGISTER52=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_simple_name1930);
   2782 					stream_REGISTER.add(REGISTER52);
   2783 
   2784 					// AST REWRITE
   2785 					// elements:
   2786 					// token labels:
   2787 					// rule labels: retval
   2788 					// token list labels:
   2789 					// rule list labels:
   2790 					// wildcard labels:
   2791 					retval.tree = root_0;
   2792 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2793 
   2794 					root_0 = (CommonTree)adaptor.nil();
   2795 					// 562:14: -> SIMPLE_NAME[$REGISTER]
   2796 					{
   2797 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, REGISTER52));
   2798 					}
   2799 
   2800 
   2801 					retval.tree = root_0;
   2802 
   2803 					}
   2804 					break;
   2805 				case 11 :
   2806 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:563:5: PARAM_LIST_OR_ID
   2807 					{
   2808 					PARAM_LIST_OR_ID53=(Token)match(input,PARAM_LIST_OR_ID,FOLLOW_PARAM_LIST_OR_ID_in_simple_name1941);
   2809 					stream_PARAM_LIST_OR_ID.add(PARAM_LIST_OR_ID53);
   2810 
   2811 					// AST REWRITE
   2812 					// elements:
   2813 					// token labels:
   2814 					// rule labels: retval
   2815 					// token list labels:
   2816 					// rule list labels:
   2817 					// wildcard labels:
   2818 					retval.tree = root_0;
   2819 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2820 
   2821 					root_0 = (CommonTree)adaptor.nil();
   2822 					// 563:22: -> SIMPLE_NAME[$PARAM_LIST_OR_ID]
   2823 					{
   2824 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, PARAM_LIST_OR_ID53));
   2825 					}
   2826 
   2827 
   2828 					retval.tree = root_0;
   2829 
   2830 					}
   2831 					break;
   2832 				case 12 :
   2833 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:564:5: PRIMITIVE_TYPE
   2834 					{
   2835 					PRIMITIVE_TYPE54=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_simple_name1952);
   2836 					stream_PRIMITIVE_TYPE.add(PRIMITIVE_TYPE54);
   2837 
   2838 					// AST REWRITE
   2839 					// elements:
   2840 					// token labels:
   2841 					// rule labels: retval
   2842 					// token list labels:
   2843 					// rule list labels:
   2844 					// wildcard labels:
   2845 					retval.tree = root_0;
   2846 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2847 
   2848 					root_0 = (CommonTree)adaptor.nil();
   2849 					// 564:20: -> SIMPLE_NAME[$PRIMITIVE_TYPE]
   2850 					{
   2851 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, PRIMITIVE_TYPE54));
   2852 					}
   2853 
   2854 
   2855 					retval.tree = root_0;
   2856 
   2857 					}
   2858 					break;
   2859 				case 13 :
   2860 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:565:5: VOID_TYPE
   2861 					{
   2862 					VOID_TYPE55=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_simple_name1963);
   2863 					stream_VOID_TYPE.add(VOID_TYPE55);
   2864 
   2865 					// AST REWRITE
   2866 					// elements:
   2867 					// token labels:
   2868 					// rule labels: retval
   2869 					// token list labels:
   2870 					// rule list labels:
   2871 					// wildcard labels:
   2872 					retval.tree = root_0;
   2873 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2874 
   2875 					root_0 = (CommonTree)adaptor.nil();
   2876 					// 565:15: -> SIMPLE_NAME[$VOID_TYPE]
   2877 					{
   2878 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, VOID_TYPE55));
   2879 					}
   2880 
   2881 
   2882 					retval.tree = root_0;
   2883 
   2884 					}
   2885 					break;
   2886 				case 14 :
   2887 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:566:5: ANNOTATION_VISIBILITY
   2888 					{
   2889 					ANNOTATION_VISIBILITY56=(Token)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_simple_name1974);
   2890 					stream_ANNOTATION_VISIBILITY.add(ANNOTATION_VISIBILITY56);
   2891 
   2892 					// AST REWRITE
   2893 					// elements:
   2894 					// token labels:
   2895 					// rule labels: retval
   2896 					// token list labels:
   2897 					// rule list labels:
   2898 					// wildcard labels:
   2899 					retval.tree = root_0;
   2900 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2901 
   2902 					root_0 = (CommonTree)adaptor.nil();
   2903 					// 566:27: -> SIMPLE_NAME[$ANNOTATION_VISIBILITY]
   2904 					{
   2905 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, ANNOTATION_VISIBILITY56));
   2906 					}
   2907 
   2908 
   2909 					retval.tree = root_0;
   2910 
   2911 					}
   2912 					break;
   2913 				case 15 :
   2914 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:567:5: INSTRUCTION_FORMAT10t
   2915 					{
   2916 					INSTRUCTION_FORMAT10t57=(Token)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_simple_name1985);
   2917 					stream_INSTRUCTION_FORMAT10t.add(INSTRUCTION_FORMAT10t57);
   2918 
   2919 					// AST REWRITE
   2920 					// elements:
   2921 					// token labels:
   2922 					// rule labels: retval
   2923 					// token list labels:
   2924 					// rule list labels:
   2925 					// wildcard labels:
   2926 					retval.tree = root_0;
   2927 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2928 
   2929 					root_0 = (CommonTree)adaptor.nil();
   2930 					// 567:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t]
   2931 					{
   2932 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10t57));
   2933 					}
   2934 
   2935 
   2936 					retval.tree = root_0;
   2937 
   2938 					}
   2939 					break;
   2940 				case 16 :
   2941 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:568:5: INSTRUCTION_FORMAT10x
   2942 					{
   2943 					INSTRUCTION_FORMAT10x58=(Token)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_simple_name1996);
   2944 					stream_INSTRUCTION_FORMAT10x.add(INSTRUCTION_FORMAT10x58);
   2945 
   2946 					// AST REWRITE
   2947 					// elements:
   2948 					// token labels:
   2949 					// rule labels: retval
   2950 					// token list labels:
   2951 					// rule list labels:
   2952 					// wildcard labels:
   2953 					retval.tree = root_0;
   2954 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2955 
   2956 					root_0 = (CommonTree)adaptor.nil();
   2957 					// 568:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x]
   2958 					{
   2959 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10x58));
   2960 					}
   2961 
   2962 
   2963 					retval.tree = root_0;
   2964 
   2965 					}
   2966 					break;
   2967 				case 17 :
   2968 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:569:5: INSTRUCTION_FORMAT10x_ODEX
   2969 					{
   2970 					INSTRUCTION_FORMAT10x_ODEX59=(Token)match(input,INSTRUCTION_FORMAT10x_ODEX,FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_simple_name2007);
   2971 					stream_INSTRUCTION_FORMAT10x_ODEX.add(INSTRUCTION_FORMAT10x_ODEX59);
   2972 
   2973 					// AST REWRITE
   2974 					// elements:
   2975 					// token labels:
   2976 					// rule labels: retval
   2977 					// token list labels:
   2978 					// rule list labels:
   2979 					// wildcard labels:
   2980 					retval.tree = root_0;
   2981 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   2982 
   2983 					root_0 = (CommonTree)adaptor.nil();
   2984 					// 569:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX]
   2985 					{
   2986 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10x_ODEX59));
   2987 					}
   2988 
   2989 
   2990 					retval.tree = root_0;
   2991 
   2992 					}
   2993 					break;
   2994 				case 18 :
   2995 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:570:5: INSTRUCTION_FORMAT11x
   2996 					{
   2997 					INSTRUCTION_FORMAT11x60=(Token)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_simple_name2018);
   2998 					stream_INSTRUCTION_FORMAT11x.add(INSTRUCTION_FORMAT11x60);
   2999 
   3000 					// AST REWRITE
   3001 					// elements:
   3002 					// token labels:
   3003 					// rule labels: retval
   3004 					// token list labels:
   3005 					// rule list labels:
   3006 					// wildcard labels:
   3007 					retval.tree = root_0;
   3008 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3009 
   3010 					root_0 = (CommonTree)adaptor.nil();
   3011 					// 570:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x]
   3012 					{
   3013 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT11x60));
   3014 					}
   3015 
   3016 
   3017 					retval.tree = root_0;
   3018 
   3019 					}
   3020 					break;
   3021 				case 19 :
   3022 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:571:5: INSTRUCTION_FORMAT12x_OR_ID
   3023 					{
   3024 					INSTRUCTION_FORMAT12x_OR_ID61=(Token)match(input,INSTRUCTION_FORMAT12x_OR_ID,FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_simple_name2029);
   3025 					stream_INSTRUCTION_FORMAT12x_OR_ID.add(INSTRUCTION_FORMAT12x_OR_ID61);
   3026 
   3027 					// AST REWRITE
   3028 					// elements:
   3029 					// token labels:
   3030 					// rule labels: retval
   3031 					// token list labels:
   3032 					// rule list labels:
   3033 					// wildcard labels:
   3034 					retval.tree = root_0;
   3035 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3036 
   3037 					root_0 = (CommonTree)adaptor.nil();
   3038 					// 571:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID]
   3039 					{
   3040 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT12x_OR_ID61));
   3041 					}
   3042 
   3043 
   3044 					retval.tree = root_0;
   3045 
   3046 					}
   3047 					break;
   3048 				case 20 :
   3049 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:572:5: INSTRUCTION_FORMAT21c_FIELD
   3050 					{
   3051 					INSTRUCTION_FORMAT21c_FIELD62=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_simple_name2040);
   3052 					stream_INSTRUCTION_FORMAT21c_FIELD.add(INSTRUCTION_FORMAT21c_FIELD62);
   3053 
   3054 					// AST REWRITE
   3055 					// elements:
   3056 					// token labels:
   3057 					// rule labels: retval
   3058 					// token list labels:
   3059 					// rule list labels:
   3060 					// wildcard labels:
   3061 					retval.tree = root_0;
   3062 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3063 
   3064 					root_0 = (CommonTree)adaptor.nil();
   3065 					// 572:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD]
   3066 					{
   3067 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_FIELD62));
   3068 					}
   3069 
   3070 
   3071 					retval.tree = root_0;
   3072 
   3073 					}
   3074 					break;
   3075 				case 21 :
   3076 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:573:5: INSTRUCTION_FORMAT21c_FIELD_ODEX
   3077 					{
   3078 					INSTRUCTION_FORMAT21c_FIELD_ODEX63=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_simple_name2051);
   3079 					stream_INSTRUCTION_FORMAT21c_FIELD_ODEX.add(INSTRUCTION_FORMAT21c_FIELD_ODEX63);
   3080 
   3081 					// AST REWRITE
   3082 					// elements:
   3083 					// token labels:
   3084 					// rule labels: retval
   3085 					// token list labels:
   3086 					// rule list labels:
   3087 					// wildcard labels:
   3088 					retval.tree = root_0;
   3089 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3090 
   3091 					root_0 = (CommonTree)adaptor.nil();
   3092 					// 573:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX]
   3093 					{
   3094 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_FIELD_ODEX63));
   3095 					}
   3096 
   3097 
   3098 					retval.tree = root_0;
   3099 
   3100 					}
   3101 					break;
   3102 				case 22 :
   3103 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:574:5: INSTRUCTION_FORMAT21c_STRING
   3104 					{
   3105 					INSTRUCTION_FORMAT21c_STRING64=(Token)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_simple_name2062);
   3106 					stream_INSTRUCTION_FORMAT21c_STRING.add(INSTRUCTION_FORMAT21c_STRING64);
   3107 
   3108 					// AST REWRITE
   3109 					// elements:
   3110 					// token labels:
   3111 					// rule labels: retval
   3112 					// token list labels:
   3113 					// rule list labels:
   3114 					// wildcard labels:
   3115 					retval.tree = root_0;
   3116 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3117 
   3118 					root_0 = (CommonTree)adaptor.nil();
   3119 					// 574:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING]
   3120 					{
   3121 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_STRING64));
   3122 					}
   3123 
   3124 
   3125 					retval.tree = root_0;
   3126 
   3127 					}
   3128 					break;
   3129 				case 23 :
   3130 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:575:5: INSTRUCTION_FORMAT21c_TYPE
   3131 					{
   3132 					INSTRUCTION_FORMAT21c_TYPE65=(Token)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_simple_name2073);
   3133 					stream_INSTRUCTION_FORMAT21c_TYPE.add(INSTRUCTION_FORMAT21c_TYPE65);
   3134 
   3135 					// AST REWRITE
   3136 					// elements:
   3137 					// token labels:
   3138 					// rule labels: retval
   3139 					// token list labels:
   3140 					// rule list labels:
   3141 					// wildcard labels:
   3142 					retval.tree = root_0;
   3143 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3144 
   3145 					root_0 = (CommonTree)adaptor.nil();
   3146 					// 575:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE]
   3147 					{
   3148 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_TYPE65));
   3149 					}
   3150 
   3151 
   3152 					retval.tree = root_0;
   3153 
   3154 					}
   3155 					break;
   3156 				case 24 :
   3157 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:576:5: INSTRUCTION_FORMAT21t
   3158 					{
   3159 					INSTRUCTION_FORMAT21t66=(Token)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_simple_name2084);
   3160 					stream_INSTRUCTION_FORMAT21t.add(INSTRUCTION_FORMAT21t66);
   3161 
   3162 					// AST REWRITE
   3163 					// elements:
   3164 					// token labels:
   3165 					// rule labels: retval
   3166 					// token list labels:
   3167 					// rule list labels:
   3168 					// wildcard labels:
   3169 					retval.tree = root_0;
   3170 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3171 
   3172 					root_0 = (CommonTree)adaptor.nil();
   3173 					// 576:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t]
   3174 					{
   3175 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21t66));
   3176 					}
   3177 
   3178 
   3179 					retval.tree = root_0;
   3180 
   3181 					}
   3182 					break;
   3183 				case 25 :
   3184 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:577:5: INSTRUCTION_FORMAT22c_FIELD
   3185 					{
   3186 					INSTRUCTION_FORMAT22c_FIELD67=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_simple_name2095);
   3187 					stream_INSTRUCTION_FORMAT22c_FIELD.add(INSTRUCTION_FORMAT22c_FIELD67);
   3188 
   3189 					// AST REWRITE
   3190 					// elements:
   3191 					// token labels:
   3192 					// rule labels: retval
   3193 					// token list labels:
   3194 					// rule list labels:
   3195 					// wildcard labels:
   3196 					retval.tree = root_0;
   3197 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3198 
   3199 					root_0 = (CommonTree)adaptor.nil();
   3200 					// 577:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD]
   3201 					{
   3202 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD67));
   3203 					}
   3204 
   3205 
   3206 					retval.tree = root_0;
   3207 
   3208 					}
   3209 					break;
   3210 				case 26 :
   3211 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:578:5: INSTRUCTION_FORMAT22c_FIELD_ODEX
   3212 					{
   3213 					INSTRUCTION_FORMAT22c_FIELD_ODEX68=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_simple_name2106);
   3214 					stream_INSTRUCTION_FORMAT22c_FIELD_ODEX.add(INSTRUCTION_FORMAT22c_FIELD_ODEX68);
   3215 
   3216 					// AST REWRITE
   3217 					// elements:
   3218 					// token labels:
   3219 					// rule labels: retval
   3220 					// token list labels:
   3221 					// rule list labels:
   3222 					// wildcard labels:
   3223 					retval.tree = root_0;
   3224 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3225 
   3226 					root_0 = (CommonTree)adaptor.nil();
   3227 					// 578:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX]
   3228 					{
   3229 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD_ODEX68));
   3230 					}
   3231 
   3232 
   3233 					retval.tree = root_0;
   3234 
   3235 					}
   3236 					break;
   3237 				case 27 :
   3238 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:579:5: INSTRUCTION_FORMAT22c_TYPE
   3239 					{
   3240 					INSTRUCTION_FORMAT22c_TYPE69=(Token)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_simple_name2117);
   3241 					stream_INSTRUCTION_FORMAT22c_TYPE.add(INSTRUCTION_FORMAT22c_TYPE69);
   3242 
   3243 					// AST REWRITE
   3244 					// elements:
   3245 					// token labels:
   3246 					// rule labels: retval
   3247 					// token list labels:
   3248 					// rule list labels:
   3249 					// wildcard labels:
   3250 					retval.tree = root_0;
   3251 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3252 
   3253 					root_0 = (CommonTree)adaptor.nil();
   3254 					// 579:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE]
   3255 					{
   3256 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_TYPE69));
   3257 					}
   3258 
   3259 
   3260 					retval.tree = root_0;
   3261 
   3262 					}
   3263 					break;
   3264 				case 28 :
   3265 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:580:5: INSTRUCTION_FORMAT22cs_FIELD
   3266 					{
   3267 					INSTRUCTION_FORMAT22cs_FIELD70=(Token)match(input,INSTRUCTION_FORMAT22cs_FIELD,FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_simple_name2128);
   3268 					stream_INSTRUCTION_FORMAT22cs_FIELD.add(INSTRUCTION_FORMAT22cs_FIELD70);
   3269 
   3270 					// AST REWRITE
   3271 					// elements:
   3272 					// token labels:
   3273 					// rule labels: retval
   3274 					// token list labels:
   3275 					// rule list labels:
   3276 					// wildcard labels:
   3277 					retval.tree = root_0;
   3278 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3279 
   3280 					root_0 = (CommonTree)adaptor.nil();
   3281 					// 580:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD]
   3282 					{
   3283 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22cs_FIELD70));
   3284 					}
   3285 
   3286 
   3287 					retval.tree = root_0;
   3288 
   3289 					}
   3290 					break;
   3291 				case 29 :
   3292 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:581:5: INSTRUCTION_FORMAT22s_OR_ID
   3293 					{
   3294 					INSTRUCTION_FORMAT22s_OR_ID71=(Token)match(input,INSTRUCTION_FORMAT22s_OR_ID,FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_simple_name2139);
   3295 					stream_INSTRUCTION_FORMAT22s_OR_ID.add(INSTRUCTION_FORMAT22s_OR_ID71);
   3296 
   3297 					// AST REWRITE
   3298 					// elements:
   3299 					// token labels:
   3300 					// rule labels: retval
   3301 					// token list labels:
   3302 					// rule list labels:
   3303 					// wildcard labels:
   3304 					retval.tree = root_0;
   3305 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3306 
   3307 					root_0 = (CommonTree)adaptor.nil();
   3308 					// 581:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID]
   3309 					{
   3310 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22s_OR_ID71));
   3311 					}
   3312 
   3313 
   3314 					retval.tree = root_0;
   3315 
   3316 					}
   3317 					break;
   3318 				case 30 :
   3319 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:582:5: INSTRUCTION_FORMAT22t
   3320 					{
   3321 					INSTRUCTION_FORMAT22t72=(Token)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_simple_name2150);
   3322 					stream_INSTRUCTION_FORMAT22t.add(INSTRUCTION_FORMAT22t72);
   3323 
   3324 					// AST REWRITE
   3325 					// elements:
   3326 					// token labels:
   3327 					// rule labels: retval
   3328 					// token list labels:
   3329 					// rule list labels:
   3330 					// wildcard labels:
   3331 					retval.tree = root_0;
   3332 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3333 
   3334 					root_0 = (CommonTree)adaptor.nil();
   3335 					// 582:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t]
   3336 					{
   3337 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22t72));
   3338 					}
   3339 
   3340 
   3341 					retval.tree = root_0;
   3342 
   3343 					}
   3344 					break;
   3345 				case 31 :
   3346 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:583:5: INSTRUCTION_FORMAT23x
   3347 					{
   3348 					INSTRUCTION_FORMAT23x73=(Token)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_simple_name2161);
   3349 					stream_INSTRUCTION_FORMAT23x.add(INSTRUCTION_FORMAT23x73);
   3350 
   3351 					// AST REWRITE
   3352 					// elements:
   3353 					// token labels:
   3354 					// rule labels: retval
   3355 					// token list labels:
   3356 					// rule list labels:
   3357 					// wildcard labels:
   3358 					retval.tree = root_0;
   3359 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3360 
   3361 					root_0 = (CommonTree)adaptor.nil();
   3362 					// 583:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x]
   3363 					{
   3364 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT23x73));
   3365 					}
   3366 
   3367 
   3368 					retval.tree = root_0;
   3369 
   3370 					}
   3371 					break;
   3372 				case 32 :
   3373 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:584:5: INSTRUCTION_FORMAT31i_OR_ID
   3374 					{
   3375 					INSTRUCTION_FORMAT31i_OR_ID74=(Token)match(input,INSTRUCTION_FORMAT31i_OR_ID,FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_simple_name2172);
   3376 					stream_INSTRUCTION_FORMAT31i_OR_ID.add(INSTRUCTION_FORMAT31i_OR_ID74);
   3377 
   3378 					// AST REWRITE
   3379 					// elements:
   3380 					// token labels:
   3381 					// rule labels: retval
   3382 					// token list labels:
   3383 					// rule list labels:
   3384 					// wildcard labels:
   3385 					retval.tree = root_0;
   3386 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3387 
   3388 					root_0 = (CommonTree)adaptor.nil();
   3389 					// 584:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID]
   3390 					{
   3391 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31i_OR_ID74));
   3392 					}
   3393 
   3394 
   3395 					retval.tree = root_0;
   3396 
   3397 					}
   3398 					break;
   3399 				case 33 :
   3400 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:585:5: INSTRUCTION_FORMAT31t
   3401 					{
   3402 					INSTRUCTION_FORMAT31t75=(Token)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_simple_name2183);
   3403 					stream_INSTRUCTION_FORMAT31t.add(INSTRUCTION_FORMAT31t75);
   3404 
   3405 					// AST REWRITE
   3406 					// elements:
   3407 					// token labels:
   3408 					// rule labels: retval
   3409 					// token list labels:
   3410 					// rule list labels:
   3411 					// wildcard labels:
   3412 					retval.tree = root_0;
   3413 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3414 
   3415 					root_0 = (CommonTree)adaptor.nil();
   3416 					// 585:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t]
   3417 					{
   3418 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31t75));
   3419 					}
   3420 
   3421 
   3422 					retval.tree = root_0;
   3423 
   3424 					}
   3425 					break;
   3426 				case 34 :
   3427 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:586:5: INSTRUCTION_FORMAT35c_METHOD
   3428 					{
   3429 					INSTRUCTION_FORMAT35c_METHOD76=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_simple_name2194);
   3430 					stream_INSTRUCTION_FORMAT35c_METHOD.add(INSTRUCTION_FORMAT35c_METHOD76);
   3431 
   3432 					// AST REWRITE
   3433 					// elements:
   3434 					// token labels:
   3435 					// rule labels: retval
   3436 					// token list labels:
   3437 					// rule list labels:
   3438 					// wildcard labels:
   3439 					retval.tree = root_0;
   3440 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3441 
   3442 					root_0 = (CommonTree)adaptor.nil();
   3443 					// 586:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD]
   3444 					{
   3445 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD76));
   3446 					}
   3447 
   3448 
   3449 					retval.tree = root_0;
   3450 
   3451 					}
   3452 					break;
   3453 				case 35 :
   3454 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:587:5: INSTRUCTION_FORMAT35c_METHOD_ODEX
   3455 					{
   3456 					INSTRUCTION_FORMAT35c_METHOD_ODEX77=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD_ODEX,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_simple_name2205);
   3457 					stream_INSTRUCTION_FORMAT35c_METHOD_ODEX.add(INSTRUCTION_FORMAT35c_METHOD_ODEX77);
   3458 
   3459 					// AST REWRITE
   3460 					// elements:
   3461 					// token labels:
   3462 					// rule labels: retval
   3463 					// token list labels:
   3464 					// rule list labels:
   3465 					// wildcard labels:
   3466 					retval.tree = root_0;
   3467 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3468 
   3469 					root_0 = (CommonTree)adaptor.nil();
   3470 					// 587:39: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX]
   3471 					{
   3472 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD_ODEX77));
   3473 					}
   3474 
   3475 
   3476 					retval.tree = root_0;
   3477 
   3478 					}
   3479 					break;
   3480 				case 36 :
   3481 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:588:5: INSTRUCTION_FORMAT35c_TYPE
   3482 					{
   3483 					INSTRUCTION_FORMAT35c_TYPE78=(Token)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_simple_name2216);
   3484 					stream_INSTRUCTION_FORMAT35c_TYPE.add(INSTRUCTION_FORMAT35c_TYPE78);
   3485 
   3486 					// AST REWRITE
   3487 					// elements:
   3488 					// token labels:
   3489 					// rule labels: retval
   3490 					// token list labels:
   3491 					// rule list labels:
   3492 					// wildcard labels:
   3493 					retval.tree = root_0;
   3494 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3495 
   3496 					root_0 = (CommonTree)adaptor.nil();
   3497 					// 588:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE]
   3498 					{
   3499 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_TYPE78));
   3500 					}
   3501 
   3502 
   3503 					retval.tree = root_0;
   3504 
   3505 					}
   3506 					break;
   3507 				case 37 :
   3508 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:589:5: INSTRUCTION_FORMAT35mi_METHOD
   3509 					{
   3510 					INSTRUCTION_FORMAT35mi_METHOD79=(Token)match(input,INSTRUCTION_FORMAT35mi_METHOD,FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_simple_name2227);
   3511 					stream_INSTRUCTION_FORMAT35mi_METHOD.add(INSTRUCTION_FORMAT35mi_METHOD79);
   3512 
   3513 					// AST REWRITE
   3514 					// elements:
   3515 					// token labels:
   3516 					// rule labels: retval
   3517 					// token list labels:
   3518 					// rule list labels:
   3519 					// wildcard labels:
   3520 					retval.tree = root_0;
   3521 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3522 
   3523 					root_0 = (CommonTree)adaptor.nil();
   3524 					// 589:35: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD]
   3525 					{
   3526 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35mi_METHOD79));
   3527 					}
   3528 
   3529 
   3530 					retval.tree = root_0;
   3531 
   3532 					}
   3533 					break;
   3534 				case 38 :
   3535 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:590:5: INSTRUCTION_FORMAT35ms_METHOD
   3536 					{
   3537 					INSTRUCTION_FORMAT35ms_METHOD80=(Token)match(input,INSTRUCTION_FORMAT35ms_METHOD,FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_simple_name2238);
   3538 					stream_INSTRUCTION_FORMAT35ms_METHOD.add(INSTRUCTION_FORMAT35ms_METHOD80);
   3539 
   3540 					// AST REWRITE
   3541 					// elements:
   3542 					// token labels:
   3543 					// rule labels: retval
   3544 					// token list labels:
   3545 					// rule list labels:
   3546 					// wildcard labels:
   3547 					retval.tree = root_0;
   3548 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3549 
   3550 					root_0 = (CommonTree)adaptor.nil();
   3551 					// 590:35: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD]
   3552 					{
   3553 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35ms_METHOD80));
   3554 					}
   3555 
   3556 
   3557 					retval.tree = root_0;
   3558 
   3559 					}
   3560 					break;
   3561 				case 39 :
   3562 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:591:5: INSTRUCTION_FORMAT51l
   3563 					{
   3564 					INSTRUCTION_FORMAT51l81=(Token)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_simple_name2249);
   3565 					stream_INSTRUCTION_FORMAT51l.add(INSTRUCTION_FORMAT51l81);
   3566 
   3567 					// AST REWRITE
   3568 					// elements:
   3569 					// token labels:
   3570 					// rule labels: retval
   3571 					// token list labels:
   3572 					// rule list labels:
   3573 					// wildcard labels:
   3574 					retval.tree = root_0;
   3575 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3576 
   3577 					root_0 = (CommonTree)adaptor.nil();
   3578 					// 591:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l]
   3579 					{
   3580 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT51l81));
   3581 					}
   3582 
   3583 
   3584 					retval.tree = root_0;
   3585 
   3586 					}
   3587 					break;
   3588 
   3589 			}
   3590 			retval.stop = input.LT(-1);
   3591 
   3592 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   3593 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   3594 
   3595 		}
   3596 		catch (RecognitionException re) {
   3597 			reportError(re);
   3598 			recover(input,re);
   3599 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   3600 		}
   3601 		finally {
   3602 			// do for sure before leaving
   3603 		}
   3604 		return retval;
   3605 	}
   3606 	// $ANTLR end "simple_name"
   3607 
   3608 
   3609 	public static class member_name_return extends ParserRuleReturnScope {
   3610 		CommonTree tree;
   3611 		@Override
   3612 		public CommonTree getTree() { return tree; }
   3613 	};
   3614 
   3615 
   3616 	// $ANTLR start "member_name"
   3617 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:593:1: member_name : ( simple_name | MEMBER_NAME -> SIMPLE_NAME[$MEMBER_NAME] );
   3618 	public final smaliParser.member_name_return member_name() throws RecognitionException {
   3619 		smaliParser.member_name_return retval = new smaliParser.member_name_return();
   3620 		retval.start = input.LT(1);
   3621 
   3622 		CommonTree root_0 = null;
   3623 
   3624 		Token MEMBER_NAME83=null;
   3625 		ParserRuleReturnScope simple_name82 =null;
   3626 
   3627 		CommonTree MEMBER_NAME83_tree=null;
   3628 		RewriteRuleTokenStream stream_MEMBER_NAME=new RewriteRuleTokenStream(adaptor,"token MEMBER_NAME");
   3629 
   3630 		try {
   3631 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:594:3: ( simple_name | MEMBER_NAME -> SIMPLE_NAME[$MEMBER_NAME] )
   3632 			int alt10=2;
   3633 			int LA10_0 = input.LA(1);
   3634 			if ( (LA10_0==ACCESS_SPEC||LA10_0==ANNOTATION_VISIBILITY||LA10_0==BOOL_LITERAL||LA10_0==DOUBLE_LITERAL_OR_ID||LA10_0==FLOAT_LITERAL_OR_ID||(LA10_0 >= INSTRUCTION_FORMAT10t && LA10_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA10_0==INSTRUCTION_FORMAT11x||LA10_0==INSTRUCTION_FORMAT12x_OR_ID||(LA10_0 >= INSTRUCTION_FORMAT21c_FIELD && LA10_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA10_0==INSTRUCTION_FORMAT21t||(LA10_0 >= INSTRUCTION_FORMAT22c_FIELD && LA10_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA10_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA10_0 <= INSTRUCTION_FORMAT22t)||LA10_0==INSTRUCTION_FORMAT23x||(LA10_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA10_0 <= INSTRUCTION_FORMAT31t)||(LA10_0 >= INSTRUCTION_FORMAT35c_METHOD && LA10_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA10_0==INSTRUCTION_FORMAT51l||(LA10_0 >= NEGATIVE_INTEGER_LITERAL && LA10_0 <= NULL_LITERAL)||(LA10_0 >= PARAM_LIST_OR_ID && LA10_0 <= PRIMITIVE_TYPE)||LA10_0==REGISTER||LA10_0==SIMPLE_NAME||(LA10_0 >= VERIFICATION_ERROR_TYPE && LA10_0 <= VOID_TYPE)) ) {
   3635 				alt10=1;
   3636 			}
   3637 			else if ( (LA10_0==MEMBER_NAME) ) {
   3638 				alt10=2;
   3639 			}
   3640 
   3641 			else {
   3642 				NoViableAltException nvae =
   3643 					new NoViableAltException("", 10, 0, input);
   3644 				throw nvae;
   3645 			}
   3646 
   3647 			switch (alt10) {
   3648 				case 1 :
   3649 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:594:5: simple_name
   3650 					{
   3651 					root_0 = (CommonTree)adaptor.nil();
   3652 
   3653 
   3654 					pushFollow(FOLLOW_simple_name_in_member_name2264);
   3655 					simple_name82=simple_name();
   3656 					state._fsp--;
   3657 
   3658 					adaptor.addChild(root_0, simple_name82.getTree());
   3659 
   3660 					}
   3661 					break;
   3662 				case 2 :
   3663 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:595:5: MEMBER_NAME
   3664 					{
   3665 					MEMBER_NAME83=(Token)match(input,MEMBER_NAME,FOLLOW_MEMBER_NAME_in_member_name2270);
   3666 					stream_MEMBER_NAME.add(MEMBER_NAME83);
   3667 
   3668 					// AST REWRITE
   3669 					// elements:
   3670 					// token labels:
   3671 					// rule labels: retval
   3672 					// token list labels:
   3673 					// rule list labels:
   3674 					// wildcard labels:
   3675 					retval.tree = root_0;
   3676 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3677 
   3678 					root_0 = (CommonTree)adaptor.nil();
   3679 					// 595:17: -> SIMPLE_NAME[$MEMBER_NAME]
   3680 					{
   3681 						adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, MEMBER_NAME83));
   3682 					}
   3683 
   3684 
   3685 					retval.tree = root_0;
   3686 
   3687 					}
   3688 					break;
   3689 
   3690 			}
   3691 			retval.stop = input.LT(-1);
   3692 
   3693 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   3694 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   3695 
   3696 		}
   3697 		catch (RecognitionException re) {
   3698 			reportError(re);
   3699 			recover(input,re);
   3700 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   3701 		}
   3702 		finally {
   3703 			// do for sure before leaving
   3704 		}
   3705 		return retval;
   3706 	}
   3707 	// $ANTLR end "member_name"
   3708 
   3709 
   3710 	public static class method_prototype_return extends ParserRuleReturnScope {
   3711 		CommonTree tree;
   3712 		@Override
   3713 		public CommonTree getTree() { return tree; }
   3714 	};
   3715 
   3716 
   3717 	// $ANTLR start "method_prototype"
   3718 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:597:1: method_prototype : OPEN_PAREN param_list CLOSE_PAREN type_descriptor -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) ;
   3719 	public final smaliParser.method_prototype_return method_prototype() throws RecognitionException {
   3720 		smaliParser.method_prototype_return retval = new smaliParser.method_prototype_return();
   3721 		retval.start = input.LT(1);
   3722 
   3723 		CommonTree root_0 = null;
   3724 
   3725 		Token OPEN_PAREN84=null;
   3726 		Token CLOSE_PAREN86=null;
   3727 		ParserRuleReturnScope param_list85 =null;
   3728 		ParserRuleReturnScope type_descriptor87 =null;
   3729 
   3730 		CommonTree OPEN_PAREN84_tree=null;
   3731 		CommonTree CLOSE_PAREN86_tree=null;
   3732 		RewriteRuleTokenStream stream_OPEN_PAREN=new RewriteRuleTokenStream(adaptor,"token OPEN_PAREN");
   3733 		RewriteRuleTokenStream stream_CLOSE_PAREN=new RewriteRuleTokenStream(adaptor,"token CLOSE_PAREN");
   3734 		RewriteRuleSubtreeStream stream_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule type_descriptor");
   3735 		RewriteRuleSubtreeStream stream_param_list=new RewriteRuleSubtreeStream(adaptor,"rule param_list");
   3736 
   3737 		try {
   3738 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:598:3: ( OPEN_PAREN param_list CLOSE_PAREN type_descriptor -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) )
   3739 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:598:5: OPEN_PAREN param_list CLOSE_PAREN type_descriptor
   3740 			{
   3741 			OPEN_PAREN84=(Token)match(input,OPEN_PAREN,FOLLOW_OPEN_PAREN_in_method_prototype2285);
   3742 			stream_OPEN_PAREN.add(OPEN_PAREN84);
   3743 
   3744 			pushFollow(FOLLOW_param_list_in_method_prototype2287);
   3745 			param_list85=param_list();
   3746 			state._fsp--;
   3747 
   3748 			stream_param_list.add(param_list85.getTree());
   3749 			CLOSE_PAREN86=(Token)match(input,CLOSE_PAREN,FOLLOW_CLOSE_PAREN_in_method_prototype2289);
   3750 			stream_CLOSE_PAREN.add(CLOSE_PAREN86);
   3751 
   3752 			pushFollow(FOLLOW_type_descriptor_in_method_prototype2291);
   3753 			type_descriptor87=type_descriptor();
   3754 			state._fsp--;
   3755 
   3756 			stream_type_descriptor.add(type_descriptor87.getTree());
   3757 			// AST REWRITE
   3758 			// elements: param_list, type_descriptor
   3759 			// token labels:
   3760 			// rule labels: retval
   3761 			// token list labels:
   3762 			// rule list labels:
   3763 			// wildcard labels:
   3764 			retval.tree = root_0;
   3765 			RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3766 
   3767 			root_0 = (CommonTree)adaptor.nil();
   3768 			// 599:5: -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? )
   3769 			{
   3770 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:599:8: ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? )
   3771 				{
   3772 				CommonTree root_1 = (CommonTree)adaptor.nil();
   3773 				root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHOD_PROTOTYPE, (retval.start), "I_METHOD_PROTOTYPE"), root_1);
   3774 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:599:59: ^( I_METHOD_RETURN_TYPE type_descriptor )
   3775 				{
   3776 				CommonTree root_2 = (CommonTree)adaptor.nil();
   3777 				root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHOD_RETURN_TYPE, "I_METHOD_RETURN_TYPE"), root_2);
   3778 				adaptor.addChild(root_2, stream_type_descriptor.nextTree());
   3779 				adaptor.addChild(root_1, root_2);
   3780 				}
   3781 
   3782 				// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:599:99: ( param_list )?
   3783 				if ( stream_param_list.hasNext() ) {
   3784 					adaptor.addChild(root_1, stream_param_list.nextTree());
   3785 				}
   3786 				stream_param_list.reset();
   3787 
   3788 				adaptor.addChild(root_0, root_1);
   3789 				}
   3790 
   3791 			}
   3792 
   3793 
   3794 			retval.tree = root_0;
   3795 
   3796 			}
   3797 
   3798 			retval.stop = input.LT(-1);
   3799 
   3800 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   3801 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   3802 
   3803 		}
   3804 		catch (RecognitionException re) {
   3805 			reportError(re);
   3806 			recover(input,re);
   3807 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   3808 		}
   3809 		finally {
   3810 			// do for sure before leaving
   3811 		}
   3812 		return retval;
   3813 	}
   3814 	// $ANTLR end "method_prototype"
   3815 
   3816 
   3817 	public static class param_list_return extends ParserRuleReturnScope {
   3818 		CommonTree tree;
   3819 		@Override
   3820 		public CommonTree getTree() { return tree; }
   3821 	};
   3822 
   3823 
   3824 	// $ANTLR start "param_list"
   3825 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:601:1: param_list : ( PARAM_LIST ->| PARAM_LIST_OR_ID ->| ( nonvoid_type_descriptor )* );
   3826 	public final smaliParser.param_list_return param_list() throws RecognitionException {
   3827 		smaliParser.param_list_return retval = new smaliParser.param_list_return();
   3828 		retval.start = input.LT(1);
   3829 
   3830 		CommonTree root_0 = null;
   3831 
   3832 		Token PARAM_LIST88=null;
   3833 		Token PARAM_LIST_OR_ID89=null;
   3834 		ParserRuleReturnScope nonvoid_type_descriptor90 =null;
   3835 
   3836 		CommonTree PARAM_LIST88_tree=null;
   3837 		CommonTree PARAM_LIST_OR_ID89_tree=null;
   3838 		RewriteRuleTokenStream stream_PARAM_LIST=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST");
   3839 		RewriteRuleTokenStream stream_PARAM_LIST_OR_ID=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST_OR_ID");
   3840 
   3841 		try {
   3842 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:602:3: ( PARAM_LIST ->| PARAM_LIST_OR_ID ->| ( nonvoid_type_descriptor )* )
   3843 			int alt12=3;
   3844 			switch ( input.LA(1) ) {
   3845 			case PARAM_LIST:
   3846 				{
   3847 				alt12=1;
   3848 				}
   3849 				break;
   3850 			case PARAM_LIST_OR_ID:
   3851 				{
   3852 				alt12=2;
   3853 				}
   3854 				break;
   3855 			case ARRAY_DESCRIPTOR:
   3856 			case CLASS_DESCRIPTOR:
   3857 			case CLOSE_PAREN:
   3858 			case PRIMITIVE_TYPE:
   3859 				{
   3860 				alt12=3;
   3861 				}
   3862 				break;
   3863 			default:
   3864 				NoViableAltException nvae =
   3865 					new NoViableAltException("", 12, 0, input);
   3866 				throw nvae;
   3867 			}
   3868 			switch (alt12) {
   3869 				case 1 :
   3870 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:602:5: PARAM_LIST
   3871 					{
   3872 					PARAM_LIST88=(Token)match(input,PARAM_LIST,FOLLOW_PARAM_LIST_in_param_list2321);
   3873 					stream_PARAM_LIST.add(PARAM_LIST88);
   3874 
   3875 					// AST REWRITE
   3876 					// elements:
   3877 					// token labels:
   3878 					// rule labels: retval
   3879 					// token list labels:
   3880 					// rule list labels:
   3881 					// wildcard labels:
   3882 					retval.tree = root_0;
   3883 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3884 
   3885 					root_0 = (CommonTree)adaptor.nil();
   3886 					// 602:16: ->
   3887 					{
   3888 						adaptor.addChild(root_0,  parseParamList((CommonToken)PARAM_LIST88) );
   3889 					}
   3890 
   3891 
   3892 					retval.tree = root_0;
   3893 
   3894 					}
   3895 					break;
   3896 				case 2 :
   3897 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:603:5: PARAM_LIST_OR_ID
   3898 					{
   3899 					PARAM_LIST_OR_ID89=(Token)match(input,PARAM_LIST_OR_ID,FOLLOW_PARAM_LIST_OR_ID_in_param_list2331);
   3900 					stream_PARAM_LIST_OR_ID.add(PARAM_LIST_OR_ID89);
   3901 
   3902 					// AST REWRITE
   3903 					// elements:
   3904 					// token labels:
   3905 					// rule labels: retval
   3906 					// token list labels:
   3907 					// rule list labels:
   3908 					// wildcard labels:
   3909 					retval.tree = root_0;
   3910 					RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null);
   3911 
   3912 					root_0 = (CommonTree)adaptor.nil();
   3913 					// 603:22: ->
   3914 					{
   3915 						adaptor.addChild(root_0,  parseParamList((CommonToken)PARAM_LIST_OR_ID89) );
   3916 					}
   3917 
   3918 
   3919 					retval.tree = root_0;
   3920 
   3921 					}
   3922 					break;
   3923 				case 3 :
   3924 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:604:5: ( nonvoid_type_descriptor )*
   3925 					{
   3926 					root_0 = (CommonTree)adaptor.nil();
   3927 
   3928 
   3929 					// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:604:5: ( nonvoid_type_descriptor )*
   3930 					loop11:
   3931 					while (true) {
   3932 						int alt11=2;
   3933 						int LA11_0 = input.LA(1);
   3934 						if ( (LA11_0==ARRAY_DESCRIPTOR||LA11_0==CLASS_DESCRIPTOR||LA11_0==PRIMITIVE_TYPE) ) {
   3935 							alt11=1;
   3936 						}
   3937 
   3938 						switch (alt11) {
   3939 						case 1 :
   3940 							// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:604:5: nonvoid_type_descriptor
   3941 							{
   3942 							pushFollow(FOLLOW_nonvoid_type_descriptor_in_param_list2341);
   3943 							nonvoid_type_descriptor90=nonvoid_type_descriptor();
   3944 							state._fsp--;
   3945 
   3946 							adaptor.addChild(root_0, nonvoid_type_descriptor90.getTree());
   3947 
   3948 							}
   3949 							break;
   3950 
   3951 						default :
   3952 							break loop11;
   3953 						}
   3954 					}
   3955 
   3956 					}
   3957 					break;
   3958 
   3959 			}
   3960 			retval.stop = input.LT(-1);
   3961 
   3962 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   3963 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   3964 
   3965 		}
   3966 		catch (RecognitionException re) {
   3967 			reportError(re);
   3968 			recover(input,re);
   3969 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   3970 		}
   3971 		finally {
   3972 			// do for sure before leaving
   3973 		}
   3974 		return retval;
   3975 	}
   3976 	// $ANTLR end "param_list"
   3977 
   3978 
   3979 	public static class type_descriptor_return extends ParserRuleReturnScope {
   3980 		CommonTree tree;
   3981 		@Override
   3982 		public CommonTree getTree() { return tree; }
   3983 	};
   3984 
   3985 
   3986 	// $ANTLR start "type_descriptor"
   3987 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:606:1: type_descriptor : ( VOID_TYPE | PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR );
   3988 	public final smaliParser.type_descriptor_return type_descriptor() throws RecognitionException {
   3989 		smaliParser.type_descriptor_return retval = new smaliParser.type_descriptor_return();
   3990 		retval.start = input.LT(1);
   3991 
   3992 		CommonTree root_0 = null;
   3993 
   3994 		Token set91=null;
   3995 
   3996 		CommonTree set91_tree=null;
   3997 
   3998 		try {
   3999 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:607:3: ( VOID_TYPE | PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR )
   4000 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:
   4001 			{
   4002 			root_0 = (CommonTree)adaptor.nil();
   4003 
   4004 
   4005 			set91=input.LT(1);
   4006 			if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR||input.LA(1)==PRIMITIVE_TYPE||input.LA(1)==VOID_TYPE ) {
   4007 				input.consume();
   4008 				adaptor.addChild(root_0, (CommonTree)adaptor.create(set91));
   4009 				state.errorRecovery=false;
   4010 			}
   4011 			else {
   4012 				MismatchedSetException mse = new MismatchedSetException(null,input);
   4013 				throw mse;
   4014 			}
   4015 			}
   4016 
   4017 			retval.stop = input.LT(-1);
   4018 
   4019 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   4020 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   4021 
   4022 		}
   4023 		catch (RecognitionException re) {
   4024 			reportError(re);
   4025 			recover(input,re);
   4026 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   4027 		}
   4028 		finally {
   4029 			// do for sure before leaving
   4030 		}
   4031 		return retval;
   4032 	}
   4033 	// $ANTLR end "type_descriptor"
   4034 
   4035 
   4036 	public static class nonvoid_type_descriptor_return extends ParserRuleReturnScope {
   4037 		CommonTree tree;
   4038 		@Override
   4039 		public CommonTree getTree() { return tree; }
   4040 	};
   4041 
   4042 
   4043 	// $ANTLR start "nonvoid_type_descriptor"
   4044 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:612:1: nonvoid_type_descriptor : ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR );
   4045 	public final smaliParser.nonvoid_type_descriptor_return nonvoid_type_descriptor() throws RecognitionException {
   4046 		smaliParser.nonvoid_type_descriptor_return retval = new smaliParser.nonvoid_type_descriptor_return();
   4047 		retval.start = input.LT(1);
   4048 
   4049 		CommonTree root_0 = null;
   4050 
   4051 		Token set92=null;
   4052 
   4053 		CommonTree set92_tree=null;
   4054 
   4055 		try {
   4056 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:613:3: ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR )
   4057 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:
   4058 			{
   4059 			root_0 = (CommonTree)adaptor.nil();
   4060 
   4061 
   4062 			set92=input.LT(1);
   4063 			if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR||input.LA(1)==PRIMITIVE_TYPE ) {
   4064 				input.consume();
   4065 				adaptor.addChild(root_0, (CommonTree)adaptor.create(set92));
   4066 				state.errorRecovery=false;
   4067 			}
   4068 			else {
   4069 				MismatchedSetException mse = new MismatchedSetException(null,input);
   4070 				throw mse;
   4071 			}
   4072 			}
   4073 
   4074 			retval.stop = input.LT(-1);
   4075 
   4076 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   4077 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   4078 
   4079 		}
   4080 		catch (RecognitionException re) {
   4081 			reportError(re);
   4082 			recover(input,re);
   4083 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   4084 		}
   4085 		finally {
   4086 			// do for sure before leaving
   4087 		}
   4088 		return retval;
   4089 	}
   4090 	// $ANTLR end "nonvoid_type_descriptor"
   4091 
   4092 
   4093 	public static class reference_type_descriptor_return extends ParserRuleReturnScope {
   4094 		CommonTree tree;
   4095 		@Override
   4096 		public CommonTree getTree() { return tree; }
   4097 	};
   4098 
   4099 
   4100 	// $ANTLR start "reference_type_descriptor"
   4101 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:617:1: reference_type_descriptor : ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR );
   4102 	public final smaliParser.reference_type_descriptor_return reference_type_descriptor() throws RecognitionException {
   4103 		smaliParser.reference_type_descriptor_return retval = new smaliParser.reference_type_descriptor_return();
   4104 		retval.start = input.LT(1);
   4105 
   4106 		CommonTree root_0 = null;
   4107 
   4108 		Token set93=null;
   4109 
   4110 		CommonTree set93_tree=null;
   4111 
   4112 		try {
   4113 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:618:3: ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR )
   4114 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:
   4115 			{
   4116 			root_0 = (CommonTree)adaptor.nil();
   4117 
   4118 
   4119 			set93=input.LT(1);
   4120 			if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR ) {
   4121 				input.consume();
   4122 				adaptor.addChild(root_0, (CommonTree)adaptor.create(set93));
   4123 				state.errorRecovery=false;
   4124 			}
   4125 			else {
   4126 				MismatchedSetException mse = new MismatchedSetException(null,input);
   4127 				throw mse;
   4128 			}
   4129 			}
   4130 
   4131 			retval.stop = input.LT(-1);
   4132 
   4133 			retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0);
   4134 			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
   4135 
   4136 		}
   4137 		catch (RecognitionException re) {
   4138 			reportError(re);
   4139 			recover(input,re);
   4140 			retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re);
   4141 		}
   4142 		finally {
   4143 			// do for sure before leaving
   4144 		}
   4145 		return retval;
   4146 	}
   4147 	// $ANTLR end "reference_type_descriptor"
   4148 
   4149 
   4150 	public static class integer_literal_return extends ParserRuleReturnScope {
   4151 		CommonTree tree;
   4152 		@Override
   4153 		public CommonTree getTree() { return tree; }
   4154 	};
   4155 
   4156 
   4157 	// $ANTLR start "integer_literal"
   4158 	// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:621:1: integer_literal : ( POSITIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] );
   4159 	public final smaliParser.integer_literal_return integer_literal() throws RecognitionException {
   4160 		smaliParser.integer_literal_return retval = new smaliParser.integer_literal_return();
   4161 		retval.start = input.LT(1);
   4162 
   4163 		CommonTree root_0 = null;
   4164 
   4165 		Token POSITIVE_INTEGER_LITERAL94=null;
   4166 		Token NEGATIVE_INTEGER_LITERAL95=null;
   4167 
   4168 		CommonTree POSITIVE_INTEGER_LITERAL94_tree=null;
   4169 		CommonTree NEGATIVE_INTEGER_LITERAL95_tree=null;
   4170 		RewriteRuleTokenStream stream_NEGATIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token NEGATIVE_INTEGER_LITERAL");
   4171 		RewriteRuleTokenStream stream_POSITIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token POSITIVE_INTEGER_LITERAL");
   4172 
   4173 		try {
   4174 			// /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:622:3: ( POSITIVE_INTEGER_LITERAL -> INTEGER_LITER