1 // $ANTLR 3.5 /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g 2015-04-23 12:35:17
2 
3 package org.jf.smali;
4 
5 import com.google.common.collect.ImmutableSet;
6 import com.google.common.collect.Iterables;
7 import com.google.common.collect.Lists;
8 import com.google.common.collect.Maps;
9 import org.antlr.runtime.BitSet;
10 import org.antlr.runtime.*;
11 import org.antlr.runtime.tree.CommonTree;
12 import org.antlr.runtime.tree.TreeNodeStream;
13 import org.antlr.runtime.tree.TreeParser;
14 import org.antlr.runtime.tree.TreeRuleReturnScope;
15 import org.jf.dexlib2.*;
16 import org.jf.dexlib2.builder.Label;
17 import org.jf.dexlib2.builder.MethodImplementationBuilder;
18 import org.jf.dexlib2.builder.SwitchLabelElement;
19 import org.jf.dexlib2.builder.instruction.*;
20 import org.jf.dexlib2.iface.Annotation;
21 import org.jf.dexlib2.iface.AnnotationElement;
22 import org.jf.dexlib2.iface.ClassDef;
23 import org.jf.dexlib2.iface.MethodImplementation;
24 import org.jf.dexlib2.iface.reference.FieldReference;
25 import org.jf.dexlib2.iface.reference.MethodReference;
26 import org.jf.dexlib2.iface.value.EncodedValue;
27 import org.jf.dexlib2.immutable.ImmutableAnnotation;
28 import org.jf.dexlib2.immutable.ImmutableAnnotationElement;
29 import org.jf.dexlib2.immutable.reference.ImmutableFieldReference;
30 import org.jf.dexlib2.immutable.reference.ImmutableMethodReference;
31 import org.jf.dexlib2.immutable.reference.ImmutableReference;
32 import org.jf.dexlib2.immutable.reference.ImmutableTypeReference;
33 import org.jf.dexlib2.immutable.value.*;
34 import org.jf.dexlib2.util.MethodUtil;
35 import org.jf.dexlib2.writer.InstructionFactory;
36 import org.jf.dexlib2.writer.builder.*;
37 import org.jf.util.LinearSearch;
38 
39 import java.util.*;
40 
41 
42 import org.antlr.runtime.*;
43 import org.antlr.runtime.tree.*;
44 import java.util.Stack;
45 import java.util.List;
46 import java.util.ArrayList;
47 
48 @SuppressWarnings("all")
49 public class smaliTreeWalker extends TreeParser {
50 	public static final String[] tokenNames = new String[] {
51 		"<invalid>", "<EOR>", "<DOWN>", "<UP>", "ACCESS_SPEC", "ANNOTATION_DIRECTIVE",
52 		"ANNOTATION_VISIBILITY", "ARRAY_DATA_DIRECTIVE", "ARRAY_DESCRIPTOR", "ARROW",
53 		"BOOL_LITERAL", "BYTE_LITERAL", "CATCHALL_DIRECTIVE", "CATCH_DIRECTIVE",
54 		"CHAR_LITERAL", "CLASS_DESCRIPTOR", "CLASS_DIRECTIVE", "CLOSE_BRACE",
55 		"CLOSE_PAREN", "COLON", "COMMA", "DOTDOT", "DOUBLE_LITERAL", "DOUBLE_LITERAL_OR_ID",
56 		"END_ANNOTATION_DIRECTIVE", "END_ARRAY_DATA_DIRECTIVE", "END_FIELD_DIRECTIVE",
57 		"END_LOCAL_DIRECTIVE", "END_METHOD_DIRECTIVE", "END_PACKED_SWITCH_DIRECTIVE",
58 		"END_PARAMETER_DIRECTIVE", "END_SPARSE_SWITCH_DIRECTIVE", "END_SUBANNOTATION_DIRECTIVE",
59 		"ENUM_DIRECTIVE", "EPILOGUE_DIRECTIVE", "EQUAL", "FIELD_DIRECTIVE", "FIELD_OFFSET",
60 		"FLOAT_LITERAL", "FLOAT_LITERAL_OR_ID", "IMPLEMENTS_DIRECTIVE", "INLINE_INDEX",
61 		"INSTRUCTION_FORMAT10t", "INSTRUCTION_FORMAT10x", "INSTRUCTION_FORMAT10x_ODEX",
62 		"INSTRUCTION_FORMAT11n", "INSTRUCTION_FORMAT11x", "INSTRUCTION_FORMAT12x",
63 		"INSTRUCTION_FORMAT12x_OR_ID", "INSTRUCTION_FORMAT20bc", "INSTRUCTION_FORMAT20t",
64 		"INSTRUCTION_FORMAT21c_FIELD", "INSTRUCTION_FORMAT21c_FIELD_ODEX", "INSTRUCTION_FORMAT21c_LAMBDA",
65 		"INSTRUCTION_FORMAT21c_METHOD", "INSTRUCTION_FORMAT21c_STRING", "INSTRUCTION_FORMAT21c_TYPE",
66 		"INSTRUCTION_FORMAT21ih", "INSTRUCTION_FORMAT21lh", "INSTRUCTION_FORMAT21s",
67 		"INSTRUCTION_FORMAT21t", "INSTRUCTION_FORMAT22b", "INSTRUCTION_FORMAT22c_FIELD",
68 		"INSTRUCTION_FORMAT22c_FIELD_ODEX", "INSTRUCTION_FORMAT22c_STRING", "INSTRUCTION_FORMAT22c_TYPE",
69 		"INSTRUCTION_FORMAT22cs_FIELD", "INSTRUCTION_FORMAT22s", "INSTRUCTION_FORMAT22s_OR_ID",
70 		"INSTRUCTION_FORMAT22t", "INSTRUCTION_FORMAT22x", "INSTRUCTION_FORMAT23x",
71 		"INSTRUCTION_FORMAT25x", "INSTRUCTION_FORMAT30t", "INSTRUCTION_FORMAT31c",
72 		"INSTRUCTION_FORMAT31i", "INSTRUCTION_FORMAT31i_OR_ID", "INSTRUCTION_FORMAT31t",
73 		"INSTRUCTION_FORMAT32x", "INSTRUCTION_FORMAT35c_METHOD", "INSTRUCTION_FORMAT35c_METHOD_ODEX",
74 		"INSTRUCTION_FORMAT35c_TYPE", "INSTRUCTION_FORMAT35mi_METHOD", "INSTRUCTION_FORMAT35ms_METHOD",
75 		"INSTRUCTION_FORMAT3rc_METHOD", "INSTRUCTION_FORMAT3rc_METHOD_ODEX", "INSTRUCTION_FORMAT3rc_TYPE",
76 		"INSTRUCTION_FORMAT3rmi_METHOD", "INSTRUCTION_FORMAT3rms_METHOD", "INSTRUCTION_FORMAT51l",
77 		"INTEGER_LITERAL", "INVALID_TOKEN", "I_ACCESS_LIST", "I_ANNOTATION", "I_ANNOTATIONS",
78 		"I_ANNOTATION_ELEMENT", "I_ARRAY_ELEMENTS", "I_ARRAY_ELEMENT_SIZE", "I_CATCH",
79 		"I_CATCHALL", "I_CATCHES", "I_CLASS_DEF", "I_ENCODED_ARRAY", "I_ENCODED_ENUM",
80 		"I_ENCODED_FIELD", "I_ENCODED_METHOD", "I_END_LOCAL", "I_EPILOGUE", "I_FIELD",
81 		"I_FIELDS", "I_FIELD_INITIAL_VALUE", "I_FIELD_TYPE", "I_IMPLEMENTS", "I_LABEL",
82 		"I_LINE", "I_LOCAL", "I_LOCALS", "I_METHOD", "I_METHODS", "I_METHOD_PROTOTYPE",
83 		"I_METHOD_RETURN_TYPE", "I_ORDERED_METHOD_ITEMS", "I_PACKED_SWITCH_ELEMENTS",
84 		"I_PACKED_SWITCH_START_KEY", "I_PARAMETER", "I_PARAMETERS", "I_PARAMETER_NOT_SPECIFIED",
85 		"I_PROLOGUE", "I_REGISTERS", "I_REGISTER_LIST", "I_REGISTER_RANGE", "I_RESTART_LOCAL",
86 		"I_SOURCE", "I_SPARSE_SWITCH_ELEMENTS", "I_STATEMENT_ARRAY_DATA", "I_STATEMENT_FORMAT10t",
87 		"I_STATEMENT_FORMAT10x", "I_STATEMENT_FORMAT11n", "I_STATEMENT_FORMAT11x",
88 		"I_STATEMENT_FORMAT12x", "I_STATEMENT_FORMAT20bc", "I_STATEMENT_FORMAT20t",
89 		"I_STATEMENT_FORMAT21c_FIELD", "I_STATEMENT_FORMAT21c_LAMBDA", "I_STATEMENT_FORMAT21c_METHOD",
90 		"I_STATEMENT_FORMAT21c_STRING", "I_STATEMENT_FORMAT21c_TYPE", "I_STATEMENT_FORMAT21ih",
91 		"I_STATEMENT_FORMAT21lh", "I_STATEMENT_FORMAT21s", "I_STATEMENT_FORMAT21t",
92 		"I_STATEMENT_FORMAT22b", "I_STATEMENT_FORMAT22c_FIELD", "I_STATEMENT_FORMAT22c_STRING",
93 		"I_STATEMENT_FORMAT22c_TYPE", "I_STATEMENT_FORMAT22s", "I_STATEMENT_FORMAT22t",
94 		"I_STATEMENT_FORMAT22x", "I_STATEMENT_FORMAT23x", "I_STATEMENT_FORMAT25x",
95 		"I_STATEMENT_FORMAT30t", "I_STATEMENT_FORMAT31c", "I_STATEMENT_FORMAT31i",
96 		"I_STATEMENT_FORMAT31t", "I_STATEMENT_FORMAT32x", "I_STATEMENT_FORMAT35c_METHOD",
97 		"I_STATEMENT_FORMAT35c_TYPE", "I_STATEMENT_FORMAT3rc_METHOD", "I_STATEMENT_FORMAT3rc_TYPE",
98 		"I_STATEMENT_FORMAT51l", "I_STATEMENT_PACKED_SWITCH", "I_STATEMENT_SPARSE_SWITCH",
99 		"I_SUBANNOTATION", "I_SUPER", "LINE_COMMENT", "LINE_DIRECTIVE", "LOCALS_DIRECTIVE",
100 		"LOCAL_DIRECTIVE", "LONG_LITERAL", "MEMBER_NAME", "METHOD_DIRECTIVE",
101 		"NEGATIVE_INTEGER_LITERAL", "NULL_LITERAL", "OPEN_BRACE", "OPEN_PAREN",
102 		"PACKED_SWITCH_DIRECTIVE", "PARAMETER_DIRECTIVE", "PARAM_LIST_END", "PARAM_LIST_OR_ID_END",
103 		"PARAM_LIST_OR_ID_START", "PARAM_LIST_START", "POSITIVE_INTEGER_LITERAL",
104 		"PRIMITIVE_TYPE", "PROLOGUE_DIRECTIVE", "REGISTER", "REGISTERS_DIRECTIVE",
105 		"RESTART_LOCAL_DIRECTIVE", "SHORT_LITERAL", "SIMPLE_NAME", "SOURCE_DIRECTIVE",
106 		"SPARSE_SWITCH_DIRECTIVE", "STRING_LITERAL", "SUBANNOTATION_DIRECTIVE",
107 		"SUPER_DIRECTIVE", "VERIFICATION_ERROR_TYPE", "VOID_TYPE", "VTABLE_INDEX",
108 		"WHITE_SPACE"
109 	};
110 	public static final int EOF=-1;
111 	public static final int ACCESS_SPEC=4;
112 	public static final int ANNOTATION_DIRECTIVE=5;
113 	public static final int ANNOTATION_VISIBILITY=6;
114 	public static final int ARRAY_DATA_DIRECTIVE=7;
115 	public static final int ARRAY_DESCRIPTOR=8;
116 	public static final int ARROW=9;
117 	public static final int BOOL_LITERAL=10;
118 	public static final int BYTE_LITERAL=11;
119 	public static final int CATCHALL_DIRECTIVE=12;
120 	public static final int CATCH_DIRECTIVE=13;
121 	public static final int CHAR_LITERAL=14;
122 	public static final int CLASS_DESCRIPTOR=15;
123 	public static final int CLASS_DIRECTIVE=16;
124 	public static final int CLOSE_BRACE=17;
125 	public static final int CLOSE_PAREN=18;
126 	public static final int COLON=19;
127 	public static final int COMMA=20;
128 	public static final int DOTDOT=21;
129 	public static final int DOUBLE_LITERAL=22;
130 	public static final int DOUBLE_LITERAL_OR_ID=23;
131 	public static final int END_ANNOTATION_DIRECTIVE=24;
132 	public static final int END_ARRAY_DATA_DIRECTIVE=25;
133 	public static final int END_FIELD_DIRECTIVE=26;
134 	public static final int END_LOCAL_DIRECTIVE=27;
135 	public static final int END_METHOD_DIRECTIVE=28;
136 	public static final int END_PACKED_SWITCH_DIRECTIVE=29;
137 	public static final int END_PARAMETER_DIRECTIVE=30;
138 	public static final int END_SPARSE_SWITCH_DIRECTIVE=31;
139 	public static final int END_SUBANNOTATION_DIRECTIVE=32;
140 	public static final int ENUM_DIRECTIVE=33;
141 	public static final int EPILOGUE_DIRECTIVE=34;
142 	public static final int EQUAL=35;
143 	public static final int FIELD_DIRECTIVE=36;
144 	public static final int FIELD_OFFSET=37;
145 	public static final int FLOAT_LITERAL=38;
146 	public static final int FLOAT_LITERAL_OR_ID=39;
147 	public static final int IMPLEMENTS_DIRECTIVE=40;
148 	public static final int INLINE_INDEX=41;
149 	public static final int INSTRUCTION_FORMAT10t=42;
150 	public static final int INSTRUCTION_FORMAT10x=43;
151 	public static final int INSTRUCTION_FORMAT10x_ODEX=44;
152 	public static final int INSTRUCTION_FORMAT11n=45;
153 	public static final int INSTRUCTION_FORMAT11x=46;
154 	public static final int INSTRUCTION_FORMAT12x=47;
155 	public static final int INSTRUCTION_FORMAT12x_OR_ID=48;
156 	public static final int INSTRUCTION_FORMAT20bc=49;
157 	public static final int INSTRUCTION_FORMAT20t=50;
158 	public static final int INSTRUCTION_FORMAT21c_FIELD=51;
159 	public static final int INSTRUCTION_FORMAT21c_FIELD_ODEX=52;
160 	public static final int INSTRUCTION_FORMAT21c_LAMBDA=53;
161 	public static final int INSTRUCTION_FORMAT21c_METHOD=54;
162 	public static final int INSTRUCTION_FORMAT21c_STRING=55;
163 	public static final int INSTRUCTION_FORMAT21c_TYPE=56;
164 	public static final int INSTRUCTION_FORMAT21ih=57;
165 	public static final int INSTRUCTION_FORMAT21lh=58;
166 	public static final int INSTRUCTION_FORMAT21s=59;
167 	public static final int INSTRUCTION_FORMAT21t=60;
168 	public static final int INSTRUCTION_FORMAT22b=61;
169 	public static final int INSTRUCTION_FORMAT22c_FIELD=62;
170 	public static final int INSTRUCTION_FORMAT22c_FIELD_ODEX=63;
171 	public static final int INSTRUCTION_FORMAT22c_STRING=64;
172 	public static final int INSTRUCTION_FORMAT22c_TYPE=65;
173 	public static final int INSTRUCTION_FORMAT22cs_FIELD=66;
174 	public static final int INSTRUCTION_FORMAT22s=67;
175 	public static final int INSTRUCTION_FORMAT22s_OR_ID=68;
176 	public static final int INSTRUCTION_FORMAT22t=69;
177 	public static final int INSTRUCTION_FORMAT22x=70;
178 	public static final int INSTRUCTION_FORMAT23x=71;
179 	public static final int INSTRUCTION_FORMAT25x=72;
180 	public static final int INSTRUCTION_FORMAT30t=73;
181 	public static final int INSTRUCTION_FORMAT31c=74;
182 	public static final int INSTRUCTION_FORMAT31i=75;
183 	public static final int INSTRUCTION_FORMAT31i_OR_ID=76;
184 	public static final int INSTRUCTION_FORMAT31t=77;
185 	public static final int INSTRUCTION_FORMAT32x=78;
186 	public static final int INSTRUCTION_FORMAT35c_METHOD=79;
187 	public static final int INSTRUCTION_FORMAT35c_METHOD_ODEX=80;
188 	public static final int INSTRUCTION_FORMAT35c_TYPE=81;
189 	public static final int INSTRUCTION_FORMAT35mi_METHOD=82;
190 	public static final int INSTRUCTION_FORMAT35ms_METHOD=83;
191 	public static final int INSTRUCTION_FORMAT3rc_METHOD=84;
192 	public static final int INSTRUCTION_FORMAT3rc_METHOD_ODEX=85;
193 	public static final int INSTRUCTION_FORMAT3rc_TYPE=86;
194 	public static final int INSTRUCTION_FORMAT3rmi_METHOD=87;
195 	public static final int INSTRUCTION_FORMAT3rms_METHOD=88;
196 	public static final int INSTRUCTION_FORMAT51l=89;
197 	public static final int INTEGER_LITERAL=90;
198 	public static final int INVALID_TOKEN=91;
199 	public static final int I_ACCESS_LIST=92;
200 	public static final int I_ANNOTATION=93;
201 	public static final int I_ANNOTATIONS=94;
202 	public static final int I_ANNOTATION_ELEMENT=95;
203 	public static final int I_ARRAY_ELEMENTS=96;
204 	public static final int I_ARRAY_ELEMENT_SIZE=97;
205 	public static final int I_CATCH=98;
206 	public static final int I_CATCHALL=99;
207 	public static final int I_CATCHES=100;
208 	public static final int I_CLASS_DEF=101;
209 	public static final int I_ENCODED_ARRAY=102;
210 	public static final int I_ENCODED_ENUM=103;
211 	public static final int I_ENCODED_FIELD=104;
212 	public static final int I_ENCODED_METHOD=105;
213 	public static final int I_END_LOCAL=106;
214 	public static final int I_EPILOGUE=107;
215 	public static final int I_FIELD=108;
216 	public static final int I_FIELDS=109;
217 	public static final int I_FIELD_INITIAL_VALUE=110;
218 	public static final int I_FIELD_TYPE=111;
219 	public static final int I_IMPLEMENTS=112;
220 	public static final int I_LABEL=113;
221 	public static final int I_LINE=114;
222 	public static final int I_LOCAL=115;
223 	public static final int I_LOCALS=116;
224 	public static final int I_METHOD=117;
225 	public static final int I_METHODS=118;
226 	public static final int I_METHOD_PROTOTYPE=119;
227 	public static final int I_METHOD_RETURN_TYPE=120;
228 	public static final int I_ORDERED_METHOD_ITEMS=121;
229 	public static final int I_PACKED_SWITCH_ELEMENTS=122;
230 	public static final int I_PACKED_SWITCH_START_KEY=123;
231 	public static final int I_PARAMETER=124;
232 	public static final int I_PARAMETERS=125;
233 	public static final int I_PARAMETER_NOT_SPECIFIED=126;
234 	public static final int I_PROLOGUE=127;
235 	public static final int I_REGISTERS=128;
236 	public static final int I_REGISTER_LIST=129;
237 	public static final int I_REGISTER_RANGE=130;
238 	public static final int I_RESTART_LOCAL=131;
239 	public static final int I_SOURCE=132;
240 	public static final int I_SPARSE_SWITCH_ELEMENTS=133;
241 	public static final int I_STATEMENT_ARRAY_DATA=134;
242 	public static final int I_STATEMENT_FORMAT10t=135;
243 	public static final int I_STATEMENT_FORMAT10x=136;
244 	public static final int I_STATEMENT_FORMAT11n=137;
245 	public static final int I_STATEMENT_FORMAT11x=138;
246 	public static final int I_STATEMENT_FORMAT12x=139;
247 	public static final int I_STATEMENT_FORMAT20bc=140;
248 	public static final int I_STATEMENT_FORMAT20t=141;
249 	public static final int I_STATEMENT_FORMAT21c_FIELD=142;
250 	public static final int I_STATEMENT_FORMAT21c_LAMBDA=143;
251 	public static final int I_STATEMENT_FORMAT21c_METHOD=144;
252 	public static final int I_STATEMENT_FORMAT21c_STRING=145;
253 	public static final int I_STATEMENT_FORMAT21c_TYPE=146;
254 	public static final int I_STATEMENT_FORMAT21ih=147;
255 	public static final int I_STATEMENT_FORMAT21lh=148;
256 	public static final int I_STATEMENT_FORMAT21s=149;
257 	public static final int I_STATEMENT_FORMAT21t=150;
258 	public static final int I_STATEMENT_FORMAT22b=151;
259 	public static final int I_STATEMENT_FORMAT22c_FIELD=152;
260 	public static final int I_STATEMENT_FORMAT22c_STRING=153;
261 	public static final int I_STATEMENT_FORMAT22c_TYPE=154;
262 	public static final int I_STATEMENT_FORMAT22s=155;
263 	public static final int I_STATEMENT_FORMAT22t=156;
264 	public static final int I_STATEMENT_FORMAT22x=157;
265 	public static final int I_STATEMENT_FORMAT23x=158;
266 	public static final int I_STATEMENT_FORMAT25x=159;
267 	public static final int I_STATEMENT_FORMAT30t=160;
268 	public static final int I_STATEMENT_FORMAT31c=161;
269 	public static final int I_STATEMENT_FORMAT31i=162;
270 	public static final int I_STATEMENT_FORMAT31t=163;
271 	public static final int I_STATEMENT_FORMAT32x=164;
272 	public static final int I_STATEMENT_FORMAT35c_METHOD=165;
273 	public static final int I_STATEMENT_FORMAT35c_TYPE=166;
274 	public static final int I_STATEMENT_FORMAT3rc_METHOD=167;
275 	public static final int I_STATEMENT_FORMAT3rc_TYPE=168;
276 	public static final int I_STATEMENT_FORMAT51l=169;
277 	public static final int I_STATEMENT_PACKED_SWITCH=170;
278 	public static final int I_STATEMENT_SPARSE_SWITCH=171;
279 	public static final int I_SUBANNOTATION=172;
280 	public static final int I_SUPER=173;
281 	public static final int LINE_COMMENT=174;
282 	public static final int LINE_DIRECTIVE=175;
283 	public static final int LOCALS_DIRECTIVE=176;
284 	public static final int LOCAL_DIRECTIVE=177;
285 	public static final int LONG_LITERAL=178;
286 	public static final int MEMBER_NAME=179;
287 	public static final int METHOD_DIRECTIVE=180;
288 	public static final int NEGATIVE_INTEGER_LITERAL=181;
289 	public static final int NULL_LITERAL=182;
290 	public static final int OPEN_BRACE=183;
291 	public static final int OPEN_PAREN=184;
292 	public static final int PACKED_SWITCH_DIRECTIVE=185;
293 	public static final int PARAMETER_DIRECTIVE=186;
294 	public static final int PARAM_LIST_END=187;
295 	public static final int PARAM_LIST_OR_ID_END=188;
296 	public static final int PARAM_LIST_OR_ID_START=189;
297 	public static final int PARAM_LIST_START=190;
298 	public static final int POSITIVE_INTEGER_LITERAL=191;
299 	public static final int PRIMITIVE_TYPE=192;
300 	public static final int PROLOGUE_DIRECTIVE=193;
301 	public static final int REGISTER=194;
302 	public static final int REGISTERS_DIRECTIVE=195;
303 	public static final int RESTART_LOCAL_DIRECTIVE=196;
304 	public static final int SHORT_LITERAL=197;
305 	public static final int SIMPLE_NAME=198;
306 	public static final int SOURCE_DIRECTIVE=199;
307 	public static final int SPARSE_SWITCH_DIRECTIVE=200;
308 	public static final int STRING_LITERAL=201;
309 	public static final int SUBANNOTATION_DIRECTIVE=202;
310 	public static final int SUPER_DIRECTIVE=203;
311 	public static final int VERIFICATION_ERROR_TYPE=204;
312 	public static final int VOID_TYPE=205;
313 	public static final int VTABLE_INDEX=206;
314 	public static final int WHITE_SPACE=207;
315 
316 	// delegates
getDelegates()317 	public TreeParser[] getDelegates() {
318 		return new TreeParser[] {};
319 	}
320 
321 	// delegators
322 
323 
smaliTreeWalker(TreeNodeStream input)324 	public smaliTreeWalker(TreeNodeStream input) {
325 		this(input, new RecognizerSharedState());
326 	}
smaliTreeWalker(TreeNodeStream input, RecognizerSharedState state)327 	public smaliTreeWalker(TreeNodeStream input, RecognizerSharedState state) {
328 		super(input, state);
329 	}
330 
getTokenNames()331 	@Override public String[] getTokenNames() { return smaliTreeWalker.tokenNames; }
getGrammarFileName()332 	@Override public String getGrammarFileName() { return "/mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g"; }
333 
334 
335 	  public String classType;
336 	  private boolean verboseErrors = false;
337 	  private int apiLevel = 15;
338 	  private Opcodes opcodes = new Opcodes(apiLevel, false);
339 	  private DexBuilder dexBuilder;
340 
setDexBuilder(DexBuilder dexBuilder)341 	  public void setDexBuilder(DexBuilder dexBuilder) {
342 	      this.dexBuilder = dexBuilder;
343 	  }
344 
setApiLevel(int apiLevel, boolean experimental)345 	  public void setApiLevel(int apiLevel, boolean experimental) {
346 	      this.opcodes = new Opcodes(apiLevel, experimental);
347 	      this.apiLevel = apiLevel;
348 	  }
349 
setVerboseErrors(boolean verboseErrors)350 	  public void setVerboseErrors(boolean verboseErrors) {
351 	    this.verboseErrors = verboseErrors;
352 	  }
353 
parseRegister_nibble(String register)354 	  private byte parseRegister_nibble(String register)
355 	      throws SemanticException {
356 	    int totalMethodRegisters = method_stack.peek().totalMethodRegisters;
357 	    int methodParameterRegisters = method_stack.peek().methodParameterRegisters;
358 
359 	    //register should be in the format "v12"
360 	    int val = Byte.parseByte(register.substring(1));
361 	    if (register.charAt(0) == 'p') {
362 	      val = totalMethodRegisters - methodParameterRegisters + val;
363 	    }
364 	    if (val >= 2<<4) {
365 	      throw new SemanticException(input, "The maximum allowed register in this context is list of registers is v15");
366 	    }
367 	    //the parser wouldn't have accepted a negative register, i.e. v-1, so we don't have to check for val<0;
368 	    return (byte)val;
369 	  }
370 
371 	  //return a short, because java's byte is signed
parseRegister_byte(String register)372 	  private short parseRegister_byte(String register)
373 	      throws SemanticException {
374 	    int totalMethodRegisters = method_stack.peek().totalMethodRegisters;
375 	    int methodParameterRegisters = method_stack.peek().methodParameterRegisters;
376 	    //register should be in the format "v123"
377 	    int val = Short.parseShort(register.substring(1));
378 	    if (register.charAt(0) == 'p') {
379 	      val = totalMethodRegisters - methodParameterRegisters + val;
380 	    }
381 	    if (val >= 2<<8) {
382 	      throw new SemanticException(input, "The maximum allowed register in this context is v255");
383 	    }
384 	    return (short)val;
385 	  }
386 
387 	  //return an int because java's short is signed
parseRegister_short(String register)388 	  private int parseRegister_short(String register)
389 	      throws SemanticException {
390 	    int totalMethodRegisters = method_stack.peek().totalMethodRegisters;
391 	    int methodParameterRegisters = method_stack.peek().methodParameterRegisters;
392 	    //register should be in the format "v12345"
393 	    int val = Integer.parseInt(register.substring(1));
394 	    if (register.charAt(0) == 'p') {
395 	      val = totalMethodRegisters - methodParameterRegisters + val;
396 	    }
397 	    if (val >= 2<<16) {
398 	      throw new SemanticException(input, "The maximum allowed register in this context is v65535");
399 	    }
400 	    //the parser wouldn't accept a negative register, i.e. v-1, so we don't have to check for val<0;
401 	    return val;
402 	  }
403 
getErrorMessage(RecognitionException e, String[] tokenNames)404 	  public String getErrorMessage(RecognitionException e, String[] tokenNames) {
405 	    if ( e instanceof SemanticException ) {
406 	      return e.getMessage();
407 	    } else {
408 	      return super.getErrorMessage(e, tokenNames);
409 	    }
410 	  }
411 
getErrorHeader(RecognitionException e)412 	  public String getErrorHeader(RecognitionException e) {
413 	    return getSourceName()+"["+ e.line+","+e.charPositionInLine+"]";
414 	  }
415 
416 
417 
418 	// $ANTLR start "smali_file"
419 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:159:1: smali_file returns [ClassDef classDef] : ^( I_CLASS_DEF header methods fields annotations ) ;
smali_file()420 	public final ClassDef smali_file() throws RecognitionException {
421 		ClassDef classDef = null;
422 
423 
424 		TreeRuleReturnScope header1 =null;
425 		Set<Annotation> annotations2 =null;
426 		List<BuilderField> fields3 =null;
427 		List<BuilderMethod> methods4 =null;
428 
429 		try {
430 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:160:3: ( ^( I_CLASS_DEF header methods fields annotations ) )
431 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:160:5: ^( I_CLASS_DEF header methods fields annotations )
432 			{
433 			match(input,I_CLASS_DEF,FOLLOW_I_CLASS_DEF_in_smali_file52);
434 			match(input, Token.DOWN, null);
435 			pushFollow(FOLLOW_header_in_smali_file54);
436 			header1=header();
437 			state._fsp--;
438 
439 			pushFollow(FOLLOW_methods_in_smali_file56);
440 			methods4=methods();
441 			state._fsp--;
442 
443 			pushFollow(FOLLOW_fields_in_smali_file58);
444 			fields3=fields();
445 			state._fsp--;
446 
447 			pushFollow(FOLLOW_annotations_in_smali_file60);
448 			annotations2=annotations();
449 			state._fsp--;
450 
451 			match(input, Token.UP, null);
452 
453 
454 			    classDef = dexBuilder.internClassDef((header1!=null?((smaliTreeWalker.header_return)header1).classType:null), (header1!=null?((smaliTreeWalker.header_return)header1).accessFlags:0), (header1!=null?((smaliTreeWalker.header_return)header1).superType:null),
455 			            (header1!=null?((smaliTreeWalker.header_return)header1).implementsList:null), (header1!=null?((smaliTreeWalker.header_return)header1).sourceSpec:null), annotations2, fields3, methods4);
456 
457 			}
458 
459 		}
460 		catch (Exception ex) {
461 
462 			    if (verboseErrors) {
463 			      ex.printStackTrace(System.err);
464 			    }
465 			    reportError(new SemanticException(input, ex));
466 
467 		}
468 
469 		finally {
470 			// do for sure before leaving
471 		}
472 		return classDef;
473 	}
474 	// $ANTLR end "smali_file"
475 
476 
477 	public static class header_return extends TreeRuleReturnScope {
478 		public String classType;
479 		public int accessFlags;
480 		public String superType;
481 		public List<String> implementsList;
482 		public String sourceSpec;
483 	};
484 
485 
486 	// $ANTLR start "header"
487 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:173:1: header returns [String classType, int accessFlags, String superType, List<String> implementsList, String sourceSpec] : class_spec ( super_spec )? implements_list source_spec ;
header()488 	public final smaliTreeWalker.header_return header() throws RecognitionException {
489 		smaliTreeWalker.header_return retval = new smaliTreeWalker.header_return();
490 		retval.start = input.LT(1);
491 
492 		TreeRuleReturnScope class_spec5 =null;
493 		String super_spec6 =null;
494 		List<String> implements_list7 =null;
495 		String source_spec8 =null;
496 
497 		try {
498 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:174:3: ( class_spec ( super_spec )? implements_list source_spec )
499 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:174:3: class_spec ( super_spec )? implements_list source_spec
500 			{
501 			pushFollow(FOLLOW_class_spec_in_header85);
502 			class_spec5=class_spec();
503 			state._fsp--;
504 
505 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:174:14: ( super_spec )?
506 			int alt1=2;
507 			int LA1_0 = input.LA(1);
508 			if ( (LA1_0==I_SUPER) ) {
509 				alt1=1;
510 			}
511 			switch (alt1) {
512 				case 1 :
513 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:174:14: super_spec
514 					{
515 					pushFollow(FOLLOW_super_spec_in_header87);
516 					super_spec6=super_spec();
517 					state._fsp--;
518 
519 					}
520 					break;
521 
522 			}
523 
524 			pushFollow(FOLLOW_implements_list_in_header90);
525 			implements_list7=implements_list();
526 			state._fsp--;
527 
528 			pushFollow(FOLLOW_source_spec_in_header92);
529 			source_spec8=source_spec();
530 			state._fsp--;
531 
532 
533 			    classType = (class_spec5!=null?((smaliTreeWalker.class_spec_return)class_spec5).type:null);
534 			    retval.classType = classType;
535 			    retval.accessFlags = (class_spec5!=null?((smaliTreeWalker.class_spec_return)class_spec5).accessFlags:0);
536 			    retval.superType = super_spec6;
537 			    retval.implementsList = implements_list7;
538 			    retval.sourceSpec = source_spec8;
539 
540 			}
541 
542 		}
543 		catch (RecognitionException re) {
544 			reportError(re);
545 			recover(input,re);
546 		}
547 		finally {
548 			// do for sure before leaving
549 		}
550 		return retval;
551 	}
552 	// $ANTLR end "header"
553 
554 
555 	public static class class_spec_return extends TreeRuleReturnScope {
556 		public String type;
557 		public int accessFlags;
558 	};
559 
560 
561 	// $ANTLR start "class_spec"
562 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:185:1: class_spec returns [String type, int accessFlags] : CLASS_DESCRIPTOR access_list ;
class_spec()563 	public final smaliTreeWalker.class_spec_return class_spec() throws RecognitionException {
564 		smaliTreeWalker.class_spec_return retval = new smaliTreeWalker.class_spec_return();
565 		retval.start = input.LT(1);
566 
567 		CommonTree CLASS_DESCRIPTOR9=null;
568 		int access_list10 =0;
569 
570 		try {
571 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:186:3: ( CLASS_DESCRIPTOR access_list )
572 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:186:5: CLASS_DESCRIPTOR access_list
573 			{
574 			CLASS_DESCRIPTOR9=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_class_spec110);
575 			pushFollow(FOLLOW_access_list_in_class_spec112);
576 			access_list10=access_list();
577 			state._fsp--;
578 
579 
580 			    retval.type = (CLASS_DESCRIPTOR9!=null?CLASS_DESCRIPTOR9.getText():null);
581 			    retval.accessFlags = access_list10;
582 
583 			}
584 
585 		}
586 		catch (RecognitionException re) {
587 			reportError(re);
588 			recover(input,re);
589 		}
590 		finally {
591 			// do for sure before leaving
592 		}
593 		return retval;
594 	}
595 	// $ANTLR end "class_spec"
596 
597 
598 
599 	// $ANTLR start "super_spec"
600 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:192:1: super_spec returns [String type] : ^( I_SUPER CLASS_DESCRIPTOR ) ;
super_spec()601 	public final String super_spec() throws RecognitionException {
602 		String type = null;
603 
604 
605 		CommonTree CLASS_DESCRIPTOR11=null;
606 
607 		try {
608 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:193:3: ( ^( I_SUPER CLASS_DESCRIPTOR ) )
609 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:193:5: ^( I_SUPER CLASS_DESCRIPTOR )
610 			{
611 			match(input,I_SUPER,FOLLOW_I_SUPER_in_super_spec130);
612 			match(input, Token.DOWN, null);
613 			CLASS_DESCRIPTOR11=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_super_spec132);
614 			match(input, Token.UP, null);
615 
616 
617 			    type = (CLASS_DESCRIPTOR11!=null?CLASS_DESCRIPTOR11.getText():null);
618 
619 			}
620 
621 		}
622 		catch (RecognitionException re) {
623 			reportError(re);
624 			recover(input,re);
625 		}
626 		finally {
627 			// do for sure before leaving
628 		}
629 		return type;
630 	}
631 	// $ANTLR end "super_spec"
632 
633 
634 
635 	// $ANTLR start "implements_spec"
636 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:199:1: implements_spec returns [String type] : ^( I_IMPLEMENTS CLASS_DESCRIPTOR ) ;
implements_spec()637 	public final String implements_spec() throws RecognitionException {
638 		String type = null;
639 
640 
641 		CommonTree CLASS_DESCRIPTOR12=null;
642 
643 		try {
644 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:200:3: ( ^( I_IMPLEMENTS CLASS_DESCRIPTOR ) )
645 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:200:5: ^( I_IMPLEMENTS CLASS_DESCRIPTOR )
646 			{
647 			match(input,I_IMPLEMENTS,FOLLOW_I_IMPLEMENTS_in_implements_spec152);
648 			match(input, Token.DOWN, null);
649 			CLASS_DESCRIPTOR12=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_implements_spec154);
650 			match(input, Token.UP, null);
651 
652 
653 			    type = (CLASS_DESCRIPTOR12!=null?CLASS_DESCRIPTOR12.getText():null);
654 
655 			}
656 
657 		}
658 		catch (RecognitionException re) {
659 			reportError(re);
660 			recover(input,re);
661 		}
662 		finally {
663 			// do for sure before leaving
664 		}
665 		return type;
666 	}
667 	// $ANTLR end "implements_spec"
668 
669 
670 
671 	// $ANTLR start "implements_list"
672 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:205:1: implements_list returns [List<String> implementsList] : ( implements_spec )* ;
implements_list()673 	public final List<String> implements_list() throws RecognitionException {
674 		List<String> implementsList = null;
675 
676 
677 		String implements_spec13 =null;
678 
679 		 List<String> typeList;
680 		try {
681 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:207:3: ( ( implements_spec )* )
682 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:207:5: ( implements_spec )*
683 			{
684 			typeList = Lists.newArrayList();
685 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:208:5: ( implements_spec )*
686 			loop2:
687 			while (true) {
688 				int alt2=2;
689 				int LA2_0 = input.LA(1);
690 				if ( (LA2_0==I_IMPLEMENTS) ) {
691 					alt2=1;
692 				}
693 
694 				switch (alt2) {
695 				case 1 :
696 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:208:6: implements_spec
697 					{
698 					pushFollow(FOLLOW_implements_spec_in_implements_list184);
699 					implements_spec13=implements_spec();
700 					state._fsp--;
701 
702 					typeList.add(implements_spec13);
703 					}
704 					break;
705 
706 				default :
707 					break loop2;
708 				}
709 			}
710 
711 
712 			    if (typeList.size() > 0) {
713 			      implementsList = typeList;
714 			    } else {
715 			      implementsList = null;
716 			    }
717 
718 			}
719 
720 		}
721 		catch (RecognitionException re) {
722 			reportError(re);
723 			recover(input,re);
724 		}
725 		finally {
726 			// do for sure before leaving
727 		}
728 		return implementsList;
729 	}
730 	// $ANTLR end "implements_list"
731 
732 
733 
734 	// $ANTLR start "source_spec"
735 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:217:1: source_spec returns [String source] : ( ^( I_SOURCE string_literal ) |);
source_spec()736 	public final String source_spec() throws RecognitionException {
737 		String source = null;
738 
739 
740 		String string_literal14 =null;
741 
742 		try {
743 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:218:3: ( ^( I_SOURCE string_literal ) |)
744 			int alt3=2;
745 			int LA3_0 = input.LA(1);
746 			if ( (LA3_0==I_SOURCE) ) {
747 				alt3=1;
748 			}
749 			else if ( (LA3_0==I_METHODS) ) {
750 				alt3=2;
751 			}
752 
753 			else {
754 				NoViableAltException nvae =
755 					new NoViableAltException("", 3, 0, input);
756 				throw nvae;
757 			}
758 
759 			switch (alt3) {
760 				case 1 :
761 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:218:5: ^( I_SOURCE string_literal )
762 					{
763 					source = null;
764 					match(input,I_SOURCE,FOLLOW_I_SOURCE_in_source_spec213);
765 					match(input, Token.DOWN, null);
766 					pushFollow(FOLLOW_string_literal_in_source_spec215);
767 					string_literal14=string_literal();
768 					state._fsp--;
769 
770 					source = string_literal14;
771 					match(input, Token.UP, null);
772 
773 					}
774 					break;
775 				case 2 :
776 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:220:16:
777 					{
778 					}
779 					break;
780 
781 			}
782 		}
783 		catch (RecognitionException re) {
784 			reportError(re);
785 			recover(input,re);
786 		}
787 		finally {
788 			// do for sure before leaving
789 		}
790 		return source;
791 	}
792 	// $ANTLR end "source_spec"
793 
794 
795 
796 	// $ANTLR start "access_list"
797 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:222:1: access_list returns [int value] : ^( I_ACCESS_LIST ( ACCESS_SPEC )* ) ;
access_list()798 	public final int access_list() throws RecognitionException {
799 		int value = 0;
800 
801 
802 		CommonTree ACCESS_SPEC15=null;
803 
804 
805 		    value = 0;
806 
807 		try {
808 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:227:3: ( ^( I_ACCESS_LIST ( ACCESS_SPEC )* ) )
809 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:227:5: ^( I_ACCESS_LIST ( ACCESS_SPEC )* )
810 			{
811 			match(input,I_ACCESS_LIST,FOLLOW_I_ACCESS_LIST_in_access_list248);
812 			if ( input.LA(1)==Token.DOWN ) {
813 				match(input, Token.DOWN, null);
814 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:228:7: ( ACCESS_SPEC )*
815 				loop4:
816 				while (true) {
817 					int alt4=2;
818 					int LA4_0 = input.LA(1);
819 					if ( (LA4_0==ACCESS_SPEC) ) {
820 						alt4=1;
821 					}
822 
823 					switch (alt4) {
824 					case 1 :
825 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:229:9: ACCESS_SPEC
826 						{
827 						ACCESS_SPEC15=(CommonTree)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_access_list266);
828 
829 						          value |= AccessFlags.getAccessFlag(ACCESS_SPEC15.getText()).getValue();
830 
831 						}
832 						break;
833 
834 					default :
835 						break loop4;
836 					}
837 				}
838 
839 				match(input, Token.UP, null);
840 			}
841 
842 			}
843 
844 		}
845 		catch (RecognitionException re) {
846 			reportError(re);
847 			recover(input,re);
848 		}
849 		finally {
850 			// do for sure before leaving
851 		}
852 		return value;
853 	}
854 	// $ANTLR end "access_list"
855 
856 
857 
858 	// $ANTLR start "fields"
859 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:236:1: fields returns [List<BuilderField> fields] : ^( I_FIELDS ( field )* ) ;
fields()860 	public final List<BuilderField> fields() throws RecognitionException {
861 		List<BuilderField> fields = null;
862 
863 
864 		BuilderField field16 =null;
865 
866 		fields = Lists.newArrayList();
867 		try {
868 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:238:3: ( ^( I_FIELDS ( field )* ) )
869 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:238:5: ^( I_FIELDS ( field )* )
870 			{
871 			match(input,I_FIELDS,FOLLOW_I_FIELDS_in_fields308);
872 			if ( input.LA(1)==Token.DOWN ) {
873 				match(input, Token.DOWN, null);
874 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:239:7: ( field )*
875 				loop5:
876 				while (true) {
877 					int alt5=2;
878 					int LA5_0 = input.LA(1);
879 					if ( (LA5_0==I_FIELD) ) {
880 						alt5=1;
881 					}
882 
883 					switch (alt5) {
884 					case 1 :
885 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:239:8: field
886 						{
887 						pushFollow(FOLLOW_field_in_fields317);
888 						field16=field();
889 						state._fsp--;
890 
891 
892 						        fields.add(field16);
893 
894 						}
895 						break;
896 
897 					default :
898 						break loop5;
899 					}
900 				}
901 
902 				match(input, Token.UP, null);
903 			}
904 
905 			}
906 
907 		}
908 		catch (RecognitionException re) {
909 			reportError(re);
910 			recover(input,re);
911 		}
912 		finally {
913 			// do for sure before leaving
914 		}
915 		return fields;
916 	}
917 	// $ANTLR end "fields"
918 
919 
920 
921 	// $ANTLR start "methods"
922 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:244:1: methods returns [List<BuilderMethod> methods] : ^( I_METHODS ( method )* ) ;
methods()923 	public final List<BuilderMethod> methods() throws RecognitionException {
924 		List<BuilderMethod> methods = null;
925 
926 
927 		BuilderMethod method17 =null;
928 
929 		methods = Lists.newArrayList();
930 		try {
931 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:246:3: ( ^( I_METHODS ( method )* ) )
932 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:246:5: ^( I_METHODS ( method )* )
933 			{
934 			match(input,I_METHODS,FOLLOW_I_METHODS_in_methods349);
935 			if ( input.LA(1)==Token.DOWN ) {
936 				match(input, Token.DOWN, null);
937 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:247:7: ( method )*
938 				loop6:
939 				while (true) {
940 					int alt6=2;
941 					int LA6_0 = input.LA(1);
942 					if ( (LA6_0==I_METHOD) ) {
943 						alt6=1;
944 					}
945 
946 					switch (alt6) {
947 					case 1 :
948 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:247:8: method
949 						{
950 						pushFollow(FOLLOW_method_in_methods358);
951 						method17=method();
952 						state._fsp--;
953 
954 
955 						        methods.add(method17);
956 
957 						}
958 						break;
959 
960 					default :
961 						break loop6;
962 					}
963 				}
964 
965 				match(input, Token.UP, null);
966 			}
967 
968 			}
969 
970 		}
971 		catch (RecognitionException re) {
972 			reportError(re);
973 			recover(input,re);
974 		}
975 		finally {
976 			// do for sure before leaving
977 		}
978 		return methods;
979 	}
980 	// $ANTLR end "methods"
981 
982 
983 
984 	// $ANTLR start "field"
985 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:252:1: field returns [BuilderField field] : ^( I_FIELD SIMPLE_NAME access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) field_initial_value ( annotations )? ) ;
field()986 	public final BuilderField field() throws RecognitionException {
987 		BuilderField field = null;
988 
989 
990 		CommonTree SIMPLE_NAME20=null;
991 		int access_list18 =0;
992 		EncodedValue field_initial_value19 =null;
993 		TreeRuleReturnScope nonvoid_type_descriptor21 =null;
994 		Set<Annotation> annotations22 =null;
995 
996 		try {
997 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:253:3: ( ^( I_FIELD SIMPLE_NAME access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) field_initial_value ( annotations )? ) )
998 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:253:4: ^( I_FIELD SIMPLE_NAME access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) field_initial_value ( annotations )? )
999 			{
1000 			match(input,I_FIELD,FOLLOW_I_FIELD_in_field383);
1001 			match(input, Token.DOWN, null);
1002 			SIMPLE_NAME20=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_field385);
1003 			pushFollow(FOLLOW_access_list_in_field387);
1004 			access_list18=access_list();
1005 			state._fsp--;
1006 
1007 			match(input,I_FIELD_TYPE,FOLLOW_I_FIELD_TYPE_in_field390);
1008 			match(input, Token.DOWN, null);
1009 			pushFollow(FOLLOW_nonvoid_type_descriptor_in_field392);
1010 			nonvoid_type_descriptor21=nonvoid_type_descriptor();
1011 			state._fsp--;
1012 
1013 			match(input, Token.UP, null);
1014 
1015 			pushFollow(FOLLOW_field_initial_value_in_field395);
1016 			field_initial_value19=field_initial_value();
1017 			state._fsp--;
1018 
1019 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:253:98: ( annotations )?
1020 			int alt7=2;
1021 			int LA7_0 = input.LA(1);
1022 			if ( (LA7_0==I_ANNOTATIONS) ) {
1023 				alt7=1;
1024 			}
1025 			switch (alt7) {
1026 				case 1 :
1027 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:253:98: annotations
1028 					{
1029 					pushFollow(FOLLOW_annotations_in_field397);
1030 					annotations22=annotations();
1031 					state._fsp--;
1032 
1033 					}
1034 					break;
1035 
1036 			}
1037 
1038 			match(input, Token.UP, null);
1039 
1040 
1041 			    int accessFlags = access_list18;
1042 
1043 
1044 			    if (!AccessFlags.STATIC.isSet(accessFlags) && field_initial_value19 != null) {
1045 			        throw new SemanticException(input, "Initial field values can only be specified for static fields.");
1046 			    }
1047 
1048 			    field = dexBuilder.internField(classType, (SIMPLE_NAME20!=null?SIMPLE_NAME20.getText():null), (nonvoid_type_descriptor21!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor21).type:null), access_list18,
1049 			            field_initial_value19, annotations22);
1050 
1051 			}
1052 
1053 		}
1054 		catch (RecognitionException re) {
1055 			reportError(re);
1056 			recover(input,re);
1057 		}
1058 		finally {
1059 			// do for sure before leaving
1060 		}
1061 		return field;
1062 	}
1063 	// $ANTLR end "field"
1064 
1065 
1066 
1067 	// $ANTLR start "field_initial_value"
1068 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:267:1: field_initial_value returns [EncodedValue encodedValue] : ( ^( I_FIELD_INITIAL_VALUE literal ) |);
field_initial_value()1069 	public final EncodedValue field_initial_value() throws RecognitionException {
1070 		EncodedValue encodedValue = null;
1071 
1072 
1073 		EncodedValue literal23 =null;
1074 
1075 		try {
1076 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:268:3: ( ^( I_FIELD_INITIAL_VALUE literal ) |)
1077 			int alt8=2;
1078 			int LA8_0 = input.LA(1);
1079 			if ( (LA8_0==I_FIELD_INITIAL_VALUE) ) {
1080 				alt8=1;
1081 			}
1082 			else if ( (LA8_0==UP||LA8_0==I_ANNOTATIONS) ) {
1083 				alt8=2;
1084 			}
1085 
1086 			else {
1087 				NoViableAltException nvae =
1088 					new NoViableAltException("", 8, 0, input);
1089 				throw nvae;
1090 			}
1091 
1092 			switch (alt8) {
1093 				case 1 :
1094 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:268:5: ^( I_FIELD_INITIAL_VALUE literal )
1095 					{
1096 					match(input,I_FIELD_INITIAL_VALUE,FOLLOW_I_FIELD_INITIAL_VALUE_in_field_initial_value418);
1097 					match(input, Token.DOWN, null);
1098 					pushFollow(FOLLOW_literal_in_field_initial_value420);
1099 					literal23=literal();
1100 					state._fsp--;
1101 
1102 					match(input, Token.UP, null);
1103 
1104 					encodedValue = literal23;
1105 					}
1106 					break;
1107 				case 2 :
1108 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:269:16:
1109 					{
1110 					}
1111 					break;
1112 
1113 			}
1114 		}
1115 		catch (RecognitionException re) {
1116 			reportError(re);
1117 			recover(input,re);
1118 		}
1119 		finally {
1120 			// do for sure before leaving
1121 		}
1122 		return encodedValue;
1123 	}
1124 	// $ANTLR end "field_initial_value"
1125 
1126 
1127 
1128 	// $ANTLR start "literal"
1129 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:271:1: literal returns [EncodedValue encodedValue] : ( integer_literal | long_literal | short_literal | byte_literal | float_literal | double_literal | char_literal | string_literal | bool_literal | NULL_LITERAL | type_descriptor | array_literal | subannotation | field_literal | method_literal | enum_literal );
literal()1130 	public final EncodedValue literal() throws RecognitionException {
1131 		EncodedValue encodedValue = null;
1132 
1133 
1134 		int integer_literal24 =0;
1135 		long long_literal25 =0;
1136 		short short_literal26 =0;
1137 		byte byte_literal27 =0;
1138 		float float_literal28 =0.0f;
1139 		double double_literal29 =0.0;
1140 		char char_literal30 =0;
1141 		String string_literal31 =null;
1142 		boolean bool_literal32 =false;
1143 		String type_descriptor33 =null;
1144 		List<EncodedValue> array_literal34 =null;
1145 		TreeRuleReturnScope subannotation35 =null;
1146 		FieldReference field_literal36 =null;
1147 		MethodReference method_literal37 =null;
1148 		FieldReference enum_literal38 =null;
1149 
1150 		try {
1151 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:272:3: ( integer_literal | long_literal | short_literal | byte_literal | float_literal | double_literal | char_literal | string_literal | bool_literal | NULL_LITERAL | type_descriptor | array_literal | subannotation | field_literal | method_literal | enum_literal )
1152 			int alt9=16;
1153 			switch ( input.LA(1) ) {
1154 			case INTEGER_LITERAL:
1155 				{
1156 				alt9=1;
1157 				}
1158 				break;
1159 			case LONG_LITERAL:
1160 				{
1161 				alt9=2;
1162 				}
1163 				break;
1164 			case SHORT_LITERAL:
1165 				{
1166 				alt9=3;
1167 				}
1168 				break;
1169 			case BYTE_LITERAL:
1170 				{
1171 				alt9=4;
1172 				}
1173 				break;
1174 			case FLOAT_LITERAL:
1175 				{
1176 				alt9=5;
1177 				}
1178 				break;
1179 			case DOUBLE_LITERAL:
1180 				{
1181 				alt9=6;
1182 				}
1183 				break;
1184 			case CHAR_LITERAL:
1185 				{
1186 				alt9=7;
1187 				}
1188 				break;
1189 			case STRING_LITERAL:
1190 				{
1191 				alt9=8;
1192 				}
1193 				break;
1194 			case BOOL_LITERAL:
1195 				{
1196 				alt9=9;
1197 				}
1198 				break;
1199 			case NULL_LITERAL:
1200 				{
1201 				alt9=10;
1202 				}
1203 				break;
1204 			case ARRAY_DESCRIPTOR:
1205 			case CLASS_DESCRIPTOR:
1206 			case PRIMITIVE_TYPE:
1207 			case VOID_TYPE:
1208 				{
1209 				alt9=11;
1210 				}
1211 				break;
1212 			case I_ENCODED_ARRAY:
1213 				{
1214 				alt9=12;
1215 				}
1216 				break;
1217 			case I_SUBANNOTATION:
1218 				{
1219 				alt9=13;
1220 				}
1221 				break;
1222 			case I_ENCODED_FIELD:
1223 				{
1224 				alt9=14;
1225 				}
1226 				break;
1227 			case I_ENCODED_METHOD:
1228 				{
1229 				alt9=15;
1230 				}
1231 				break;
1232 			case I_ENCODED_ENUM:
1233 				{
1234 				alt9=16;
1235 				}
1236 				break;
1237 			default:
1238 				NoViableAltException nvae =
1239 					new NoViableAltException("", 9, 0, input);
1240 				throw nvae;
1241 			}
1242 			switch (alt9) {
1243 				case 1 :
1244 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:272:5: integer_literal
1245 					{
1246 					pushFollow(FOLLOW_integer_literal_in_literal442);
1247 					integer_literal24=integer_literal();
1248 					state._fsp--;
1249 
1250 					 encodedValue = new ImmutableIntEncodedValue(integer_literal24);
1251 					}
1252 					break;
1253 				case 2 :
1254 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:273:5: long_literal
1255 					{
1256 					pushFollow(FOLLOW_long_literal_in_literal450);
1257 					long_literal25=long_literal();
1258 					state._fsp--;
1259 
1260 					 encodedValue = new ImmutableLongEncodedValue(long_literal25);
1261 					}
1262 					break;
1263 				case 3 :
1264 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:274:5: short_literal
1265 					{
1266 					pushFollow(FOLLOW_short_literal_in_literal458);
1267 					short_literal26=short_literal();
1268 					state._fsp--;
1269 
1270 					 encodedValue = new ImmutableShortEncodedValue(short_literal26);
1271 					}
1272 					break;
1273 				case 4 :
1274 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:275:5: byte_literal
1275 					{
1276 					pushFollow(FOLLOW_byte_literal_in_literal466);
1277 					byte_literal27=byte_literal();
1278 					state._fsp--;
1279 
1280 					 encodedValue = new ImmutableByteEncodedValue(byte_literal27);
1281 					}
1282 					break;
1283 				case 5 :
1284 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:276:5: float_literal
1285 					{
1286 					pushFollow(FOLLOW_float_literal_in_literal474);
1287 					float_literal28=float_literal();
1288 					state._fsp--;
1289 
1290 					 encodedValue = new ImmutableFloatEncodedValue(float_literal28);
1291 					}
1292 					break;
1293 				case 6 :
1294 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:277:5: double_literal
1295 					{
1296 					pushFollow(FOLLOW_double_literal_in_literal482);
1297 					double_literal29=double_literal();
1298 					state._fsp--;
1299 
1300 					 encodedValue = new ImmutableDoubleEncodedValue(double_literal29);
1301 					}
1302 					break;
1303 				case 7 :
1304 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:278:5: char_literal
1305 					{
1306 					pushFollow(FOLLOW_char_literal_in_literal490);
1307 					char_literal30=char_literal();
1308 					state._fsp--;
1309 
1310 					 encodedValue = new ImmutableCharEncodedValue(char_literal30);
1311 					}
1312 					break;
1313 				case 8 :
1314 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:279:5: string_literal
1315 					{
1316 					pushFollow(FOLLOW_string_literal_in_literal498);
1317 					string_literal31=string_literal();
1318 					state._fsp--;
1319 
1320 					 encodedValue = new ImmutableStringEncodedValue(string_literal31);
1321 					}
1322 					break;
1323 				case 9 :
1324 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:280:5: bool_literal
1325 					{
1326 					pushFollow(FOLLOW_bool_literal_in_literal506);
1327 					bool_literal32=bool_literal();
1328 					state._fsp--;
1329 
1330 					 encodedValue = ImmutableBooleanEncodedValue.forBoolean(bool_literal32);
1331 					}
1332 					break;
1333 				case 10 :
1334 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:281:5: NULL_LITERAL
1335 					{
1336 					match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_literal514);
1337 					 encodedValue = ImmutableNullEncodedValue.INSTANCE;
1338 					}
1339 					break;
1340 				case 11 :
1341 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:282:5: type_descriptor
1342 					{
1343 					pushFollow(FOLLOW_type_descriptor_in_literal522);
1344 					type_descriptor33=type_descriptor();
1345 					state._fsp--;
1346 
1347 					 encodedValue = new ImmutableTypeEncodedValue(type_descriptor33);
1348 					}
1349 					break;
1350 				case 12 :
1351 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:283:5: array_literal
1352 					{
1353 					pushFollow(FOLLOW_array_literal_in_literal530);
1354 					array_literal34=array_literal();
1355 					state._fsp--;
1356 
1357 					 encodedValue = new ImmutableArrayEncodedValue(array_literal34);
1358 					}
1359 					break;
1360 				case 13 :
1361 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:284:5: subannotation
1362 					{
1363 					pushFollow(FOLLOW_subannotation_in_literal538);
1364 					subannotation35=subannotation();
1365 					state._fsp--;
1366 
1367 					 encodedValue = new ImmutableAnnotationEncodedValue((subannotation35!=null?((smaliTreeWalker.subannotation_return)subannotation35).annotationType:null), (subannotation35!=null?((smaliTreeWalker.subannotation_return)subannotation35).elements:null));
1368 					}
1369 					break;
1370 				case 14 :
1371 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:285:5: field_literal
1372 					{
1373 					pushFollow(FOLLOW_field_literal_in_literal546);
1374 					field_literal36=field_literal();
1375 					state._fsp--;
1376 
1377 					 encodedValue = new ImmutableFieldEncodedValue(field_literal36);
1378 					}
1379 					break;
1380 				case 15 :
1381 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:286:5: method_literal
1382 					{
1383 					pushFollow(FOLLOW_method_literal_in_literal554);
1384 					method_literal37=method_literal();
1385 					state._fsp--;
1386 
1387 					 encodedValue = new ImmutableMethodEncodedValue(method_literal37);
1388 					}
1389 					break;
1390 				case 16 :
1391 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:287:5: enum_literal
1392 					{
1393 					pushFollow(FOLLOW_enum_literal_in_literal562);
1394 					enum_literal38=enum_literal();
1395 					state._fsp--;
1396 
1397 					 encodedValue = new ImmutableEnumEncodedValue(enum_literal38);
1398 					}
1399 					break;
1400 
1401 			}
1402 		}
1403 		catch (RecognitionException re) {
1404 			reportError(re);
1405 			recover(input,re);
1406 		}
1407 		finally {
1408 			// do for sure before leaving
1409 		}
1410 		return encodedValue;
1411 	}
1412 	// $ANTLR end "literal"
1413 
1414 
1415 
1416 	// $ANTLR start "fixed_64bit_literal_number"
1417 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:290:1: fixed_64bit_literal_number returns [Number value] : ( integer_literal | long_literal | short_literal | byte_literal | float_literal | double_literal | char_literal | bool_literal );
fixed_64bit_literal_number()1418 	public final Number fixed_64bit_literal_number() throws RecognitionException {
1419 		Number value = null;
1420 
1421 
1422 		int integer_literal39 =0;
1423 		long long_literal40 =0;
1424 		short short_literal41 =0;
1425 		byte byte_literal42 =0;
1426 		float float_literal43 =0.0f;
1427 		double double_literal44 =0.0;
1428 		char char_literal45 =0;
1429 		boolean bool_literal46 =false;
1430 
1431 		try {
1432 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:291:3: ( integer_literal | long_literal | short_literal | byte_literal | float_literal | double_literal | char_literal | bool_literal )
1433 			int alt10=8;
1434 			switch ( input.LA(1) ) {
1435 			case INTEGER_LITERAL:
1436 				{
1437 				alt10=1;
1438 				}
1439 				break;
1440 			case LONG_LITERAL:
1441 				{
1442 				alt10=2;
1443 				}
1444 				break;
1445 			case SHORT_LITERAL:
1446 				{
1447 				alt10=3;
1448 				}
1449 				break;
1450 			case BYTE_LITERAL:
1451 				{
1452 				alt10=4;
1453 				}
1454 				break;
1455 			case FLOAT_LITERAL:
1456 				{
1457 				alt10=5;
1458 				}
1459 				break;
1460 			case DOUBLE_LITERAL:
1461 				{
1462 				alt10=6;
1463 				}
1464 				break;
1465 			case CHAR_LITERAL:
1466 				{
1467 				alt10=7;
1468 				}
1469 				break;
1470 			case BOOL_LITERAL:
1471 				{
1472 				alt10=8;
1473 				}
1474 				break;
1475 			default:
1476 				NoViableAltException nvae =
1477 					new NoViableAltException("", 10, 0, input);
1478 				throw nvae;
1479 			}
1480 			switch (alt10) {
1481 				case 1 :
1482 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:291:5: integer_literal
1483 					{
1484 					pushFollow(FOLLOW_integer_literal_in_fixed_64bit_literal_number578);
1485 					integer_literal39=integer_literal();
1486 					state._fsp--;
1487 
1488 					 value = integer_literal39;
1489 					}
1490 					break;
1491 				case 2 :
1492 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:292:5: long_literal
1493 					{
1494 					pushFollow(FOLLOW_long_literal_in_fixed_64bit_literal_number586);
1495 					long_literal40=long_literal();
1496 					state._fsp--;
1497 
1498 					 value = long_literal40;
1499 					}
1500 					break;
1501 				case 3 :
1502 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:293:5: short_literal
1503 					{
1504 					pushFollow(FOLLOW_short_literal_in_fixed_64bit_literal_number594);
1505 					short_literal41=short_literal();
1506 					state._fsp--;
1507 
1508 					 value = short_literal41;
1509 					}
1510 					break;
1511 				case 4 :
1512 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:294:5: byte_literal
1513 					{
1514 					pushFollow(FOLLOW_byte_literal_in_fixed_64bit_literal_number602);
1515 					byte_literal42=byte_literal();
1516 					state._fsp--;
1517 
1518 					 value = byte_literal42;
1519 					}
1520 					break;
1521 				case 5 :
1522 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:295:5: float_literal
1523 					{
1524 					pushFollow(FOLLOW_float_literal_in_fixed_64bit_literal_number610);
1525 					float_literal43=float_literal();
1526 					state._fsp--;
1527 
1528 					 value = Float.floatToRawIntBits(float_literal43);
1529 					}
1530 					break;
1531 				case 6 :
1532 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:296:5: double_literal
1533 					{
1534 					pushFollow(FOLLOW_double_literal_in_fixed_64bit_literal_number618);
1535 					double_literal44=double_literal();
1536 					state._fsp--;
1537 
1538 					 value = Double.doubleToRawLongBits(double_literal44);
1539 					}
1540 					break;
1541 				case 7 :
1542 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:297:5: char_literal
1543 					{
1544 					pushFollow(FOLLOW_char_literal_in_fixed_64bit_literal_number626);
1545 					char_literal45=char_literal();
1546 					state._fsp--;
1547 
1548 					 value = (int)char_literal45;
1549 					}
1550 					break;
1551 				case 8 :
1552 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:298:5: bool_literal
1553 					{
1554 					pushFollow(FOLLOW_bool_literal_in_fixed_64bit_literal_number634);
1555 					bool_literal46=bool_literal();
1556 					state._fsp--;
1557 
1558 					 value = bool_literal46?1:0;
1559 					}
1560 					break;
1561 
1562 			}
1563 		}
1564 		catch (RecognitionException re) {
1565 			reportError(re);
1566 			recover(input,re);
1567 		}
1568 		finally {
1569 			// do for sure before leaving
1570 		}
1571 		return value;
1572 	}
1573 	// $ANTLR end "fixed_64bit_literal_number"
1574 
1575 
1576 
1577 	// $ANTLR start "fixed_64bit_literal"
1578 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:300:1: fixed_64bit_literal returns [long value] : ( integer_literal | long_literal | short_literal | byte_literal | float_literal | double_literal | char_literal | bool_literal );
fixed_64bit_literal()1579 	public final long fixed_64bit_literal() throws RecognitionException {
1580 		long value = 0;
1581 
1582 
1583 		int integer_literal47 =0;
1584 		long long_literal48 =0;
1585 		short short_literal49 =0;
1586 		byte byte_literal50 =0;
1587 		float float_literal51 =0.0f;
1588 		double double_literal52 =0.0;
1589 		char char_literal53 =0;
1590 		boolean bool_literal54 =false;
1591 
1592 		try {
1593 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:301:3: ( integer_literal | long_literal | short_literal | byte_literal | float_literal | double_literal | char_literal | bool_literal )
1594 			int alt11=8;
1595 			switch ( input.LA(1) ) {
1596 			case INTEGER_LITERAL:
1597 				{
1598 				alt11=1;
1599 				}
1600 				break;
1601 			case LONG_LITERAL:
1602 				{
1603 				alt11=2;
1604 				}
1605 				break;
1606 			case SHORT_LITERAL:
1607 				{
1608 				alt11=3;
1609 				}
1610 				break;
1611 			case BYTE_LITERAL:
1612 				{
1613 				alt11=4;
1614 				}
1615 				break;
1616 			case FLOAT_LITERAL:
1617 				{
1618 				alt11=5;
1619 				}
1620 				break;
1621 			case DOUBLE_LITERAL:
1622 				{
1623 				alt11=6;
1624 				}
1625 				break;
1626 			case CHAR_LITERAL:
1627 				{
1628 				alt11=7;
1629 				}
1630 				break;
1631 			case BOOL_LITERAL:
1632 				{
1633 				alt11=8;
1634 				}
1635 				break;
1636 			default:
1637 				NoViableAltException nvae =
1638 					new NoViableAltException("", 11, 0, input);
1639 				throw nvae;
1640 			}
1641 			switch (alt11) {
1642 				case 1 :
1643 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:301:5: integer_literal
1644 					{
1645 					pushFollow(FOLLOW_integer_literal_in_fixed_64bit_literal649);
1646 					integer_literal47=integer_literal();
1647 					state._fsp--;
1648 
1649 					 value = integer_literal47;
1650 					}
1651 					break;
1652 				case 2 :
1653 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:302:5: long_literal
1654 					{
1655 					pushFollow(FOLLOW_long_literal_in_fixed_64bit_literal657);
1656 					long_literal48=long_literal();
1657 					state._fsp--;
1658 
1659 					 value = long_literal48;
1660 					}
1661 					break;
1662 				case 3 :
1663 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:303:5: short_literal
1664 					{
1665 					pushFollow(FOLLOW_short_literal_in_fixed_64bit_literal665);
1666 					short_literal49=short_literal();
1667 					state._fsp--;
1668 
1669 					 value = short_literal49;
1670 					}
1671 					break;
1672 				case 4 :
1673 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:304:5: byte_literal
1674 					{
1675 					pushFollow(FOLLOW_byte_literal_in_fixed_64bit_literal673);
1676 					byte_literal50=byte_literal();
1677 					state._fsp--;
1678 
1679 					 value = byte_literal50;
1680 					}
1681 					break;
1682 				case 5 :
1683 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:305:5: float_literal
1684 					{
1685 					pushFollow(FOLLOW_float_literal_in_fixed_64bit_literal681);
1686 					float_literal51=float_literal();
1687 					state._fsp--;
1688 
1689 					 value = Float.floatToRawIntBits(float_literal51);
1690 					}
1691 					break;
1692 				case 6 :
1693 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:306:5: double_literal
1694 					{
1695 					pushFollow(FOLLOW_double_literal_in_fixed_64bit_literal689);
1696 					double_literal52=double_literal();
1697 					state._fsp--;
1698 
1699 					 value = Double.doubleToRawLongBits(double_literal52);
1700 					}
1701 					break;
1702 				case 7 :
1703 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:307:5: char_literal
1704 					{
1705 					pushFollow(FOLLOW_char_literal_in_fixed_64bit_literal697);
1706 					char_literal53=char_literal();
1707 					state._fsp--;
1708 
1709 					 value = char_literal53;
1710 					}
1711 					break;
1712 				case 8 :
1713 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:308:5: bool_literal
1714 					{
1715 					pushFollow(FOLLOW_bool_literal_in_fixed_64bit_literal705);
1716 					bool_literal54=bool_literal();
1717 					state._fsp--;
1718 
1719 					 value = bool_literal54?1:0;
1720 					}
1721 					break;
1722 
1723 			}
1724 		}
1725 		catch (RecognitionException re) {
1726 			reportError(re);
1727 			recover(input,re);
1728 		}
1729 		finally {
1730 			// do for sure before leaving
1731 		}
1732 		return value;
1733 	}
1734 	// $ANTLR end "fixed_64bit_literal"
1735 
1736 
1737 
1738 	// $ANTLR start "fixed_32bit_literal"
1739 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:312:1: fixed_32bit_literal returns [int value] : ( integer_literal | long_literal | short_literal | byte_literal | float_literal | char_literal | bool_literal );
fixed_32bit_literal()1740 	public final int fixed_32bit_literal() throws RecognitionException {
1741 		int value = 0;
1742 
1743 
1744 		int integer_literal55 =0;
1745 		long long_literal56 =0;
1746 		short short_literal57 =0;
1747 		byte byte_literal58 =0;
1748 		float float_literal59 =0.0f;
1749 		char char_literal60 =0;
1750 		boolean bool_literal61 =false;
1751 
1752 		try {
1753 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:313:3: ( integer_literal | long_literal | short_literal | byte_literal | float_literal | char_literal | bool_literal )
1754 			int alt12=7;
1755 			switch ( input.LA(1) ) {
1756 			case INTEGER_LITERAL:
1757 				{
1758 				alt12=1;
1759 				}
1760 				break;
1761 			case LONG_LITERAL:
1762 				{
1763 				alt12=2;
1764 				}
1765 				break;
1766 			case SHORT_LITERAL:
1767 				{
1768 				alt12=3;
1769 				}
1770 				break;
1771 			case BYTE_LITERAL:
1772 				{
1773 				alt12=4;
1774 				}
1775 				break;
1776 			case FLOAT_LITERAL:
1777 				{
1778 				alt12=5;
1779 				}
1780 				break;
1781 			case CHAR_LITERAL:
1782 				{
1783 				alt12=6;
1784 				}
1785 				break;
1786 			case BOOL_LITERAL:
1787 				{
1788 				alt12=7;
1789 				}
1790 				break;
1791 			default:
1792 				NoViableAltException nvae =
1793 					new NoViableAltException("", 12, 0, input);
1794 				throw nvae;
1795 			}
1796 			switch (alt12) {
1797 				case 1 :
1798 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:313:5: integer_literal
1799 					{
1800 					pushFollow(FOLLOW_integer_literal_in_fixed_32bit_literal722);
1801 					integer_literal55=integer_literal();
1802 					state._fsp--;
1803 
1804 					 value = integer_literal55;
1805 					}
1806 					break;
1807 				case 2 :
1808 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:314:5: long_literal
1809 					{
1810 					pushFollow(FOLLOW_long_literal_in_fixed_32bit_literal730);
1811 					long_literal56=long_literal();
1812 					state._fsp--;
1813 
1814 					 LiteralTools.checkInt(long_literal56); value = (int)long_literal56;
1815 					}
1816 					break;
1817 				case 3 :
1818 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:315:5: short_literal
1819 					{
1820 					pushFollow(FOLLOW_short_literal_in_fixed_32bit_literal738);
1821 					short_literal57=short_literal();
1822 					state._fsp--;
1823 
1824 					 value = short_literal57;
1825 					}
1826 					break;
1827 				case 4 :
1828 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:316:5: byte_literal
1829 					{
1830 					pushFollow(FOLLOW_byte_literal_in_fixed_32bit_literal746);
1831 					byte_literal58=byte_literal();
1832 					state._fsp--;
1833 
1834 					 value = byte_literal58;
1835 					}
1836 					break;
1837 				case 5 :
1838 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:317:5: float_literal
1839 					{
1840 					pushFollow(FOLLOW_float_literal_in_fixed_32bit_literal754);
1841 					float_literal59=float_literal();
1842 					state._fsp--;
1843 
1844 					 value = Float.floatToRawIntBits(float_literal59);
1845 					}
1846 					break;
1847 				case 6 :
1848 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:318:5: char_literal
1849 					{
1850 					pushFollow(FOLLOW_char_literal_in_fixed_32bit_literal762);
1851 					char_literal60=char_literal();
1852 					state._fsp--;
1853 
1854 					 value = char_literal60;
1855 					}
1856 					break;
1857 				case 7 :
1858 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:319:5: bool_literal
1859 					{
1860 					pushFollow(FOLLOW_bool_literal_in_fixed_32bit_literal770);
1861 					bool_literal61=bool_literal();
1862 					state._fsp--;
1863 
1864 					 value = bool_literal61?1:0;
1865 					}
1866 					break;
1867 
1868 			}
1869 		}
1870 		catch (RecognitionException re) {
1871 			reportError(re);
1872 			recover(input,re);
1873 		}
1874 		finally {
1875 			// do for sure before leaving
1876 		}
1877 		return value;
1878 	}
1879 	// $ANTLR end "fixed_32bit_literal"
1880 
1881 
1882 
1883 	// $ANTLR start "array_elements"
1884 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:321:1: array_elements returns [List<Number> elements] : ^( I_ARRAY_ELEMENTS ( fixed_64bit_literal_number )* ) ;
array_elements()1885 	public final List<Number> array_elements() throws RecognitionException {
1886 		List<Number> elements = null;
1887 
1888 
1889 		Number fixed_64bit_literal_number62 =null;
1890 
1891 		try {
1892 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:322:3: ( ^( I_ARRAY_ELEMENTS ( fixed_64bit_literal_number )* ) )
1893 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:322:5: ^( I_ARRAY_ELEMENTS ( fixed_64bit_literal_number )* )
1894 			{
1895 			elements = Lists.newArrayList();
1896 			match(input,I_ARRAY_ELEMENTS,FOLLOW_I_ARRAY_ELEMENTS_in_array_elements792);
1897 			if ( input.LA(1)==Token.DOWN ) {
1898 				match(input, Token.DOWN, null);
1899 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:324:7: ( fixed_64bit_literal_number )*
1900 				loop13:
1901 				while (true) {
1902 					int alt13=2;
1903 					int LA13_0 = input.LA(1);
1904 					if ( ((LA13_0 >= BOOL_LITERAL && LA13_0 <= BYTE_LITERAL)||LA13_0==CHAR_LITERAL||LA13_0==DOUBLE_LITERAL||LA13_0==FLOAT_LITERAL||LA13_0==INTEGER_LITERAL||LA13_0==LONG_LITERAL||LA13_0==SHORT_LITERAL) ) {
1905 						alt13=1;
1906 					}
1907 
1908 					switch (alt13) {
1909 					case 1 :
1910 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:324:8: fixed_64bit_literal_number
1911 						{
1912 						pushFollow(FOLLOW_fixed_64bit_literal_number_in_array_elements801);
1913 						fixed_64bit_literal_number62=fixed_64bit_literal_number();
1914 						state._fsp--;
1915 
1916 
1917 						        elements.add(fixed_64bit_literal_number62);
1918 
1919 						}
1920 						break;
1921 
1922 					default :
1923 						break loop13;
1924 					}
1925 				}
1926 
1927 				match(input, Token.UP, null);
1928 			}
1929 
1930 			}
1931 
1932 		}
1933 		catch (RecognitionException re) {
1934 			reportError(re);
1935 			recover(input,re);
1936 		}
1937 		finally {
1938 			// do for sure before leaving
1939 		}
1940 		return elements;
1941 	}
1942 	// $ANTLR end "array_elements"
1943 
1944 
1945 
1946 	// $ANTLR start "packed_switch_elements"
1947 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:329:1: packed_switch_elements returns [List<Label> elements] : ^( I_PACKED_SWITCH_ELEMENTS ( label_ref )* ) ;
packed_switch_elements()1948 	public final List<Label> packed_switch_elements() throws RecognitionException {
1949 		List<Label> elements = null;
1950 
1951 
1952 		Label label_ref63 =null;
1953 
1954 		elements = Lists.newArrayList();
1955 		try {
1956 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:331:3: ( ^( I_PACKED_SWITCH_ELEMENTS ( label_ref )* ) )
1957 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:332:5: ^( I_PACKED_SWITCH_ELEMENTS ( label_ref )* )
1958 			{
1959 			match(input,I_PACKED_SWITCH_ELEMENTS,FOLLOW_I_PACKED_SWITCH_ELEMENTS_in_packed_switch_elements837);
1960 			if ( input.LA(1)==Token.DOWN ) {
1961 				match(input, Token.DOWN, null);
1962 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:333:7: ( label_ref )*
1963 				loop14:
1964 				while (true) {
1965 					int alt14=2;
1966 					int LA14_0 = input.LA(1);
1967 					if ( (LA14_0==SIMPLE_NAME) ) {
1968 						alt14=1;
1969 					}
1970 
1971 					switch (alt14) {
1972 					case 1 :
1973 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:333:8: label_ref
1974 						{
1975 						pushFollow(FOLLOW_label_ref_in_packed_switch_elements846);
1976 						label_ref63=label_ref();
1977 						state._fsp--;
1978 
1979 						 elements.add(label_ref63);
1980 						}
1981 						break;
1982 
1983 					default :
1984 						break loop14;
1985 					}
1986 				}
1987 
1988 				match(input, Token.UP, null);
1989 			}
1990 
1991 			}
1992 
1993 		}
1994 		catch (RecognitionException re) {
1995 			reportError(re);
1996 			recover(input,re);
1997 		}
1998 		finally {
1999 			// do for sure before leaving
2000 		}
2001 		return elements;
2002 	}
2003 	// $ANTLR end "packed_switch_elements"
2004 
2005 
2006 
2007 	// $ANTLR start "sparse_switch_elements"
2008 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:336:1: sparse_switch_elements returns [List<SwitchLabelElement> elements] : ^( I_SPARSE_SWITCH_ELEMENTS ( fixed_32bit_literal label_ref )* ) ;
sparse_switch_elements()2009 	public final List<SwitchLabelElement> sparse_switch_elements() throws RecognitionException {
2010 		List<SwitchLabelElement> elements = null;
2011 
2012 
2013 		int fixed_32bit_literal64 =0;
2014 		Label label_ref65 =null;
2015 
2016 		elements = Lists.newArrayList();
2017 		try {
2018 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:338:3: ( ^( I_SPARSE_SWITCH_ELEMENTS ( fixed_32bit_literal label_ref )* ) )
2019 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:339:5: ^( I_SPARSE_SWITCH_ELEMENTS ( fixed_32bit_literal label_ref )* )
2020 			{
2021 			match(input,I_SPARSE_SWITCH_ELEMENTS,FOLLOW_I_SPARSE_SWITCH_ELEMENTS_in_sparse_switch_elements881);
2022 			if ( input.LA(1)==Token.DOWN ) {
2023 				match(input, Token.DOWN, null);
2024 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:340:8: ( fixed_32bit_literal label_ref )*
2025 				loop15:
2026 				while (true) {
2027 					int alt15=2;
2028 					int LA15_0 = input.LA(1);
2029 					if ( ((LA15_0 >= BOOL_LITERAL && LA15_0 <= BYTE_LITERAL)||LA15_0==CHAR_LITERAL||LA15_0==FLOAT_LITERAL||LA15_0==INTEGER_LITERAL||LA15_0==LONG_LITERAL||LA15_0==SHORT_LITERAL) ) {
2030 						alt15=1;
2031 					}
2032 
2033 					switch (alt15) {
2034 					case 1 :
2035 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:340:9: fixed_32bit_literal label_ref
2036 						{
2037 						pushFollow(FOLLOW_fixed_32bit_literal_in_sparse_switch_elements891);
2038 						fixed_32bit_literal64=fixed_32bit_literal();
2039 						state._fsp--;
2040 
2041 						pushFollow(FOLLOW_label_ref_in_sparse_switch_elements893);
2042 						label_ref65=label_ref();
2043 						state._fsp--;
2044 
2045 
2046 						         elements.add(new SwitchLabelElement(fixed_32bit_literal64, label_ref65));
2047 
2048 						}
2049 						break;
2050 
2051 					default :
2052 						break loop15;
2053 					}
2054 				}
2055 
2056 				match(input, Token.UP, null);
2057 			}
2058 
2059 			}
2060 
2061 		}
2062 		catch (RecognitionException re) {
2063 			reportError(re);
2064 			recover(input,re);
2065 		}
2066 		finally {
2067 			// do for sure before leaving
2068 		}
2069 		return elements;
2070 	}
2071 	// $ANTLR end "sparse_switch_elements"
2072 
2073 
2074 	protected static class method_scope {
2075 		boolean isStatic;
2076 		int totalMethodRegisters;
2077 		int methodParameterRegisters;
2078 		MethodImplementationBuilder methodBuilder;
2079 	}
2080 	protected Stack<method_scope> method_stack = new Stack<method_scope>();
2081 
2082 
2083 	// $ANTLR start "method"
2084 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:346:1: method returns [BuilderMethod ret] : ^( I_METHOD method_name_and_prototype access_list ( ( registers_directive ) |) ordered_method_items catches parameters[$method_name_and_prototype.parameters] annotations ) ;
method()2085 	public final BuilderMethod method() throws RecognitionException {
2086 		method_stack.push(new method_scope());
2087 		BuilderMethod ret = null;
2088 
2089 
2090 		CommonTree I_METHOD70=null;
2091 		int access_list66 =0;
2092 		TreeRuleReturnScope method_name_and_prototype67 =null;
2093 		TreeRuleReturnScope registers_directive68 =null;
2094 		List<BuilderTryBlock> catches69 =null;
2095 		Set<Annotation> annotations71 =null;
2096 
2097 
2098 		    method_stack.peek().totalMethodRegisters = 0;
2099 		    method_stack.peek().methodParameterRegisters = 0;
2100 		    int accessFlags = 0;
2101 		    method_stack.peek().isStatic = false;
2102 
2103 		try {
2104 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:361:3: ( ^( I_METHOD method_name_and_prototype access_list ( ( registers_directive ) |) ordered_method_items catches parameters[$method_name_and_prototype.parameters] annotations ) )
2105 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:362:5: ^( I_METHOD method_name_and_prototype access_list ( ( registers_directive ) |) ordered_method_items catches parameters[$method_name_and_prototype.parameters] annotations )
2106 			{
2107 			I_METHOD70=(CommonTree)match(input,I_METHOD,FOLLOW_I_METHOD_in_method945);
2108 			match(input, Token.DOWN, null);
2109 			pushFollow(FOLLOW_method_name_and_prototype_in_method953);
2110 			method_name_and_prototype67=method_name_and_prototype();
2111 			state._fsp--;
2112 
2113 			pushFollow(FOLLOW_access_list_in_method961);
2114 			access_list66=access_list();
2115 			state._fsp--;
2116 
2117 
2118 			        accessFlags = access_list66;
2119 			        method_stack.peek().isStatic = AccessFlags.STATIC.isSet(accessFlags);
2120 			        method_stack.peek().methodParameterRegisters =
2121 			                MethodUtil.getParameterRegisterCount((method_name_and_prototype67!=null?((smaliTreeWalker.method_name_and_prototype_return)method_name_and_prototype67).parameters:null), method_stack.peek().isStatic);
2122 
2123 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:371:7: ( ( registers_directive ) |)
2124 			int alt16=2;
2125 			int LA16_0 = input.LA(1);
2126 			if ( (LA16_0==I_LOCALS||LA16_0==I_REGISTERS) ) {
2127 				alt16=1;
2128 			}
2129 			else if ( (LA16_0==I_ORDERED_METHOD_ITEMS) ) {
2130 				alt16=2;
2131 			}
2132 
2133 			else {
2134 				NoViableAltException nvae =
2135 					new NoViableAltException("", 16, 0, input);
2136 				throw nvae;
2137 			}
2138 
2139 			switch (alt16) {
2140 				case 1 :
2141 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:372:9: ( registers_directive )
2142 					{
2143 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:372:9: ( registers_directive )
2144 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:372:10: registers_directive
2145 					{
2146 					pushFollow(FOLLOW_registers_directive_in_method988);
2147 					registers_directive68=registers_directive();
2148 					state._fsp--;
2149 
2150 
2151 					          if ((registers_directive68!=null?((smaliTreeWalker.registers_directive_return)registers_directive68).isLocalsDirective:false)) {
2152 					            method_stack.peek().totalMethodRegisters = (registers_directive68!=null?((smaliTreeWalker.registers_directive_return)registers_directive68).registers:0) + method_stack.peek().methodParameterRegisters;
2153 					          } else {
2154 					            method_stack.peek().totalMethodRegisters = (registers_directive68!=null?((smaliTreeWalker.registers_directive_return)registers_directive68).registers:0);
2155 					          }
2156 
2157 					          method_stack.peek().methodBuilder = new MethodImplementationBuilder(method_stack.peek().totalMethodRegisters);
2158 
2159 
2160 					}
2161 
2162 					}
2163 					break;
2164 				case 2 :
2165 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:385:9:
2166 					{
2167 
2168 					          method_stack.peek().methodBuilder = new MethodImplementationBuilder(0);
2169 
2170 					}
2171 					break;
2172 
2173 			}
2174 
2175 			pushFollow(FOLLOW_ordered_method_items_in_method1045);
2176 			ordered_method_items();
2177 			state._fsp--;
2178 
2179 			pushFollow(FOLLOW_catches_in_method1053);
2180 			catches69=catches();
2181 			state._fsp--;
2182 
2183 			pushFollow(FOLLOW_parameters_in_method1061);
2184 			parameters((method_name_and_prototype67!=null?((smaliTreeWalker.method_name_and_prototype_return)method_name_and_prototype67).parameters:null));
2185 			state._fsp--;
2186 
2187 			pushFollow(FOLLOW_annotations_in_method1070);
2188 			annotations71=annotations();
2189 			state._fsp--;
2190 
2191 			match(input, Token.UP, null);
2192 
2193 
2194 			    MethodImplementation methodImplementation = null;
2195 			    List<BuilderTryBlock> tryBlocks = catches69;
2196 
2197 			    boolean isAbstract = false;
2198 			    boolean isNative = false;
2199 
2200 			    if ((accessFlags & AccessFlags.ABSTRACT.getValue()) != 0) {
2201 			      isAbstract = true;
2202 			    } else if ((accessFlags & AccessFlags.NATIVE.getValue()) != 0) {
2203 			      isNative = true;
2204 			    }
2205 
2206 			    methodImplementation = method_stack.peek().methodBuilder.getMethodImplementation();
2207 
2208 			    if (Iterables.isEmpty(methodImplementation.getInstructions())) {
2209 			      if (!isAbstract && !isNative) {
2210 			        throw new SemanticException(input, I_METHOD70, "A non-abstract/non-native method must have at least 1 instruction");
2211 			      }
2212 
2213 			      String methodType;
2214 			      if (isAbstract) {
2215 			        methodType = "an abstract";
2216 			      } else {
2217 			        methodType = "a native";
2218 			      }
2219 
2220 			      if ((registers_directive68!=null?((CommonTree)registers_directive68.start):null) != null) {
2221 			        if ((registers_directive68!=null?((smaliTreeWalker.registers_directive_return)registers_directive68).isLocalsDirective:false)) {
2222 			          throw new SemanticException(input, (registers_directive68!=null?((CommonTree)registers_directive68.start):null), "A .locals directive is not valid in %s method", methodType);
2223 			        } else {
2224 			          throw new SemanticException(input, (registers_directive68!=null?((CommonTree)registers_directive68.start):null), "A .registers directive is not valid in %s method", methodType);
2225 			        }
2226 			      }
2227 
2228 			      if (methodImplementation.getTryBlocks().size() > 0) {
2229 			        throw new SemanticException(input, I_METHOD70, "try/catch blocks cannot be present in %s method", methodType);
2230 			      }
2231 
2232 			      if (!Iterables.isEmpty(methodImplementation.getDebugItems())) {
2233 			        throw new SemanticException(input, I_METHOD70, "debug directives cannot be present in %s method", methodType);
2234 			      }
2235 
2236 			      methodImplementation = null;
2237 			    } else {
2238 			      if (isAbstract) {
2239 			        throw new SemanticException(input, I_METHOD70, "An abstract method cannot have any instructions");
2240 			      }
2241 			      if (isNative) {
2242 			        throw new SemanticException(input, I_METHOD70, "A native method cannot have any instructions");
2243 			      }
2244 
2245 			      if ((registers_directive68!=null?((CommonTree)registers_directive68.start):null) == null) {
2246 			        throw new SemanticException(input, I_METHOD70, "A .registers or .locals directive must be present for a non-abstract/non-final method");
2247 			      }
2248 
2249 			      if (method_stack.peek().totalMethodRegisters < method_stack.peek().methodParameterRegisters) {
2250 			        throw new SemanticException(input, (registers_directive68!=null?((CommonTree)registers_directive68.start):null), "This method requires at least " +
2251 			                Integer.toString(method_stack.peek().methodParameterRegisters) +
2252 			                " registers, for the method parameters");
2253 			      }
2254 			    }
2255 
2256 			    ret = dexBuilder.internMethod(
2257 			            classType,
2258 			            (method_name_and_prototype67!=null?((smaliTreeWalker.method_name_and_prototype_return)method_name_and_prototype67).name:null),
2259 			            (method_name_and_prototype67!=null?((smaliTreeWalker.method_name_and_prototype_return)method_name_and_prototype67).parameters:null),
2260 			            (method_name_and_prototype67!=null?((smaliTreeWalker.method_name_and_prototype_return)method_name_and_prototype67).returnType:null),
2261 			            accessFlags,
2262 			            annotations71,
2263 			            methodImplementation);
2264 
2265 			}
2266 
2267 		}
2268 		catch (RecognitionException re) {
2269 			reportError(re);
2270 			recover(input,re);
2271 		}
2272 		finally {
2273 			// do for sure before leaving
2274 			method_stack.pop();
2275 		}
2276 		return ret;
2277 	}
2278 	// $ANTLR end "method"
2279 
2280 
2281 	public static class method_prototype_return extends TreeRuleReturnScope {
2282 		public List<String> parameters;
2283 		public String returnType;
2284 	};
2285 
2286 
2287 	// $ANTLR start "method_prototype"
2288 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:467:1: method_prototype returns [List<String> parameters, String returnType] : ^( I_METHOD_PROTOTYPE ^( I_METHOD_RETURN_TYPE type_descriptor ) method_type_list ) ;
method_prototype()2289 	public final smaliTreeWalker.method_prototype_return method_prototype() throws RecognitionException {
2290 		smaliTreeWalker.method_prototype_return retval = new smaliTreeWalker.method_prototype_return();
2291 		retval.start = input.LT(1);
2292 
2293 		String type_descriptor72 =null;
2294 		List<String> method_type_list73 =null;
2295 
2296 		try {
2297 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:468:3: ( ^( I_METHOD_PROTOTYPE ^( I_METHOD_RETURN_TYPE type_descriptor ) method_type_list ) )
2298 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:468:5: ^( I_METHOD_PROTOTYPE ^( I_METHOD_RETURN_TYPE type_descriptor ) method_type_list )
2299 			{
2300 			match(input,I_METHOD_PROTOTYPE,FOLLOW_I_METHOD_PROTOTYPE_in_method_prototype1094);
2301 			match(input, Token.DOWN, null);
2302 			match(input,I_METHOD_RETURN_TYPE,FOLLOW_I_METHOD_RETURN_TYPE_in_method_prototype1097);
2303 			match(input, Token.DOWN, null);
2304 			pushFollow(FOLLOW_type_descriptor_in_method_prototype1099);
2305 			type_descriptor72=type_descriptor();
2306 			state._fsp--;
2307 
2308 			match(input, Token.UP, null);
2309 
2310 			pushFollow(FOLLOW_method_type_list_in_method_prototype1102);
2311 			method_type_list73=method_type_list();
2312 			state._fsp--;
2313 
2314 			match(input, Token.UP, null);
2315 
2316 
2317 			    retval.returnType = type_descriptor72;
2318 			    retval.parameters = method_type_list73;
2319 
2320 			}
2321 
2322 		}
2323 		catch (RecognitionException re) {
2324 			reportError(re);
2325 			recover(input,re);
2326 		}
2327 		finally {
2328 			// do for sure before leaving
2329 		}
2330 		return retval;
2331 	}
2332 	// $ANTLR end "method_prototype"
2333 
2334 
2335 	public static class method_name_and_prototype_return extends TreeRuleReturnScope {
2336 		public String name;
2337 		public List<SmaliMethodParameter> parameters;
2338 		public String returnType;
2339 	};
2340 
2341 
2342 	// $ANTLR start "method_name_and_prototype"
2343 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:474:1: method_name_and_prototype returns [String name, List<SmaliMethodParameter> parameters, String returnType] : SIMPLE_NAME method_prototype ;
method_name_and_prototype()2344 	public final smaliTreeWalker.method_name_and_prototype_return method_name_and_prototype() throws RecognitionException {
2345 		smaliTreeWalker.method_name_and_prototype_return retval = new smaliTreeWalker.method_name_and_prototype_return();
2346 		retval.start = input.LT(1);
2347 
2348 		CommonTree SIMPLE_NAME74=null;
2349 		TreeRuleReturnScope method_prototype75 =null;
2350 
2351 		try {
2352 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:475:3: ( SIMPLE_NAME method_prototype )
2353 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:475:5: SIMPLE_NAME method_prototype
2354 			{
2355 			SIMPLE_NAME74=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_method_name_and_prototype1120);
2356 			pushFollow(FOLLOW_method_prototype_in_method_name_and_prototype1122);
2357 			method_prototype75=method_prototype();
2358 			state._fsp--;
2359 
2360 
2361 			    retval.name = (SIMPLE_NAME74!=null?SIMPLE_NAME74.getText():null);
2362 			    retval.parameters = Lists.newArrayList();
2363 
2364 			    int paramRegister = 0;
2365 			    for (String type: (method_prototype75!=null?((smaliTreeWalker.method_prototype_return)method_prototype75).parameters:null)) {
2366 			        retval.parameters.add(new SmaliMethodParameter(paramRegister++, type));
2367 			        char c = type.charAt(0);
2368 			        if (c == 'D' || c == 'J') {
2369 			            paramRegister++;
2370 			        }
2371 			    }
2372 			    retval.returnType = (method_prototype75!=null?((smaliTreeWalker.method_prototype_return)method_prototype75).returnType:null);
2373 
2374 			}
2375 
2376 		}
2377 		catch (RecognitionException re) {
2378 			reportError(re);
2379 			recover(input,re);
2380 		}
2381 		finally {
2382 			// do for sure before leaving
2383 		}
2384 		return retval;
2385 	}
2386 	// $ANTLR end "method_name_and_prototype"
2387 
2388 
2389 
2390 	// $ANTLR start "method_type_list"
2391 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:491:1: method_type_list returns [List<String> types] : ( nonvoid_type_descriptor )* ;
method_type_list()2392 	public final List<String> method_type_list() throws RecognitionException {
2393 		List<String> types = null;
2394 
2395 
2396 		TreeRuleReturnScope nonvoid_type_descriptor76 =null;
2397 
2398 
2399 		    types = Lists.newArrayList();
2400 
2401 		try {
2402 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:496:3: ( ( nonvoid_type_descriptor )* )
2403 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:496:5: ( nonvoid_type_descriptor )*
2404 			{
2405 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:496:5: ( nonvoid_type_descriptor )*
2406 			loop17:
2407 			while (true) {
2408 				int alt17=2;
2409 				int LA17_0 = input.LA(1);
2410 				if ( (LA17_0==ARRAY_DESCRIPTOR||LA17_0==CLASS_DESCRIPTOR||LA17_0==PRIMITIVE_TYPE) ) {
2411 					alt17=1;
2412 				}
2413 
2414 				switch (alt17) {
2415 				case 1 :
2416 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:497:7: nonvoid_type_descriptor
2417 					{
2418 					pushFollow(FOLLOW_nonvoid_type_descriptor_in_method_type_list1156);
2419 					nonvoid_type_descriptor76=nonvoid_type_descriptor();
2420 					state._fsp--;
2421 
2422 
2423 					        types.add((nonvoid_type_descriptor76!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor76).type:null));
2424 
2425 					}
2426 					break;
2427 
2428 				default :
2429 					break loop17;
2430 				}
2431 			}
2432 
2433 			}
2434 
2435 		}
2436 		catch (RecognitionException re) {
2437 			reportError(re);
2438 			recover(input,re);
2439 		}
2440 		finally {
2441 			// do for sure before leaving
2442 		}
2443 		return types;
2444 	}
2445 	// $ANTLR end "method_type_list"
2446 
2447 
2448 
2449 	// $ANTLR start "method_reference"
2450 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:504:1: method_reference returns [ImmutableMethodReference methodReference] : ( reference_type_descriptor )? SIMPLE_NAME method_prototype ;
method_reference()2451 	public final ImmutableMethodReference method_reference() throws RecognitionException {
2452 		ImmutableMethodReference methodReference = null;
2453 
2454 
2455 		CommonTree SIMPLE_NAME78=null;
2456 		TreeRuleReturnScope reference_type_descriptor77 =null;
2457 		TreeRuleReturnScope method_prototype79 =null;
2458 
2459 		try {
2460 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:505:3: ( ( reference_type_descriptor )? SIMPLE_NAME method_prototype )
2461 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:505:5: ( reference_type_descriptor )? SIMPLE_NAME method_prototype
2462 			{
2463 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:505:5: ( reference_type_descriptor )?
2464 			int alt18=2;
2465 			int LA18_0 = input.LA(1);
2466 			if ( (LA18_0==ARRAY_DESCRIPTOR||LA18_0==CLASS_DESCRIPTOR) ) {
2467 				alt18=1;
2468 			}
2469 			switch (alt18) {
2470 				case 1 :
2471 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:505:5: reference_type_descriptor
2472 					{
2473 					pushFollow(FOLLOW_reference_type_descriptor_in_method_reference1185);
2474 					reference_type_descriptor77=reference_type_descriptor();
2475 					state._fsp--;
2476 
2477 					}
2478 					break;
2479 
2480 			}
2481 
2482 			SIMPLE_NAME78=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_method_reference1188);
2483 			pushFollow(FOLLOW_method_prototype_in_method_reference1190);
2484 			method_prototype79=method_prototype();
2485 			state._fsp--;
2486 
2487 
2488 			    String type;
2489 			    if ((reference_type_descriptor77!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor77).type:null) == null) {
2490 			        type = classType;
2491 			    } else {
2492 			        type = (reference_type_descriptor77!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor77).type:null);
2493 			    }
2494 			    methodReference = new ImmutableMethodReference(type, (SIMPLE_NAME78!=null?SIMPLE_NAME78.getText():null),
2495 			             (method_prototype79!=null?((smaliTreeWalker.method_prototype_return)method_prototype79).parameters:null), (method_prototype79!=null?((smaliTreeWalker.method_prototype_return)method_prototype79).returnType:null));
2496 
2497 			}
2498 
2499 		}
2500 		catch (RecognitionException re) {
2501 			reportError(re);
2502 			recover(input,re);
2503 		}
2504 		finally {
2505 			// do for sure before leaving
2506 		}
2507 		return methodReference;
2508 	}
2509 	// $ANTLR end "method_reference"
2510 
2511 
2512 
2513 	// $ANTLR start "field_reference"
2514 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:517:1: field_reference returns [ImmutableFieldReference fieldReference] : ( reference_type_descriptor )? SIMPLE_NAME nonvoid_type_descriptor ;
field_reference()2515 	public final ImmutableFieldReference field_reference() throws RecognitionException {
2516 		ImmutableFieldReference fieldReference = null;
2517 
2518 
2519 		CommonTree SIMPLE_NAME81=null;
2520 		TreeRuleReturnScope reference_type_descriptor80 =null;
2521 		TreeRuleReturnScope nonvoid_type_descriptor82 =null;
2522 
2523 		try {
2524 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:518:3: ( ( reference_type_descriptor )? SIMPLE_NAME nonvoid_type_descriptor )
2525 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:518:5: ( reference_type_descriptor )? SIMPLE_NAME nonvoid_type_descriptor
2526 			{
2527 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:518:5: ( reference_type_descriptor )?
2528 			int alt19=2;
2529 			int LA19_0 = input.LA(1);
2530 			if ( (LA19_0==ARRAY_DESCRIPTOR||LA19_0==CLASS_DESCRIPTOR) ) {
2531 				alt19=1;
2532 			}
2533 			switch (alt19) {
2534 				case 1 :
2535 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:518:5: reference_type_descriptor
2536 					{
2537 					pushFollow(FOLLOW_reference_type_descriptor_in_field_reference1207);
2538 					reference_type_descriptor80=reference_type_descriptor();
2539 					state._fsp--;
2540 
2541 					}
2542 					break;
2543 
2544 			}
2545 
2546 			SIMPLE_NAME81=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_field_reference1210);
2547 			pushFollow(FOLLOW_nonvoid_type_descriptor_in_field_reference1212);
2548 			nonvoid_type_descriptor82=nonvoid_type_descriptor();
2549 			state._fsp--;
2550 
2551 
2552 			    String type;
2553 			    if ((reference_type_descriptor80!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor80).type:null) == null) {
2554 			        type = classType;
2555 			    } else {
2556 			        type = (reference_type_descriptor80!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor80).type:null);
2557 			    }
2558 			    fieldReference = new ImmutableFieldReference(type, (SIMPLE_NAME81!=null?SIMPLE_NAME81.getText():null),
2559 			            (nonvoid_type_descriptor82!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor82).type:null));
2560 
2561 			}
2562 
2563 		}
2564 		catch (RecognitionException re) {
2565 			reportError(re);
2566 			recover(input,re);
2567 		}
2568 		finally {
2569 			// do for sure before leaving
2570 		}
2571 		return fieldReference;
2572 	}
2573 	// $ANTLR end "field_reference"
2574 
2575 
2576 	public static class registers_directive_return extends TreeRuleReturnScope {
2577 		public boolean isLocalsDirective;
2578 		public int registers;
2579 	};
2580 
2581 
2582 	// $ANTLR start "registers_directive"
2583 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:530:1: registers_directive returns [boolean isLocalsDirective, int registers] : ^( ( I_REGISTERS | I_LOCALS ) short_integral_literal ) ;
registers_directive()2584 	public final smaliTreeWalker.registers_directive_return registers_directive() throws RecognitionException {
2585 		smaliTreeWalker.registers_directive_return retval = new smaliTreeWalker.registers_directive_return();
2586 		retval.start = input.LT(1);
2587 
2588 		short short_integral_literal83 =0;
2589 
2590 		try {
2591 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:531:3: ( ^( ( I_REGISTERS | I_LOCALS ) short_integral_literal ) )
2592 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:531:5: ^( ( I_REGISTERS | I_LOCALS ) short_integral_literal )
2593 			{
2594 			retval.registers = 0;
2595 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:532:7: ( I_REGISTERS | I_LOCALS )
2596 			int alt20=2;
2597 			int LA20_0 = input.LA(1);
2598 			if ( (LA20_0==I_REGISTERS) ) {
2599 				alt20=1;
2600 			}
2601 			else if ( (LA20_0==I_LOCALS) ) {
2602 				alt20=2;
2603 			}
2604 
2605 			else {
2606 				NoViableAltException nvae =
2607 					new NoViableAltException("", 20, 0, input);
2608 				throw nvae;
2609 			}
2610 
2611 			switch (alt20) {
2612 				case 1 :
2613 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:532:9: I_REGISTERS
2614 					{
2615 					match(input,I_REGISTERS,FOLLOW_I_REGISTERS_in_registers_directive1238);
2616 					retval.isLocalsDirective = false;
2617 					}
2618 					break;
2619 				case 2 :
2620 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:533:9: I_LOCALS
2621 					{
2622 					match(input,I_LOCALS,FOLLOW_I_LOCALS_in_registers_directive1250);
2623 					retval.isLocalsDirective = true;
2624 					}
2625 					break;
2626 
2627 			}
2628 
2629 			match(input, Token.DOWN, null);
2630 			pushFollow(FOLLOW_short_integral_literal_in_registers_directive1268);
2631 			short_integral_literal83=short_integral_literal();
2632 			state._fsp--;
2633 
2634 			retval.registers = short_integral_literal83 & 0xFFFF;
2635 			match(input, Token.UP, null);
2636 
2637 			}
2638 
2639 		}
2640 		catch (RecognitionException re) {
2641 			reportError(re);
2642 			recover(input,re);
2643 		}
2644 		finally {
2645 			// do for sure before leaving
2646 		}
2647 		return retval;
2648 	}
2649 	// $ANTLR end "registers_directive"
2650 
2651 
2652 
2653 	// $ANTLR start "label_def"
2654 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:538:1: label_def : ^( I_LABEL SIMPLE_NAME ) ;
label_def()2655 	public final void label_def() throws RecognitionException {
2656 		CommonTree SIMPLE_NAME84=null;
2657 
2658 		try {
2659 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:539:3: ( ^( I_LABEL SIMPLE_NAME ) )
2660 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:539:5: ^( I_LABEL SIMPLE_NAME )
2661 			{
2662 			match(input,I_LABEL,FOLLOW_I_LABEL_in_label_def1288);
2663 			match(input, Token.DOWN, null);
2664 			SIMPLE_NAME84=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_label_def1290);
2665 			match(input, Token.UP, null);
2666 
2667 
2668 			    method_stack.peek().methodBuilder.addLabel((SIMPLE_NAME84!=null?SIMPLE_NAME84.getText():null));
2669 
2670 			}
2671 
2672 		}
2673 		catch (RecognitionException re) {
2674 			reportError(re);
2675 			recover(input,re);
2676 		}
2677 		finally {
2678 			// do for sure before leaving
2679 		}
2680 	}
2681 	// $ANTLR end "label_def"
2682 
2683 
2684 
2685 	// $ANTLR start "catches"
2686 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:544:1: catches returns [List<BuilderTryBlock> tryBlocks] : ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ;
catches()2687 	public final List<BuilderTryBlock> catches() throws RecognitionException {
2688 		List<BuilderTryBlock> tryBlocks = null;
2689 
2690 
2691 		tryBlocks = Lists.newArrayList();
2692 		try {
2693 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:3: ( ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) )
2694 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:5: ^( I_CATCHES ( catch_directive )* ( catchall_directive )* )
2695 			{
2696 			match(input,I_CATCHES,FOLLOW_I_CATCHES_in_catches1316);
2697 			if ( input.LA(1)==Token.DOWN ) {
2698 				match(input, Token.DOWN, null);
2699 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:17: ( catch_directive )*
2700 				loop21:
2701 				while (true) {
2702 					int alt21=2;
2703 					int LA21_0 = input.LA(1);
2704 					if ( (LA21_0==I_CATCH) ) {
2705 						alt21=1;
2706 					}
2707 
2708 					switch (alt21) {
2709 					case 1 :
2710 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:17: catch_directive
2711 						{
2712 						pushFollow(FOLLOW_catch_directive_in_catches1318);
2713 						catch_directive();
2714 						state._fsp--;
2715 
2716 						}
2717 						break;
2718 
2719 					default :
2720 						break loop21;
2721 					}
2722 				}
2723 
2724 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:34: ( catchall_directive )*
2725 				loop22:
2726 				while (true) {
2727 					int alt22=2;
2728 					int LA22_0 = input.LA(1);
2729 					if ( (LA22_0==I_CATCHALL) ) {
2730 						alt22=1;
2731 					}
2732 
2733 					switch (alt22) {
2734 					case 1 :
2735 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:546:34: catchall_directive
2736 						{
2737 						pushFollow(FOLLOW_catchall_directive_in_catches1321);
2738 						catchall_directive();
2739 						state._fsp--;
2740 
2741 						}
2742 						break;
2743 
2744 					default :
2745 						break loop22;
2746 					}
2747 				}
2748 
2749 				match(input, Token.UP, null);
2750 			}
2751 
2752 			}
2753 
2754 		}
2755 		catch (RecognitionException re) {
2756 			reportError(re);
2757 			recover(input,re);
2758 		}
2759 		finally {
2760 			// do for sure before leaving
2761 		}
2762 		return tryBlocks;
2763 	}
2764 	// $ANTLR end "catches"
2765 
2766 
2767 
2768 	// $ANTLR start "catch_directive"
2769 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:548:1: catch_directive : ^( I_CATCH nonvoid_type_descriptor from= label_ref to= label_ref using= label_ref ) ;
catch_directive()2770 	public final void catch_directive() throws RecognitionException {
2771 		Label from =null;
2772 		Label to =null;
2773 		Label using =null;
2774 		TreeRuleReturnScope nonvoid_type_descriptor85 =null;
2775 
2776 		try {
2777 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:549:3: ( ^( I_CATCH nonvoid_type_descriptor from= label_ref to= label_ref using= label_ref ) )
2778 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:549:5: ^( I_CATCH nonvoid_type_descriptor from= label_ref to= label_ref using= label_ref )
2779 			{
2780 			match(input,I_CATCH,FOLLOW_I_CATCH_in_catch_directive1334);
2781 			match(input, Token.DOWN, null);
2782 			pushFollow(FOLLOW_nonvoid_type_descriptor_in_catch_directive1336);
2783 			nonvoid_type_descriptor85=nonvoid_type_descriptor();
2784 			state._fsp--;
2785 
2786 			pushFollow(FOLLOW_label_ref_in_catch_directive1340);
2787 			from=label_ref();
2788 			state._fsp--;
2789 
2790 			pushFollow(FOLLOW_label_ref_in_catch_directive1344);
2791 			to=label_ref();
2792 			state._fsp--;
2793 
2794 			pushFollow(FOLLOW_label_ref_in_catch_directive1348);
2795 			using=label_ref();
2796 			state._fsp--;
2797 
2798 			match(input, Token.UP, null);
2799 
2800 
2801 			    method_stack.peek().methodBuilder.addCatch(dexBuilder.internTypeReference((nonvoid_type_descriptor85!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor85).type:null)),
2802 			        from, to, using);
2803 
2804 			}
2805 
2806 		}
2807 		catch (RecognitionException re) {
2808 			reportError(re);
2809 			recover(input,re);
2810 		}
2811 		finally {
2812 			// do for sure before leaving
2813 		}
2814 	}
2815 	// $ANTLR end "catch_directive"
2816 
2817 
2818 
2819 	// $ANTLR start "catchall_directive"
2820 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:555:1: catchall_directive : ^( I_CATCHALL from= label_ref to= label_ref using= label_ref ) ;
catchall_directive()2821 	public final void catchall_directive() throws RecognitionException {
2822 		Label from =null;
2823 		Label to =null;
2824 		Label using =null;
2825 
2826 		try {
2827 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:556:3: ( ^( I_CATCHALL from= label_ref to= label_ref using= label_ref ) )
2828 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:556:5: ^( I_CATCHALL from= label_ref to= label_ref using= label_ref )
2829 			{
2830 			match(input,I_CATCHALL,FOLLOW_I_CATCHALL_in_catchall_directive1364);
2831 			match(input, Token.DOWN, null);
2832 			pushFollow(FOLLOW_label_ref_in_catchall_directive1368);
2833 			from=label_ref();
2834 			state._fsp--;
2835 
2836 			pushFollow(FOLLOW_label_ref_in_catchall_directive1372);
2837 			to=label_ref();
2838 			state._fsp--;
2839 
2840 			pushFollow(FOLLOW_label_ref_in_catchall_directive1376);
2841 			using=label_ref();
2842 			state._fsp--;
2843 
2844 			match(input, Token.UP, null);
2845 
2846 
2847 			    method_stack.peek().methodBuilder.addCatch(from, to, using);
2848 
2849 			}
2850 
2851 		}
2852 		catch (RecognitionException re) {
2853 			reportError(re);
2854 			recover(input,re);
2855 		}
2856 		finally {
2857 			// do for sure before leaving
2858 		}
2859 	}
2860 	// $ANTLR end "catchall_directive"
2861 
2862 
2863 
2864 	// $ANTLR start "parameters"
2865 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:561:1: parameters[List<SmaliMethodParameter> parameters] : ^( I_PARAMETERS ( parameter[parameters] )* ) ;
parameters(List<SmaliMethodParameter> parameters)2866 	public final void parameters(List<SmaliMethodParameter> parameters) throws RecognitionException {
2867 		try {
2868 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:562:3: ( ^( I_PARAMETERS ( parameter[parameters] )* ) )
2869 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:562:5: ^( I_PARAMETERS ( parameter[parameters] )* )
2870 			{
2871 			match(input,I_PARAMETERS,FOLLOW_I_PARAMETERS_in_parameters1393);
2872 			if ( input.LA(1)==Token.DOWN ) {
2873 				match(input, Token.DOWN, null);
2874 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:562:20: ( parameter[parameters] )*
2875 				loop23:
2876 				while (true) {
2877 					int alt23=2;
2878 					int LA23_0 = input.LA(1);
2879 					if ( (LA23_0==I_PARAMETER) ) {
2880 						alt23=1;
2881 					}
2882 
2883 					switch (alt23) {
2884 					case 1 :
2885 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:562:21: parameter[parameters]
2886 						{
2887 						pushFollow(FOLLOW_parameter_in_parameters1396);
2888 						parameter(parameters);
2889 						state._fsp--;
2890 
2891 						}
2892 						break;
2893 
2894 					default :
2895 						break loop23;
2896 					}
2897 				}
2898 
2899 				match(input, Token.UP, null);
2900 			}
2901 
2902 			}
2903 
2904 		}
2905 		catch (RecognitionException re) {
2906 			reportError(re);
2907 			recover(input,re);
2908 		}
2909 		finally {
2910 			// do for sure before leaving
2911 		}
2912 	}
2913 	// $ANTLR end "parameters"
2914 
2915 
2916 
2917 	// $ANTLR start "parameter"
2918 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:564:1: parameter[List<SmaliMethodParameter> parameters] : ^( I_PARAMETER REGISTER ( string_literal )? annotations ) ;
parameter(List<SmaliMethodParameter> parameters)2919 	public final void parameter(List<SmaliMethodParameter> parameters) throws RecognitionException {
2920 		CommonTree REGISTER86=null;
2921 		CommonTree I_PARAMETER87=null;
2922 		String string_literal88 =null;
2923 		Set<Annotation> annotations89 =null;
2924 
2925 		try {
2926 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:565:3: ( ^( I_PARAMETER REGISTER ( string_literal )? annotations ) )
2927 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:565:5: ^( I_PARAMETER REGISTER ( string_literal )? annotations )
2928 			{
2929 			I_PARAMETER87=(CommonTree)match(input,I_PARAMETER,FOLLOW_I_PARAMETER_in_parameter1412);
2930 			match(input, Token.DOWN, null);
2931 			REGISTER86=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_parameter1414);
2932 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:565:28: ( string_literal )?
2933 			int alt24=2;
2934 			int LA24_0 = input.LA(1);
2935 			if ( (LA24_0==STRING_LITERAL) ) {
2936 				alt24=1;
2937 			}
2938 			switch (alt24) {
2939 				case 1 :
2940 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:565:28: string_literal
2941 					{
2942 					pushFollow(FOLLOW_string_literal_in_parameter1416);
2943 					string_literal88=string_literal();
2944 					state._fsp--;
2945 
2946 					}
2947 					break;
2948 
2949 			}
2950 
2951 			pushFollow(FOLLOW_annotations_in_parameter1419);
2952 			annotations89=annotations();
2953 			state._fsp--;
2954 
2955 			match(input, Token.UP, null);
2956 
2957 
2958 			        final int registerNumber = parseRegister_short((REGISTER86!=null?REGISTER86.getText():null));
2959 			        int totalMethodRegisters = method_stack.peek().totalMethodRegisters;
2960 			        int methodParameterRegisters = method_stack.peek().methodParameterRegisters;
2961 
2962 			        if (registerNumber >= totalMethodRegisters) {
2963 			            throw new SemanticException(input, I_PARAMETER87, "Register %s is larger than the maximum register v%d " +
2964 			                    "for this method", (REGISTER86!=null?REGISTER86.getText():null), totalMethodRegisters-1);
2965 			        }
2966 			        final int indexGuess = registerNumber - (totalMethodRegisters - methodParameterRegisters) - (method_stack.peek().isStatic?0:1);
2967 
2968 			        if (indexGuess < 0) {
2969 			            throw new SemanticException(input, I_PARAMETER87, "Register %s is not a parameter register.",
2970 			                    (REGISTER86!=null?REGISTER86.getText():null));
2971 			        }
2972 
2973 			        int parameterIndex = LinearSearch.linearSearch(parameters, SmaliMethodParameter.COMPARATOR,
2974 			            new WithRegister() { public int getRegister() { return indexGuess; } },
2975 			                indexGuess);
2976 
2977 			        if (parameterIndex < 0) {
2978 			            throw new SemanticException(input, I_PARAMETER87, "Register %s is the second half of a wide parameter.",
2979 			                                (REGISTER86!=null?REGISTER86.getText():null));
2980 			        }
2981 
2982 			        SmaliMethodParameter methodParameter = parameters.get(parameterIndex);
2983 			        methodParameter.name = string_literal88;
2984 			        if (annotations89 != null && annotations89.size() > 0) {
2985 			            methodParameter.annotations = annotations89;
2986 			        }
2987 
2988 			}
2989 
2990 		}
2991 		catch (RecognitionException re) {
2992 			reportError(re);
2993 			recover(input,re);
2994 		}
2995 		finally {
2996 			// do for sure before leaving
2997 		}
2998 	}
2999 	// $ANTLR end "parameter"
3000 
3001 
3002 
3003 	// $ANTLR start "debug_directive"
3004 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:598:1: debug_directive : ( line | local | end_local | restart_local | prologue | epilogue | source );
debug_directive()3005 	public final void debug_directive() throws RecognitionException {
3006 		try {
3007 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:599:3: ( line | local | end_local | restart_local | prologue | epilogue | source )
3008 			int alt25=7;
3009 			switch ( input.LA(1) ) {
3010 			case I_LINE:
3011 				{
3012 				alt25=1;
3013 				}
3014 				break;
3015 			case I_LOCAL:
3016 				{
3017 				alt25=2;
3018 				}
3019 				break;
3020 			case I_END_LOCAL:
3021 				{
3022 				alt25=3;
3023 				}
3024 				break;
3025 			case I_RESTART_LOCAL:
3026 				{
3027 				alt25=4;
3028 				}
3029 				break;
3030 			case I_PROLOGUE:
3031 				{
3032 				alt25=5;
3033 				}
3034 				break;
3035 			case I_EPILOGUE:
3036 				{
3037 				alt25=6;
3038 				}
3039 				break;
3040 			case I_SOURCE:
3041 				{
3042 				alt25=7;
3043 				}
3044 				break;
3045 			default:
3046 				NoViableAltException nvae =
3047 					new NoViableAltException("", 25, 0, input);
3048 				throw nvae;
3049 			}
3050 			switch (alt25) {
3051 				case 1 :
3052 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:599:5: line
3053 					{
3054 					pushFollow(FOLLOW_line_in_debug_directive1436);
3055 					line();
3056 					state._fsp--;
3057 
3058 					}
3059 					break;
3060 				case 2 :
3061 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:600:5: local
3062 					{
3063 					pushFollow(FOLLOW_local_in_debug_directive1442);
3064 					local();
3065 					state._fsp--;
3066 
3067 					}
3068 					break;
3069 				case 3 :
3070 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:601:5: end_local
3071 					{
3072 					pushFollow(FOLLOW_end_local_in_debug_directive1448);
3073 					end_local();
3074 					state._fsp--;
3075 
3076 					}
3077 					break;
3078 				case 4 :
3079 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:602:5: restart_local
3080 					{
3081 					pushFollow(FOLLOW_restart_local_in_debug_directive1454);
3082 					restart_local();
3083 					state._fsp--;
3084 
3085 					}
3086 					break;
3087 				case 5 :
3088 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:603:5: prologue
3089 					{
3090 					pushFollow(FOLLOW_prologue_in_debug_directive1460);
3091 					prologue();
3092 					state._fsp--;
3093 
3094 					}
3095 					break;
3096 				case 6 :
3097 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:604:5: epilogue
3098 					{
3099 					pushFollow(FOLLOW_epilogue_in_debug_directive1466);
3100 					epilogue();
3101 					state._fsp--;
3102 
3103 					}
3104 					break;
3105 				case 7 :
3106 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:605:5: source
3107 					{
3108 					pushFollow(FOLLOW_source_in_debug_directive1472);
3109 					source();
3110 					state._fsp--;
3111 
3112 					}
3113 					break;
3114 
3115 			}
3116 		}
3117 		catch (RecognitionException re) {
3118 			reportError(re);
3119 			recover(input,re);
3120 		}
3121 		finally {
3122 			// do for sure before leaving
3123 		}
3124 	}
3125 	// $ANTLR end "debug_directive"
3126 
3127 
3128 
3129 	// $ANTLR start "line"
3130 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:607:1: line : ^( I_LINE integral_literal ) ;
line()3131 	public final void line() throws RecognitionException {
3132 		int integral_literal90 =0;
3133 
3134 		try {
3135 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:608:3: ( ^( I_LINE integral_literal ) )
3136 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:608:5: ^( I_LINE integral_literal )
3137 			{
3138 			match(input,I_LINE,FOLLOW_I_LINE_in_line1483);
3139 			match(input, Token.DOWN, null);
3140 			pushFollow(FOLLOW_integral_literal_in_line1485);
3141 			integral_literal90=integral_literal();
3142 			state._fsp--;
3143 
3144 			match(input, Token.UP, null);
3145 
3146 
3147 			        method_stack.peek().methodBuilder.addLineNumber(integral_literal90);
3148 
3149 			}
3150 
3151 		}
3152 		catch (RecognitionException re) {
3153 			reportError(re);
3154 			recover(input,re);
3155 		}
3156 		finally {
3157 			// do for sure before leaving
3158 		}
3159 	}
3160 	// $ANTLR end "line"
3161 
3162 
3163 
3164 	// $ANTLR start "local"
3165 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:613:1: local : ^( I_LOCAL REGISTER ( ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )? )? ) ;
local()3166 	public final void local() throws RecognitionException {
3167 		CommonTree REGISTER91=null;
3168 		String name =null;
3169 		String signature =null;
3170 		TreeRuleReturnScope nonvoid_type_descriptor92 =null;
3171 
3172 		try {
3173 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:3: ( ^( I_LOCAL REGISTER ( ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )? )? ) )
3174 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:5: ^( I_LOCAL REGISTER ( ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )? )? )
3175 			{
3176 			match(input,I_LOCAL,FOLLOW_I_LOCAL_in_local1503);
3177 			match(input, Token.DOWN, null);
3178 			REGISTER91=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_local1505);
3179 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:24: ( ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )? )?
3180 			int alt29=2;
3181 			int LA29_0 = input.LA(1);
3182 			if ( (LA29_0==NULL_LITERAL||LA29_0==STRING_LITERAL) ) {
3183 				alt29=1;
3184 			}
3185 			switch (alt29) {
3186 				case 1 :
3187 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:25: ( NULL_LITERAL |name= string_literal ) ( nonvoid_type_descriptor )? (signature= string_literal )?
3188 					{
3189 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:25: ( NULL_LITERAL |name= string_literal )
3190 					int alt26=2;
3191 					int LA26_0 = input.LA(1);
3192 					if ( (LA26_0==NULL_LITERAL) ) {
3193 						alt26=1;
3194 					}
3195 					else if ( (LA26_0==STRING_LITERAL) ) {
3196 						alt26=2;
3197 					}
3198 
3199 					else {
3200 						NoViableAltException nvae =
3201 							new NoViableAltException("", 26, 0, input);
3202 						throw nvae;
3203 					}
3204 
3205 					switch (alt26) {
3206 						case 1 :
3207 							// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:26: NULL_LITERAL
3208 							{
3209 							match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_local1509);
3210 							}
3211 							break;
3212 						case 2 :
3213 							// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:41: name= string_literal
3214 							{
3215 							pushFollow(FOLLOW_string_literal_in_local1515);
3216 							name=string_literal();
3217 							state._fsp--;
3218 
3219 							}
3220 							break;
3221 
3222 					}
3223 
3224 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:62: ( nonvoid_type_descriptor )?
3225 					int alt27=2;
3226 					int LA27_0 = input.LA(1);
3227 					if ( (LA27_0==ARRAY_DESCRIPTOR||LA27_0==CLASS_DESCRIPTOR||LA27_0==PRIMITIVE_TYPE) ) {
3228 						alt27=1;
3229 					}
3230 					switch (alt27) {
3231 						case 1 :
3232 							// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:62: nonvoid_type_descriptor
3233 							{
3234 							pushFollow(FOLLOW_nonvoid_type_descriptor_in_local1518);
3235 							nonvoid_type_descriptor92=nonvoid_type_descriptor();
3236 							state._fsp--;
3237 
3238 							}
3239 							break;
3240 
3241 					}
3242 
3243 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:96: (signature= string_literal )?
3244 					int alt28=2;
3245 					int LA28_0 = input.LA(1);
3246 					if ( (LA28_0==STRING_LITERAL) ) {
3247 						alt28=1;
3248 					}
3249 					switch (alt28) {
3250 						case 1 :
3251 							// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:614:96: signature= string_literal
3252 							{
3253 							pushFollow(FOLLOW_string_literal_in_local1523);
3254 							signature=string_literal();
3255 							state._fsp--;
3256 
3257 							}
3258 							break;
3259 
3260 					}
3261 
3262 					}
3263 					break;
3264 
3265 			}
3266 
3267 			match(input, Token.UP, null);
3268 
3269 
3270 			      int registerNumber = parseRegister_short((REGISTER91!=null?REGISTER91.getText():null));
3271 			      method_stack.peek().methodBuilder.addStartLocal(registerNumber,
3272 			              dexBuilder.internNullableStringReference(name),
3273 			              dexBuilder.internNullableTypeReference((nonvoid_type_descriptor92!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor92).type:null)),
3274 			              dexBuilder.internNullableStringReference(signature));
3275 
3276 			}
3277 
3278 		}
3279 		catch (RecognitionException re) {
3280 			reportError(re);
3281 			recover(input,re);
3282 		}
3283 		finally {
3284 			// do for sure before leaving
3285 		}
3286 	}
3287 	// $ANTLR end "local"
3288 
3289 
3290 
3291 	// $ANTLR start "end_local"
3292 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:623:1: end_local : ^( I_END_LOCAL REGISTER ) ;
end_local()3293 	public final void end_local() throws RecognitionException {
3294 		CommonTree REGISTER93=null;
3295 
3296 		try {
3297 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:624:3: ( ^( I_END_LOCAL REGISTER ) )
3298 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:624:5: ^( I_END_LOCAL REGISTER )
3299 			{
3300 			match(input,I_END_LOCAL,FOLLOW_I_END_LOCAL_in_end_local1544);
3301 			match(input, Token.DOWN, null);
3302 			REGISTER93=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_end_local1546);
3303 			match(input, Token.UP, null);
3304 
3305 
3306 			      int registerNumber = parseRegister_short((REGISTER93!=null?REGISTER93.getText():null));
3307 			      method_stack.peek().methodBuilder.addEndLocal(registerNumber);
3308 
3309 			}
3310 
3311 		}
3312 		catch (RecognitionException re) {
3313 			reportError(re);
3314 			recover(input,re);
3315 		}
3316 		finally {
3317 			// do for sure before leaving
3318 		}
3319 	}
3320 	// $ANTLR end "end_local"
3321 
3322 
3323 
3324 	// $ANTLR start "restart_local"
3325 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:630:1: restart_local : ^( I_RESTART_LOCAL REGISTER ) ;
restart_local()3326 	public final void restart_local() throws RecognitionException {
3327 		CommonTree REGISTER94=null;
3328 
3329 		try {
3330 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:631:3: ( ^( I_RESTART_LOCAL REGISTER ) )
3331 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:631:5: ^( I_RESTART_LOCAL REGISTER )
3332 			{
3333 			match(input,I_RESTART_LOCAL,FOLLOW_I_RESTART_LOCAL_in_restart_local1564);
3334 			match(input, Token.DOWN, null);
3335 			REGISTER94=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_restart_local1566);
3336 			match(input, Token.UP, null);
3337 
3338 
3339 			      int registerNumber = parseRegister_short((REGISTER94!=null?REGISTER94.getText():null));
3340 			      method_stack.peek().methodBuilder.addRestartLocal(registerNumber);
3341 
3342 			}
3343 
3344 		}
3345 		catch (RecognitionException re) {
3346 			reportError(re);
3347 			recover(input,re);
3348 		}
3349 		finally {
3350 			// do for sure before leaving
3351 		}
3352 	}
3353 	// $ANTLR end "restart_local"
3354 
3355 
3356 
3357 	// $ANTLR start "prologue"
3358 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:637:1: prologue : I_PROLOGUE ;
prologue()3359 	public final void prologue() throws RecognitionException {
3360 		try {
3361 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:638:3: ( I_PROLOGUE )
3362 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:638:5: I_PROLOGUE
3363 			{
3364 			match(input,I_PROLOGUE,FOLLOW_I_PROLOGUE_in_prologue1583);
3365 
3366 			      method_stack.peek().methodBuilder.addPrologue();
3367 
3368 			}
3369 
3370 		}
3371 		catch (RecognitionException re) {
3372 			reportError(re);
3373 			recover(input,re);
3374 		}
3375 		finally {
3376 			// do for sure before leaving
3377 		}
3378 	}
3379 	// $ANTLR end "prologue"
3380 
3381 
3382 
3383 	// $ANTLR start "epilogue"
3384 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:643:1: epilogue : I_EPILOGUE ;
epilogue()3385 	public final void epilogue() throws RecognitionException {
3386 		try {
3387 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:644:3: ( I_EPILOGUE )
3388 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:644:5: I_EPILOGUE
3389 			{
3390 			match(input,I_EPILOGUE,FOLLOW_I_EPILOGUE_in_epilogue1599);
3391 
3392 			      method_stack.peek().methodBuilder.addEpilogue();
3393 
3394 			}
3395 
3396 		}
3397 		catch (RecognitionException re) {
3398 			reportError(re);
3399 			recover(input,re);
3400 		}
3401 		finally {
3402 			// do for sure before leaving
3403 		}
3404 	}
3405 	// $ANTLR end "epilogue"
3406 
3407 
3408 
3409 	// $ANTLR start "source"
3410 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:649:1: source : ^( I_SOURCE ( string_literal )? ) ;
source()3411 	public final void source() throws RecognitionException {
3412 		String string_literal95 =null;
3413 
3414 		try {
3415 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:650:3: ( ^( I_SOURCE ( string_literal )? ) )
3416 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:650:5: ^( I_SOURCE ( string_literal )? )
3417 			{
3418 			match(input,I_SOURCE,FOLLOW_I_SOURCE_in_source1616);
3419 			if ( input.LA(1)==Token.DOWN ) {
3420 				match(input, Token.DOWN, null);
3421 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:650:16: ( string_literal )?
3422 				int alt30=2;
3423 				int LA30_0 = input.LA(1);
3424 				if ( (LA30_0==STRING_LITERAL) ) {
3425 					alt30=1;
3426 				}
3427 				switch (alt30) {
3428 					case 1 :
3429 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:650:16: string_literal
3430 						{
3431 						pushFollow(FOLLOW_string_literal_in_source1618);
3432 						string_literal95=string_literal();
3433 						state._fsp--;
3434 
3435 						}
3436 						break;
3437 
3438 				}
3439 
3440 				match(input, Token.UP, null);
3441 			}
3442 
3443 
3444 			      method_stack.peek().methodBuilder.addSetSourceFile(dexBuilder.internNullableStringReference(string_literal95));
3445 
3446 			}
3447 
3448 		}
3449 		catch (RecognitionException re) {
3450 			reportError(re);
3451 			recover(input,re);
3452 		}
3453 		finally {
3454 			// do for sure before leaving
3455 		}
3456 	}
3457 	// $ANTLR end "source"
3458 
3459 
3460 
3461 	// $ANTLR start "ordered_method_items"
3462 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:655:1: ordered_method_items : ^( I_ORDERED_METHOD_ITEMS ( label_def | instruction | debug_directive )* ) ;
ordered_method_items()3463 	public final void ordered_method_items() throws RecognitionException {
3464 		try {
3465 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:3: ( ^( I_ORDERED_METHOD_ITEMS ( label_def | instruction | debug_directive )* ) )
3466 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:5: ^( I_ORDERED_METHOD_ITEMS ( label_def | instruction | debug_directive )* )
3467 			{
3468 			match(input,I_ORDERED_METHOD_ITEMS,FOLLOW_I_ORDERED_METHOD_ITEMS_in_ordered_method_items1637);
3469 			if ( input.LA(1)==Token.DOWN ) {
3470 				match(input, Token.DOWN, null);
3471 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:30: ( label_def | instruction | debug_directive )*
3472 				loop31:
3473 				while (true) {
3474 					int alt31=4;
3475 					switch ( input.LA(1) ) {
3476 					case I_LABEL:
3477 						{
3478 						alt31=1;
3479 						}
3480 						break;
3481 					case I_STATEMENT_ARRAY_DATA:
3482 					case I_STATEMENT_FORMAT10t:
3483 					case I_STATEMENT_FORMAT10x:
3484 					case I_STATEMENT_FORMAT11n:
3485 					case I_STATEMENT_FORMAT11x:
3486 					case I_STATEMENT_FORMAT12x:
3487 					case I_STATEMENT_FORMAT20bc:
3488 					case I_STATEMENT_FORMAT20t:
3489 					case I_STATEMENT_FORMAT21c_FIELD:
3490 					case I_STATEMENT_FORMAT21c_LAMBDA:
3491 					case I_STATEMENT_FORMAT21c_METHOD:
3492 					case I_STATEMENT_FORMAT21c_STRING:
3493 					case I_STATEMENT_FORMAT21c_TYPE:
3494 					case I_STATEMENT_FORMAT21ih:
3495 					case I_STATEMENT_FORMAT21lh:
3496 					case I_STATEMENT_FORMAT21s:
3497 					case I_STATEMENT_FORMAT21t:
3498 					case I_STATEMENT_FORMAT22b:
3499 					case I_STATEMENT_FORMAT22c_FIELD:
3500 					case I_STATEMENT_FORMAT22c_STRING:
3501 					case I_STATEMENT_FORMAT22c_TYPE:
3502 					case I_STATEMENT_FORMAT22s:
3503 					case I_STATEMENT_FORMAT22t:
3504 					case I_STATEMENT_FORMAT22x:
3505 					case I_STATEMENT_FORMAT23x:
3506 					case I_STATEMENT_FORMAT25x:
3507 					case I_STATEMENT_FORMAT30t:
3508 					case I_STATEMENT_FORMAT31c:
3509 					case I_STATEMENT_FORMAT31i:
3510 					case I_STATEMENT_FORMAT31t:
3511 					case I_STATEMENT_FORMAT32x:
3512 					case I_STATEMENT_FORMAT35c_METHOD:
3513 					case I_STATEMENT_FORMAT35c_TYPE:
3514 					case I_STATEMENT_FORMAT3rc_METHOD:
3515 					case I_STATEMENT_FORMAT3rc_TYPE:
3516 					case I_STATEMENT_FORMAT51l:
3517 					case I_STATEMENT_PACKED_SWITCH:
3518 					case I_STATEMENT_SPARSE_SWITCH:
3519 						{
3520 						alt31=2;
3521 						}
3522 						break;
3523 					case I_END_LOCAL:
3524 					case I_EPILOGUE:
3525 					case I_LINE:
3526 					case I_LOCAL:
3527 					case I_PROLOGUE:
3528 					case I_RESTART_LOCAL:
3529 					case I_SOURCE:
3530 						{
3531 						alt31=3;
3532 						}
3533 						break;
3534 					}
3535 					switch (alt31) {
3536 					case 1 :
3537 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:31: label_def
3538 						{
3539 						pushFollow(FOLLOW_label_def_in_ordered_method_items1640);
3540 						label_def();
3541 						state._fsp--;
3542 
3543 						}
3544 						break;
3545 					case 2 :
3546 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:43: instruction
3547 						{
3548 						pushFollow(FOLLOW_instruction_in_ordered_method_items1644);
3549 						instruction();
3550 						state._fsp--;
3551 
3552 						}
3553 						break;
3554 					case 3 :
3555 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:656:57: debug_directive
3556 						{
3557 						pushFollow(FOLLOW_debug_directive_in_ordered_method_items1648);
3558 						debug_directive();
3559 						state._fsp--;
3560 
3561 						}
3562 						break;
3563 
3564 					default :
3565 						break loop31;
3566 					}
3567 				}
3568 
3569 				match(input, Token.UP, null);
3570 			}
3571 
3572 			}
3573 
3574 		}
3575 		catch (RecognitionException re) {
3576 			reportError(re);
3577 			recover(input,re);
3578 		}
3579 		finally {
3580 			// do for sure before leaving
3581 		}
3582 	}
3583 	// $ANTLR end "ordered_method_items"
3584 
3585 
3586 
3587 	// $ANTLR start "label_ref"
3588 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:658:1: label_ref returns [Label label] : SIMPLE_NAME ;
label_ref()3589 	public final Label label_ref() throws RecognitionException {
3590 		Label label = null;
3591 
3592 
3593 		CommonTree SIMPLE_NAME96=null;
3594 
3595 		try {
3596 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:659:3: ( SIMPLE_NAME )
3597 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:659:5: SIMPLE_NAME
3598 			{
3599 			SIMPLE_NAME96=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_label_ref1664);
3600 			 label = method_stack.peek().methodBuilder.getLabel((SIMPLE_NAME96!=null?SIMPLE_NAME96.getText():null));
3601 			}
3602 
3603 		}
3604 		catch (RecognitionException re) {
3605 			reportError(re);
3606 			recover(input,re);
3607 		}
3608 		finally {
3609 			// do for sure before leaving
3610 		}
3611 		return label;
3612 	}
3613 	// $ANTLR end "label_ref"
3614 
3615 
3616 	public static class register_list_return extends TreeRuleReturnScope {
3617 		public byte[] registers;
3618 		public byte registerCount;
3619 	};
3620 
3621 
3622 	// $ANTLR start "register_list"
3623 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:661:1: register_list returns [byte[] registers, byte registerCount] : ^( I_REGISTER_LIST ( REGISTER )* ) ;
register_list()3624 	public final smaliTreeWalker.register_list_return register_list() throws RecognitionException {
3625 		smaliTreeWalker.register_list_return retval = new smaliTreeWalker.register_list_return();
3626 		retval.start = input.LT(1);
3627 
3628 		CommonTree I_REGISTER_LIST97=null;
3629 		CommonTree REGISTER98=null;
3630 
3631 
3632 		    retval.registers = new byte[5];
3633 		    retval.registerCount = 0;
3634 
3635 		try {
3636 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:667:3: ( ^( I_REGISTER_LIST ( REGISTER )* ) )
3637 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:667:5: ^( I_REGISTER_LIST ( REGISTER )* )
3638 			{
3639 			I_REGISTER_LIST97=(CommonTree)match(input,I_REGISTER_LIST,FOLLOW_I_REGISTER_LIST_in_register_list1689);
3640 			if ( input.LA(1)==Token.DOWN ) {
3641 				match(input, Token.DOWN, null);
3642 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:668:7: ( REGISTER )*
3643 				loop32:
3644 				while (true) {
3645 					int alt32=2;
3646 					int LA32_0 = input.LA(1);
3647 					if ( (LA32_0==REGISTER) ) {
3648 						alt32=1;
3649 					}
3650 
3651 					switch (alt32) {
3652 					case 1 :
3653 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:668:8: REGISTER
3654 						{
3655 						REGISTER98=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_list1698);
3656 
3657 						        if (retval.registerCount == 5) {
3658 						          throw new SemanticException(input, I_REGISTER_LIST97, "A list of registers can only have a maximum of 5 " +
3659 						                  "registers. Use the <op>/range alternate opcode instead.");
3660 						        }
3661 						        retval.registers[retval.registerCount++] = parseRegister_nibble((REGISTER98!=null?REGISTER98.getText():null));
3662 
3663 						}
3664 						break;
3665 
3666 					default :
3667 						break loop32;
3668 					}
3669 				}
3670 
3671 				match(input, Token.UP, null);
3672 			}
3673 
3674 			}
3675 
3676 		}
3677 		catch (RecognitionException re) {
3678 			reportError(re);
3679 			recover(input,re);
3680 		}
3681 		finally {
3682 			// do for sure before leaving
3683 		}
3684 		return retval;
3685 	}
3686 	// $ANTLR end "register_list"
3687 
3688 
3689 	public static class register_list4_return extends TreeRuleReturnScope {
3690 		public byte[] registers;
3691 		public byte registerCount;
3692 	};
3693 
3694 
3695 	// $ANTLR start "register_list4"
3696 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:677:1: register_list4 returns [byte[] registers, byte registerCount] : ^( I_REGISTER_LIST ( REGISTER )* ) ;
register_list4()3697 	public final smaliTreeWalker.register_list4_return register_list4() throws RecognitionException {
3698 		smaliTreeWalker.register_list4_return retval = new smaliTreeWalker.register_list4_return();
3699 		retval.start = input.LT(1);
3700 
3701 		CommonTree I_REGISTER_LIST99=null;
3702 		CommonTree REGISTER100=null;
3703 
3704 
3705 		    retval.registers = new byte[4];
3706 		    retval.registerCount = 0;
3707 
3708 		try {
3709 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:683:3: ( ^( I_REGISTER_LIST ( REGISTER )* ) )
3710 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:683:5: ^( I_REGISTER_LIST ( REGISTER )* )
3711 			{
3712 			I_REGISTER_LIST99=(CommonTree)match(input,I_REGISTER_LIST,FOLLOW_I_REGISTER_LIST_in_register_list41732);
3713 			if ( input.LA(1)==Token.DOWN ) {
3714 				match(input, Token.DOWN, null);
3715 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:684:7: ( REGISTER )*
3716 				loop33:
3717 				while (true) {
3718 					int alt33=2;
3719 					int LA33_0 = input.LA(1);
3720 					if ( (LA33_0==REGISTER) ) {
3721 						alt33=1;
3722 					}
3723 
3724 					switch (alt33) {
3725 					case 1 :
3726 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:684:8: REGISTER
3727 						{
3728 						REGISTER100=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_list41741);
3729 
3730 						        if (retval.registerCount == 4) {
3731 						          throw new SemanticException(input, I_REGISTER_LIST99, "A list4 of registers can only have a maximum of 4 " +
3732 						                  "registers. Use the <op>/range alternate opcode instead.");
3733 						        }
3734 						        retval.registers[retval.registerCount++] = parseRegister_nibble((REGISTER100!=null?REGISTER100.getText():null));
3735 
3736 						}
3737 						break;
3738 
3739 					default :
3740 						break loop33;
3741 					}
3742 				}
3743 
3744 				match(input, Token.UP, null);
3745 			}
3746 
3747 			}
3748 
3749 		}
3750 		catch (RecognitionException re) {
3751 			reportError(re);
3752 			recover(input,re);
3753 		}
3754 		finally {
3755 			// do for sure before leaving
3756 		}
3757 		return retval;
3758 	}
3759 	// $ANTLR end "register_list4"
3760 
3761 
3762 	public static class register_range_return extends TreeRuleReturnScope {
3763 		public int startRegister;
3764 		public int endRegister;
3765 	};
3766 
3767 
3768 	// $ANTLR start "register_range"
3769 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:693:1: register_range returns [int startRegister, int endRegister] : ^( I_REGISTER_RANGE (startReg= REGISTER (endReg= REGISTER )? )? ) ;
register_range()3770 	public final smaliTreeWalker.register_range_return register_range() throws RecognitionException {
3771 		smaliTreeWalker.register_range_return retval = new smaliTreeWalker.register_range_return();
3772 		retval.start = input.LT(1);
3773 
3774 		CommonTree startReg=null;
3775 		CommonTree endReg=null;
3776 		CommonTree I_REGISTER_RANGE101=null;
3777 
3778 		try {
3779 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:3: ( ^( I_REGISTER_RANGE (startReg= REGISTER (endReg= REGISTER )? )? ) )
3780 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:5: ^( I_REGISTER_RANGE (startReg= REGISTER (endReg= REGISTER )? )? )
3781 			{
3782 			I_REGISTER_RANGE101=(CommonTree)match(input,I_REGISTER_RANGE,FOLLOW_I_REGISTER_RANGE_in_register_range1766);
3783 			if ( input.LA(1)==Token.DOWN ) {
3784 				match(input, Token.DOWN, null);
3785 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:24: (startReg= REGISTER (endReg= REGISTER )? )?
3786 				int alt35=2;
3787 				int LA35_0 = input.LA(1);
3788 				if ( (LA35_0==REGISTER) ) {
3789 					alt35=1;
3790 				}
3791 				switch (alt35) {
3792 					case 1 :
3793 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:25: startReg= REGISTER (endReg= REGISTER )?
3794 						{
3795 						startReg=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_range1771);
3796 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:49: (endReg= REGISTER )?
3797 						int alt34=2;
3798 						int LA34_0 = input.LA(1);
3799 						if ( (LA34_0==REGISTER) ) {
3800 							alt34=1;
3801 						}
3802 						switch (alt34) {
3803 							case 1 :
3804 								// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:694:49: endReg= REGISTER
3805 								{
3806 								endReg=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_register_range1775);
3807 								}
3808 								break;
3809 
3810 						}
3811 
3812 						}
3813 						break;
3814 
3815 				}
3816 
3817 				match(input, Token.UP, null);
3818 			}
3819 
3820 
3821 			        if (startReg == null) {
3822 			            retval.startRegister = 0;
3823 			            retval.endRegister = -1;
3824 			        } else {
3825 			                retval.startRegister = parseRegister_short((startReg!=null?startReg.getText():null));
3826 			                if (endReg == null) {
3827 			                    retval.endRegister = retval.startRegister;
3828 			                } else {
3829 			                    retval.endRegister = parseRegister_short((endReg!=null?endReg.getText():null));
3830 			                }
3831 
3832 			                int registerCount = retval.endRegister-retval.startRegister+1;
3833 			                if (registerCount < 1) {
3834 			                    throw new SemanticException(input, I_REGISTER_RANGE101, "A register range must have the lower register listed first");
3835 			                }
3836 			            }
3837 
3838 			}
3839 
3840 		}
3841 		catch (RecognitionException re) {
3842 			reportError(re);
3843 			recover(input,re);
3844 		}
3845 		finally {
3846 			// do for sure before leaving
3847 		}
3848 		return retval;
3849 	}
3850 	// $ANTLR end "register_range"
3851 
3852 
3853 
3854 	// $ANTLR start "verification_error_reference"
3855 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:714:1: verification_error_reference returns [ImmutableReference reference] : ( CLASS_DESCRIPTOR | field_reference | method_reference );
verification_error_reference()3856 	public final ImmutableReference verification_error_reference() throws RecognitionException {
3857 		ImmutableReference reference = null;
3858 
3859 
3860 		CommonTree CLASS_DESCRIPTOR102=null;
3861 		ImmutableFieldReference field_reference103 =null;
3862 		ImmutableMethodReference method_reference104 =null;
3863 
3864 		try {
3865 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:715:3: ( CLASS_DESCRIPTOR | field_reference | method_reference )
3866 			int alt36=3;
3867 			switch ( input.LA(1) ) {
3868 			case CLASS_DESCRIPTOR:
3869 				{
3870 				int LA36_1 = input.LA(2);
3871 				if ( (LA36_1==UP) ) {
3872 					alt36=1;
3873 				}
3874 				else if ( (LA36_1==SIMPLE_NAME) ) {
3875 					int LA36_3 = input.LA(3);
3876 					if ( (LA36_3==ARRAY_DESCRIPTOR||LA36_3==CLASS_DESCRIPTOR||LA36_3==PRIMITIVE_TYPE) ) {
3877 						alt36=2;
3878 					}
3879 					else if ( (LA36_3==I_METHOD_PROTOTYPE) ) {
3880 						alt36=3;
3881 					}
3882 
3883 					else {
3884 						int nvaeMark = input.mark();
3885 						try {
3886 							for (int nvaeConsume = 0; nvaeConsume < 3 - 1; nvaeConsume++) {
3887 								input.consume();
3888 							}
3889 							NoViableAltException nvae =
3890 								new NoViableAltException("", 36, 3, input);
3891 							throw nvae;
3892 						} finally {
3893 							input.rewind(nvaeMark);
3894 						}
3895 					}
3896 
3897 				}
3898 
3899 				else {
3900 					int nvaeMark = input.mark();
3901 					try {
3902 						input.consume();
3903 						NoViableAltException nvae =
3904 							new NoViableAltException("", 36, 1, input);
3905 						throw nvae;
3906 					} finally {
3907 						input.rewind(nvaeMark);
3908 					}
3909 				}
3910 
3911 				}
3912 				break;
3913 			case ARRAY_DESCRIPTOR:
3914 				{
3915 				int LA36_2 = input.LA(2);
3916 				if ( (LA36_2==SIMPLE_NAME) ) {
3917 					int LA36_3 = input.LA(3);
3918 					if ( (LA36_3==ARRAY_DESCRIPTOR||LA36_3==CLASS_DESCRIPTOR||LA36_3==PRIMITIVE_TYPE) ) {
3919 						alt36=2;
3920 					}
3921 					else if ( (LA36_3==I_METHOD_PROTOTYPE) ) {
3922 						alt36=3;
3923 					}
3924 
3925 					else {
3926 						int nvaeMark = input.mark();
3927 						try {
3928 							for (int nvaeConsume = 0; nvaeConsume < 3 - 1; nvaeConsume++) {
3929 								input.consume();
3930 							}
3931 							NoViableAltException nvae =
3932 								new NoViableAltException("", 36, 3, input);
3933 							throw nvae;
3934 						} finally {
3935 							input.rewind(nvaeMark);
3936 						}
3937 					}
3938 
3939 				}
3940 
3941 				else {
3942 					int nvaeMark = input.mark();
3943 					try {
3944 						input.consume();
3945 						NoViableAltException nvae =
3946 							new NoViableAltException("", 36, 2, input);
3947 						throw nvae;
3948 					} finally {
3949 						input.rewind(nvaeMark);
3950 					}
3951 				}
3952 
3953 				}
3954 				break;
3955 			case SIMPLE_NAME:
3956 				{
3957 				int LA36_3 = input.LA(2);
3958 				if ( (LA36_3==ARRAY_DESCRIPTOR||LA36_3==CLASS_DESCRIPTOR||LA36_3==PRIMITIVE_TYPE) ) {
3959 					alt36=2;
3960 				}
3961 				else if ( (LA36_3==I_METHOD_PROTOTYPE) ) {
3962 					alt36=3;
3963 				}
3964 
3965 				else {
3966 					int nvaeMark = input.mark();
3967 					try {
3968 						input.consume();
3969 						NoViableAltException nvae =
3970 							new NoViableAltException("", 36, 3, input);
3971 						throw nvae;
3972 					} finally {
3973 						input.rewind(nvaeMark);
3974 					}
3975 				}
3976 
3977 				}
3978 				break;
3979 			default:
3980 				NoViableAltException nvae =
3981 					new NoViableAltException("", 36, 0, input);
3982 				throw nvae;
3983 			}
3984 			switch (alt36) {
3985 				case 1 :
3986 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:715:5: CLASS_DESCRIPTOR
3987 					{
3988 					CLASS_DESCRIPTOR102=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference1798);
3989 
3990 					    reference = new ImmutableTypeReference((CLASS_DESCRIPTOR102!=null?CLASS_DESCRIPTOR102.getText():null));
3991 
3992 					}
3993 					break;
3994 				case 2 :
3995 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:719:5: field_reference
3996 					{
3997 					pushFollow(FOLLOW_field_reference_in_verification_error_reference1808);
3998 					field_reference103=field_reference();
3999 					state._fsp--;
4000 
4001 
4002 					    reference = field_reference103;
4003 
4004 					}
4005 					break;
4006 				case 3 :
4007 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:723:5: method_reference
4008 					{
4009 					pushFollow(FOLLOW_method_reference_in_verification_error_reference1818);
4010 					method_reference104=method_reference();
4011 					state._fsp--;
4012 
4013 
4014 					    reference = method_reference104;
4015 
4016 					}
4017 					break;
4018 
4019 			}
4020 		}
4021 		catch (RecognitionException re) {
4022 			reportError(re);
4023 			recover(input,re);
4024 		}
4025 		finally {
4026 			// do for sure before leaving
4027 		}
4028 		return reference;
4029 	}
4030 	// $ANTLR end "verification_error_reference"
4031 
4032 
4033 
4034 	// $ANTLR start "verification_error_type"
4035 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:728:1: verification_error_type returns [int verificationError] : VERIFICATION_ERROR_TYPE ;
verification_error_type()4036 	public final int verification_error_type() throws RecognitionException {
4037 		int verificationError = 0;
4038 
4039 
4040 		CommonTree VERIFICATION_ERROR_TYPE105=null;
4041 
4042 		try {
4043 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:729:3: ( VERIFICATION_ERROR_TYPE )
4044 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:729:5: VERIFICATION_ERROR_TYPE
4045 			{
4046 			VERIFICATION_ERROR_TYPE105=(CommonTree)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_verification_error_type1835);
4047 
4048 			    verificationError = VerificationError.getVerificationError((VERIFICATION_ERROR_TYPE105!=null?VERIFICATION_ERROR_TYPE105.getText():null));
4049 
4050 			}
4051 
4052 		}
4053 		catch (RecognitionException re) {
4054 			reportError(re);
4055 			recover(input,re);
4056 		}
4057 		finally {
4058 			// do for sure before leaving
4059 		}
4060 		return verificationError;
4061 	}
4062 	// $ANTLR end "verification_error_type"
4063 
4064 
4065 	public static class instruction_return extends TreeRuleReturnScope {
4066 	};
4067 
4068 
4069 	// $ANTLR start "instruction"
4070 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:734:1: instruction : ( insn_format10t | insn_format10x | insn_format11n | insn_format11x | insn_format12x | insn_format20bc | insn_format20t | insn_format21c_field | insn_format21c_string | insn_format21c_type | insn_format21c_lambda | insn_format21c_method | insn_format21ih | insn_format21lh | insn_format21s | insn_format21t | insn_format22b | insn_format22c_field | insn_format22c_type | insn_format22c_string | insn_format22s | insn_format22t | insn_format22x | insn_format23x | insn_format25x | insn_format30t | insn_format31c | insn_format31i | insn_format31t | insn_format32x | insn_format35c_method | insn_format35c_type | insn_format3rc_method | insn_format3rc_type | insn_format51l_type | insn_array_data_directive | insn_packed_switch_directive | insn_sparse_switch_directive );
instruction()4071 	public final smaliTreeWalker.instruction_return instruction() throws RecognitionException {
4072 		smaliTreeWalker.instruction_return retval = new smaliTreeWalker.instruction_return();
4073 		retval.start = input.LT(1);
4074 
4075 		try {
4076 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:735:3: ( insn_format10t | insn_format10x | insn_format11n | insn_format11x | insn_format12x | insn_format20bc | insn_format20t | insn_format21c_field | insn_format21c_string | insn_format21c_type | insn_format21c_lambda | insn_format21c_method | insn_format21ih | insn_format21lh | insn_format21s | insn_format21t | insn_format22b | insn_format22c_field | insn_format22c_type | insn_format22c_string | insn_format22s | insn_format22t | insn_format22x | insn_format23x | insn_format25x | insn_format30t | insn_format31c | insn_format31i | insn_format31t | insn_format32x | insn_format35c_method | insn_format35c_type | insn_format3rc_method | insn_format3rc_type | insn_format51l_type | insn_array_data_directive | insn_packed_switch_directive | insn_sparse_switch_directive )
4077 			int alt37=38;
4078 			switch ( input.LA(1) ) {
4079 			case I_STATEMENT_FORMAT10t:
4080 				{
4081 				alt37=1;
4082 				}
4083 				break;
4084 			case I_STATEMENT_FORMAT10x:
4085 				{
4086 				alt37=2;
4087 				}
4088 				break;
4089 			case I_STATEMENT_FORMAT11n:
4090 				{
4091 				alt37=3;
4092 				}
4093 				break;
4094 			case I_STATEMENT_FORMAT11x:
4095 				{
4096 				alt37=4;
4097 				}
4098 				break;
4099 			case I_STATEMENT_FORMAT12x:
4100 				{
4101 				alt37=5;
4102 				}
4103 				break;
4104 			case I_STATEMENT_FORMAT20bc:
4105 				{
4106 				alt37=6;
4107 				}
4108 				break;
4109 			case I_STATEMENT_FORMAT20t:
4110 				{
4111 				alt37=7;
4112 				}
4113 				break;
4114 			case I_STATEMENT_FORMAT21c_FIELD:
4115 				{
4116 				alt37=8;
4117 				}
4118 				break;
4119 			case I_STATEMENT_FORMAT21c_STRING:
4120 				{
4121 				alt37=9;
4122 				}
4123 				break;
4124 			case I_STATEMENT_FORMAT21c_TYPE:
4125 				{
4126 				alt37=10;
4127 				}
4128 				break;
4129 			case I_STATEMENT_FORMAT21c_LAMBDA:
4130 				{
4131 				alt37=11;
4132 				}
4133 				break;
4134 			case I_STATEMENT_FORMAT21c_METHOD:
4135 				{
4136 				alt37=12;
4137 				}
4138 				break;
4139 			case I_STATEMENT_FORMAT21ih:
4140 				{
4141 				alt37=13;
4142 				}
4143 				break;
4144 			case I_STATEMENT_FORMAT21lh:
4145 				{
4146 				alt37=14;
4147 				}
4148 				break;
4149 			case I_STATEMENT_FORMAT21s:
4150 				{
4151 				alt37=15;
4152 				}
4153 				break;
4154 			case I_STATEMENT_FORMAT21t:
4155 				{
4156 				alt37=16;
4157 				}
4158 				break;
4159 			case I_STATEMENT_FORMAT22b:
4160 				{
4161 				alt37=17;
4162 				}
4163 				break;
4164 			case I_STATEMENT_FORMAT22c_FIELD:
4165 				{
4166 				alt37=18;
4167 				}
4168 				break;
4169 			case I_STATEMENT_FORMAT22c_TYPE:
4170 				{
4171 				alt37=19;
4172 				}
4173 				break;
4174 			case I_STATEMENT_FORMAT22c_STRING:
4175 				{
4176 				alt37=20;
4177 				}
4178 				break;
4179 			case I_STATEMENT_FORMAT22s:
4180 				{
4181 				alt37=21;
4182 				}
4183 				break;
4184 			case I_STATEMENT_FORMAT22t:
4185 				{
4186 				alt37=22;
4187 				}
4188 				break;
4189 			case I_STATEMENT_FORMAT22x:
4190 				{
4191 				alt37=23;
4192 				}
4193 				break;
4194 			case I_STATEMENT_FORMAT23x:
4195 				{
4196 				alt37=24;
4197 				}
4198 				break;
4199 			case I_STATEMENT_FORMAT25x:
4200 				{
4201 				alt37=25;
4202 				}
4203 				break;
4204 			case I_STATEMENT_FORMAT30t:
4205 				{
4206 				alt37=26;
4207 				}
4208 				break;
4209 			case I_STATEMENT_FORMAT31c:
4210 				{
4211 				alt37=27;
4212 				}
4213 				break;
4214 			case I_STATEMENT_FORMAT31i:
4215 				{
4216 				alt37=28;
4217 				}
4218 				break;
4219 			case I_STATEMENT_FORMAT31t:
4220 				{
4221 				alt37=29;
4222 				}
4223 				break;
4224 			case I_STATEMENT_FORMAT32x:
4225 				{
4226 				alt37=30;
4227 				}
4228 				break;
4229 			case I_STATEMENT_FORMAT35c_METHOD:
4230 				{
4231 				alt37=31;
4232 				}
4233 				break;
4234 			case I_STATEMENT_FORMAT35c_TYPE:
4235 				{
4236 				alt37=32;
4237 				}
4238 				break;
4239 			case I_STATEMENT_FORMAT3rc_METHOD:
4240 				{
4241 				alt37=33;
4242 				}
4243 				break;
4244 			case I_STATEMENT_FORMAT3rc_TYPE:
4245 				{
4246 				alt37=34;
4247 				}
4248 				break;
4249 			case I_STATEMENT_FORMAT51l:
4250 				{
4251 				alt37=35;
4252 				}
4253 				break;
4254 			case I_STATEMENT_ARRAY_DATA:
4255 				{
4256 				alt37=36;
4257 				}
4258 				break;
4259 			case I_STATEMENT_PACKED_SWITCH:
4260 				{
4261 				alt37=37;
4262 				}
4263 				break;
4264 			case I_STATEMENT_SPARSE_SWITCH:
4265 				{
4266 				alt37=38;
4267 				}
4268 				break;
4269 			default:
4270 				NoViableAltException nvae =
4271 					new NoViableAltException("", 37, 0, input);
4272 				throw nvae;
4273 			}
4274 			switch (alt37) {
4275 				case 1 :
4276 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:735:5: insn_format10t
4277 					{
4278 					pushFollow(FOLLOW_insn_format10t_in_instruction1849);
4279 					insn_format10t();
4280 					state._fsp--;
4281 
4282 					}
4283 					break;
4284 				case 2 :
4285 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:736:5: insn_format10x
4286 					{
4287 					pushFollow(FOLLOW_insn_format10x_in_instruction1855);
4288 					insn_format10x();
4289 					state._fsp--;
4290 
4291 					}
4292 					break;
4293 				case 3 :
4294 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:737:5: insn_format11n
4295 					{
4296 					pushFollow(FOLLOW_insn_format11n_in_instruction1861);
4297 					insn_format11n();
4298 					state._fsp--;
4299 
4300 					}
4301 					break;
4302 				case 4 :
4303 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:738:5: insn_format11x
4304 					{
4305 					pushFollow(FOLLOW_insn_format11x_in_instruction1867);
4306 					insn_format11x();
4307 					state._fsp--;
4308 
4309 					}
4310 					break;
4311 				case 5 :
4312 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:739:5: insn_format12x
4313 					{
4314 					pushFollow(FOLLOW_insn_format12x_in_instruction1873);
4315 					insn_format12x();
4316 					state._fsp--;
4317 
4318 					}
4319 					break;
4320 				case 6 :
4321 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:740:5: insn_format20bc
4322 					{
4323 					pushFollow(FOLLOW_insn_format20bc_in_instruction1879);
4324 					insn_format20bc();
4325 					state._fsp--;
4326 
4327 					}
4328 					break;
4329 				case 7 :
4330 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:741:5: insn_format20t
4331 					{
4332 					pushFollow(FOLLOW_insn_format20t_in_instruction1885);
4333 					insn_format20t();
4334 					state._fsp--;
4335 
4336 					}
4337 					break;
4338 				case 8 :
4339 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:742:5: insn_format21c_field
4340 					{
4341 					pushFollow(FOLLOW_insn_format21c_field_in_instruction1891);
4342 					insn_format21c_field();
4343 					state._fsp--;
4344 
4345 					}
4346 					break;
4347 				case 9 :
4348 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:743:5: insn_format21c_string
4349 					{
4350 					pushFollow(FOLLOW_insn_format21c_string_in_instruction1897);
4351 					insn_format21c_string();
4352 					state._fsp--;
4353 
4354 					}
4355 					break;
4356 				case 10 :
4357 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:744:5: insn_format21c_type
4358 					{
4359 					pushFollow(FOLLOW_insn_format21c_type_in_instruction1903);
4360 					insn_format21c_type();
4361 					state._fsp--;
4362 
4363 					}
4364 					break;
4365 				case 11 :
4366 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:745:5: insn_format21c_lambda
4367 					{
4368 					pushFollow(FOLLOW_insn_format21c_lambda_in_instruction1909);
4369 					insn_format21c_lambda();
4370 					state._fsp--;
4371 
4372 					}
4373 					break;
4374 				case 12 :
4375 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:746:5: insn_format21c_method
4376 					{
4377 					pushFollow(FOLLOW_insn_format21c_method_in_instruction1915);
4378 					insn_format21c_method();
4379 					state._fsp--;
4380 
4381 					}
4382 					break;
4383 				case 13 :
4384 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:747:5: insn_format21ih
4385 					{
4386 					pushFollow(FOLLOW_insn_format21ih_in_instruction1921);
4387 					insn_format21ih();
4388 					state._fsp--;
4389 
4390 					}
4391 					break;
4392 				case 14 :
4393 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:748:5: insn_format21lh
4394 					{
4395 					pushFollow(FOLLOW_insn_format21lh_in_instruction1927);
4396 					insn_format21lh();
4397 					state._fsp--;
4398 
4399 					}
4400 					break;
4401 				case 15 :
4402 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:749:5: insn_format21s
4403 					{
4404 					pushFollow(FOLLOW_insn_format21s_in_instruction1933);
4405 					insn_format21s();
4406 					state._fsp--;
4407 
4408 					}
4409 					break;
4410 				case 16 :
4411 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:750:5: insn_format21t
4412 					{
4413 					pushFollow(FOLLOW_insn_format21t_in_instruction1939);
4414 					insn_format21t();
4415 					state._fsp--;
4416 
4417 					}
4418 					break;
4419 				case 17 :
4420 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:751:5: insn_format22b
4421 					{
4422 					pushFollow(FOLLOW_insn_format22b_in_instruction1945);
4423 					insn_format22b();
4424 					state._fsp--;
4425 
4426 					}
4427 					break;
4428 				case 18 :
4429 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:752:5: insn_format22c_field
4430 					{
4431 					pushFollow(FOLLOW_insn_format22c_field_in_instruction1951);
4432 					insn_format22c_field();
4433 					state._fsp--;
4434 
4435 					}
4436 					break;
4437 				case 19 :
4438 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:753:5: insn_format22c_type
4439 					{
4440 					pushFollow(FOLLOW_insn_format22c_type_in_instruction1957);
4441 					insn_format22c_type();
4442 					state._fsp--;
4443 
4444 					}
4445 					break;
4446 				case 20 :
4447 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:754:5: insn_format22c_string
4448 					{
4449 					pushFollow(FOLLOW_insn_format22c_string_in_instruction1963);
4450 					insn_format22c_string();
4451 					state._fsp--;
4452 
4453 					}
4454 					break;
4455 				case 21 :
4456 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:755:5: insn_format22s
4457 					{
4458 					pushFollow(FOLLOW_insn_format22s_in_instruction1969);
4459 					insn_format22s();
4460 					state._fsp--;
4461 
4462 					}
4463 					break;
4464 				case 22 :
4465 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:756:5: insn_format22t
4466 					{
4467 					pushFollow(FOLLOW_insn_format22t_in_instruction1975);
4468 					insn_format22t();
4469 					state._fsp--;
4470 
4471 					}
4472 					break;
4473 				case 23 :
4474 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:757:5: insn_format22x
4475 					{
4476 					pushFollow(FOLLOW_insn_format22x_in_instruction1981);
4477 					insn_format22x();
4478 					state._fsp--;
4479 
4480 					}
4481 					break;
4482 				case 24 :
4483 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:758:5: insn_format23x
4484 					{
4485 					pushFollow(FOLLOW_insn_format23x_in_instruction1987);
4486 					insn_format23x();
4487 					state._fsp--;
4488 
4489 					}
4490 					break;
4491 				case 25 :
4492 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:759:5: insn_format25x
4493 					{
4494 					pushFollow(FOLLOW_insn_format25x_in_instruction1993);
4495 					insn_format25x();
4496 					state._fsp--;
4497 
4498 					}
4499 					break;
4500 				case 26 :
4501 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:760:5: insn_format30t
4502 					{
4503 					pushFollow(FOLLOW_insn_format30t_in_instruction1999);
4504 					insn_format30t();
4505 					state._fsp--;
4506 
4507 					}
4508 					break;
4509 				case 27 :
4510 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:761:5: insn_format31c
4511 					{
4512 					pushFollow(FOLLOW_insn_format31c_in_instruction2005);
4513 					insn_format31c();
4514 					state._fsp--;
4515 
4516 					}
4517 					break;
4518 				case 28 :
4519 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:762:5: insn_format31i
4520 					{
4521 					pushFollow(FOLLOW_insn_format31i_in_instruction2011);
4522 					insn_format31i();
4523 					state._fsp--;
4524 
4525 					}
4526 					break;
4527 				case 29 :
4528 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:763:5: insn_format31t
4529 					{
4530 					pushFollow(FOLLOW_insn_format31t_in_instruction2017);
4531 					insn_format31t();
4532 					state._fsp--;
4533 
4534 					}
4535 					break;
4536 				case 30 :
4537 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:764:5: insn_format32x
4538 					{
4539 					pushFollow(FOLLOW_insn_format32x_in_instruction2023);
4540 					insn_format32x();
4541 					state._fsp--;
4542 
4543 					}
4544 					break;
4545 				case 31 :
4546 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:765:5: insn_format35c_method
4547 					{
4548 					pushFollow(FOLLOW_insn_format35c_method_in_instruction2029);
4549 					insn_format35c_method();
4550 					state._fsp--;
4551 
4552 					}
4553 					break;
4554 				case 32 :
4555 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:766:5: insn_format35c_type
4556 					{
4557 					pushFollow(FOLLOW_insn_format35c_type_in_instruction2035);
4558 					insn_format35c_type();
4559 					state._fsp--;
4560 
4561 					}
4562 					break;
4563 				case 33 :
4564 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:767:5: insn_format3rc_method
4565 					{
4566 					pushFollow(FOLLOW_insn_format3rc_method_in_instruction2041);
4567 					insn_format3rc_method();
4568 					state._fsp--;
4569 
4570 					}
4571 					break;
4572 				case 34 :
4573 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:768:5: insn_format3rc_type
4574 					{
4575 					pushFollow(FOLLOW_insn_format3rc_type_in_instruction2047);
4576 					insn_format3rc_type();
4577 					state._fsp--;
4578 
4579 					}
4580 					break;
4581 				case 35 :
4582 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:769:5: insn_format51l_type
4583 					{
4584 					pushFollow(FOLLOW_insn_format51l_type_in_instruction2053);
4585 					insn_format51l_type();
4586 					state._fsp--;
4587 
4588 					}
4589 					break;
4590 				case 36 :
4591 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:770:5: insn_array_data_directive
4592 					{
4593 					pushFollow(FOLLOW_insn_array_data_directive_in_instruction2059);
4594 					insn_array_data_directive();
4595 					state._fsp--;
4596 
4597 					}
4598 					break;
4599 				case 37 :
4600 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:771:5: insn_packed_switch_directive
4601 					{
4602 					pushFollow(FOLLOW_insn_packed_switch_directive_in_instruction2065);
4603 					insn_packed_switch_directive();
4604 					state._fsp--;
4605 
4606 					}
4607 					break;
4608 				case 38 :
4609 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:772:5: insn_sparse_switch_directive
4610 					{
4611 					pushFollow(FOLLOW_insn_sparse_switch_directive_in_instruction2071);
4612 					insn_sparse_switch_directive();
4613 					state._fsp--;
4614 
4615 					}
4616 					break;
4617 
4618 			}
4619 		}
4620 		catch (Exception ex) {
4621 
4622 			    reportError(new SemanticException(input, ((CommonTree)retval.start), ex.getMessage()));
4623 			    recover(input, null);
4624 
4625 		}
4626 
4627 		finally {
4628 			// do for sure before leaving
4629 		}
4630 		return retval;
4631 	}
4632 	// $ANTLR end "instruction"
4633 
4634 
4635 
4636 	// $ANTLR start "insn_format10t"
4637 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:778:1: insn_format10t : ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref ) ;
insn_format10t()4638 	public final void insn_format10t() throws RecognitionException {
4639 		CommonTree INSTRUCTION_FORMAT10t106=null;
4640 		Label label_ref107 =null;
4641 
4642 		try {
4643 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:779:3: ( ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref ) )
4644 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:780:5: ^( I_STATEMENT_FORMAT10t INSTRUCTION_FORMAT10t label_ref )
4645 			{
4646 			match(input,I_STATEMENT_FORMAT10t,FOLLOW_I_STATEMENT_FORMAT10t_in_insn_format10t2095);
4647 			match(input, Token.DOWN, null);
4648 			INSTRUCTION_FORMAT10t106=(CommonTree)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t2097);
4649 			pushFollow(FOLLOW_label_ref_in_insn_format10t2099);
4650 			label_ref107=label_ref();
4651 			state._fsp--;
4652 
4653 			match(input, Token.UP, null);
4654 
4655 
4656 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT10t106!=null?INSTRUCTION_FORMAT10t106.getText():null));
4657 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction10t(opcode, label_ref107));
4658 
4659 			}
4660 
4661 		}
4662 		catch (RecognitionException re) {
4663 			reportError(re);
4664 			recover(input,re);
4665 		}
4666 		finally {
4667 			// do for sure before leaving
4668 		}
4669 	}
4670 	// $ANTLR end "insn_format10t"
4671 
4672 
4673 
4674 	// $ANTLR start "insn_format10x"
4675 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:786:1: insn_format10x : ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x ) ;
insn_format10x()4676 	public final void insn_format10x() throws RecognitionException {
4677 		CommonTree INSTRUCTION_FORMAT10x108=null;
4678 
4679 		try {
4680 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:787:3: ( ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x ) )
4681 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:788:5: ^( I_STATEMENT_FORMAT10x INSTRUCTION_FORMAT10x )
4682 			{
4683 			match(input,I_STATEMENT_FORMAT10x,FOLLOW_I_STATEMENT_FORMAT10x_in_insn_format10x2122);
4684 			match(input, Token.DOWN, null);
4685 			INSTRUCTION_FORMAT10x108=(CommonTree)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x2124);
4686 			match(input, Token.UP, null);
4687 
4688 
4689 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT10x108!=null?INSTRUCTION_FORMAT10x108.getText():null));
4690 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction10x(opcode));
4691 
4692 			}
4693 
4694 		}
4695 		catch (RecognitionException re) {
4696 			reportError(re);
4697 			recover(input,re);
4698 		}
4699 		finally {
4700 			// do for sure before leaving
4701 		}
4702 	}
4703 	// $ANTLR end "insn_format10x"
4704 
4705 
4706 
4707 	// $ANTLR start "insn_format11n"
4708 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:794:1: insn_format11n : ^( I_STATEMENT_FORMAT11n INSTRUCTION_FORMAT11n REGISTER short_integral_literal ) ;
insn_format11n()4709 	public final void insn_format11n() throws RecognitionException {
4710 		CommonTree INSTRUCTION_FORMAT11n109=null;
4711 		CommonTree REGISTER110=null;
4712 		short short_integral_literal111 =0;
4713 
4714 		try {
4715 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:795:3: ( ^( I_STATEMENT_FORMAT11n INSTRUCTION_FORMAT11n REGISTER short_integral_literal ) )
4716 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:796:5: ^( I_STATEMENT_FORMAT11n INSTRUCTION_FORMAT11n REGISTER short_integral_literal )
4717 			{
4718 			match(input,I_STATEMENT_FORMAT11n,FOLLOW_I_STATEMENT_FORMAT11n_in_insn_format11n2147);
4719 			match(input, Token.DOWN, null);
4720 			INSTRUCTION_FORMAT11n109=(CommonTree)match(input,INSTRUCTION_FORMAT11n,FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n2149);
4721 			REGISTER110=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11n2151);
4722 			pushFollow(FOLLOW_short_integral_literal_in_insn_format11n2153);
4723 			short_integral_literal111=short_integral_literal();
4724 			state._fsp--;
4725 
4726 			match(input, Token.UP, null);
4727 
4728 
4729 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT11n109!=null?INSTRUCTION_FORMAT11n109.getText():null));
4730 			      byte regA = parseRegister_nibble((REGISTER110!=null?REGISTER110.getText():null));
4731 
4732 			      short litB = short_integral_literal111;
4733 			      LiteralTools.checkNibble(litB);
4734 
4735 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction11n(opcode, regA, litB));
4736 
4737 			}
4738 
4739 		}
4740 		catch (RecognitionException re) {
4741 			reportError(re);
4742 			recover(input,re);
4743 		}
4744 		finally {
4745 			// do for sure before leaving
4746 		}
4747 	}
4748 	// $ANTLR end "insn_format11n"
4749 
4750 
4751 
4752 	// $ANTLR start "insn_format11x"
4753 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:807:1: insn_format11x : ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER ) ;
insn_format11x()4754 	public final void insn_format11x() throws RecognitionException {
4755 		CommonTree INSTRUCTION_FORMAT11x112=null;
4756 		CommonTree REGISTER113=null;
4757 
4758 		try {
4759 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:808:3: ( ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER ) )
4760 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:809:5: ^( I_STATEMENT_FORMAT11x INSTRUCTION_FORMAT11x REGISTER )
4761 			{
4762 			match(input,I_STATEMENT_FORMAT11x,FOLLOW_I_STATEMENT_FORMAT11x_in_insn_format11x2176);
4763 			match(input, Token.DOWN, null);
4764 			INSTRUCTION_FORMAT11x112=(CommonTree)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x2178);
4765 			REGISTER113=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format11x2180);
4766 			match(input, Token.UP, null);
4767 
4768 
4769 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT11x112!=null?INSTRUCTION_FORMAT11x112.getText():null));
4770 			      short regA = parseRegister_byte((REGISTER113!=null?REGISTER113.getText():null));
4771 
4772 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction11x(opcode, regA));
4773 
4774 			}
4775 
4776 		}
4777 		catch (RecognitionException re) {
4778 			reportError(re);
4779 			recover(input,re);
4780 		}
4781 		finally {
4782 			// do for sure before leaving
4783 		}
4784 	}
4785 	// $ANTLR end "insn_format11x"
4786 
4787 
4788 
4789 	// $ANTLR start "insn_format12x"
4790 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:817:1: insn_format12x : ^( I_STATEMENT_FORMAT12x INSTRUCTION_FORMAT12x registerA= REGISTER registerB= REGISTER ) ;
insn_format12x()4791 	public final void insn_format12x() throws RecognitionException {
4792 		CommonTree registerA=null;
4793 		CommonTree registerB=null;
4794 		CommonTree INSTRUCTION_FORMAT12x114=null;
4795 
4796 		try {
4797 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:818:3: ( ^( I_STATEMENT_FORMAT12x INSTRUCTION_FORMAT12x registerA= REGISTER registerB= REGISTER ) )
4798 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:819:5: ^( I_STATEMENT_FORMAT12x INSTRUCTION_FORMAT12x registerA= REGISTER registerB= REGISTER )
4799 			{
4800 			match(input,I_STATEMENT_FORMAT12x,FOLLOW_I_STATEMENT_FORMAT12x_in_insn_format12x2203);
4801 			match(input, Token.DOWN, null);
4802 			INSTRUCTION_FORMAT12x114=(CommonTree)match(input,INSTRUCTION_FORMAT12x,FOLLOW_INSTRUCTION_FORMAT12x_in_insn_format12x2205);
4803 			registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x2209);
4804 			registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format12x2213);
4805 			match(input, Token.UP, null);
4806 
4807 
4808 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT12x114!=null?INSTRUCTION_FORMAT12x114.getText():null));
4809 			      byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null));
4810 			      byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null));
4811 
4812 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction12x(opcode, regA, regB));
4813 
4814 			}
4815 
4816 		}
4817 		catch (RecognitionException re) {
4818 			reportError(re);
4819 			recover(input,re);
4820 		}
4821 		finally {
4822 			// do for sure before leaving
4823 		}
4824 	}
4825 	// $ANTLR end "insn_format12x"
4826 
4827 
4828 
4829 	// $ANTLR start "insn_format20bc"
4830 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:828:1: insn_format20bc : ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc verification_error_type verification_error_reference ) ;
insn_format20bc()4831 	public final void insn_format20bc() throws RecognitionException {
4832 		CommonTree INSTRUCTION_FORMAT20bc115=null;
4833 		int verification_error_type116 =0;
4834 		ImmutableReference verification_error_reference117 =null;
4835 
4836 		try {
4837 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:829:3: ( ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc verification_error_type verification_error_reference ) )
4838 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:830:5: ^( I_STATEMENT_FORMAT20bc INSTRUCTION_FORMAT20bc verification_error_type verification_error_reference )
4839 			{
4840 			match(input,I_STATEMENT_FORMAT20bc,FOLLOW_I_STATEMENT_FORMAT20bc_in_insn_format20bc2236);
4841 			match(input, Token.DOWN, null);
4842 			INSTRUCTION_FORMAT20bc115=(CommonTree)match(input,INSTRUCTION_FORMAT20bc,FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc2238);
4843 			pushFollow(FOLLOW_verification_error_type_in_insn_format20bc2240);
4844 			verification_error_type116=verification_error_type();
4845 			state._fsp--;
4846 
4847 			pushFollow(FOLLOW_verification_error_reference_in_insn_format20bc2242);
4848 			verification_error_reference117=verification_error_reference();
4849 			state._fsp--;
4850 
4851 			match(input, Token.UP, null);
4852 
4853 
4854 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT20bc115!=null?INSTRUCTION_FORMAT20bc115.getText():null));
4855 
4856 			      int verificationError = verification_error_type116;
4857 			      ImmutableReference referencedItem = verification_error_reference117;
4858 
4859 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction20bc(opcode, verificationError,
4860 			              dexBuilder.internReference(referencedItem)));
4861 
4862 			}
4863 
4864 		}
4865 		catch (RecognitionException re) {
4866 			reportError(re);
4867 			recover(input,re);
4868 		}
4869 		finally {
4870 			// do for sure before leaving
4871 		}
4872 	}
4873 	// $ANTLR end "insn_format20bc"
4874 
4875 
4876 
4877 	// $ANTLR start "insn_format20t"
4878 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:841:1: insn_format20t : ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref ) ;
insn_format20t()4879 	public final void insn_format20t() throws RecognitionException {
4880 		CommonTree INSTRUCTION_FORMAT20t118=null;
4881 		Label label_ref119 =null;
4882 
4883 		try {
4884 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:842:3: ( ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref ) )
4885 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:843:5: ^( I_STATEMENT_FORMAT20t INSTRUCTION_FORMAT20t label_ref )
4886 			{
4887 			match(input,I_STATEMENT_FORMAT20t,FOLLOW_I_STATEMENT_FORMAT20t_in_insn_format20t2265);
4888 			match(input, Token.DOWN, null);
4889 			INSTRUCTION_FORMAT20t118=(CommonTree)match(input,INSTRUCTION_FORMAT20t,FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t2267);
4890 			pushFollow(FOLLOW_label_ref_in_insn_format20t2269);
4891 			label_ref119=label_ref();
4892 			state._fsp--;
4893 
4894 			match(input, Token.UP, null);
4895 
4896 
4897 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT20t118!=null?INSTRUCTION_FORMAT20t118.getText():null));
4898 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction20t(opcode, label_ref119));
4899 
4900 			}
4901 
4902 		}
4903 		catch (RecognitionException re) {
4904 			reportError(re);
4905 			recover(input,re);
4906 		}
4907 		finally {
4908 			// do for sure before leaving
4909 		}
4910 	}
4911 	// $ANTLR end "insn_format20t"
4912 
4913 
4914 
4915 	// $ANTLR start "insn_format21c_field"
4916 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:849:1: insn_format21c_field : ^( I_STATEMENT_FORMAT21c_FIELD inst= ( INSTRUCTION_FORMAT21c_FIELD | INSTRUCTION_FORMAT21c_FIELD_ODEX ) REGISTER field_reference ) ;
insn_format21c_field()4917 	public final void insn_format21c_field() throws RecognitionException {
4918 		CommonTree inst=null;
4919 		CommonTree REGISTER120=null;
4920 		ImmutableFieldReference field_reference121 =null;
4921 
4922 		try {
4923 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:850:3: ( ^( I_STATEMENT_FORMAT21c_FIELD inst= ( INSTRUCTION_FORMAT21c_FIELD | INSTRUCTION_FORMAT21c_FIELD_ODEX ) REGISTER field_reference ) )
4924 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:851:5: ^( I_STATEMENT_FORMAT21c_FIELD inst= ( INSTRUCTION_FORMAT21c_FIELD | INSTRUCTION_FORMAT21c_FIELD_ODEX ) REGISTER field_reference )
4925 			{
4926 			match(input,I_STATEMENT_FORMAT21c_FIELD,FOLLOW_I_STATEMENT_FORMAT21c_FIELD_in_insn_format21c_field2292);
4927 			match(input, Token.DOWN, null);
4928 			inst=(CommonTree)input.LT(1);
4929 			if ( (input.LA(1) >= INSTRUCTION_FORMAT21c_FIELD && input.LA(1) <= INSTRUCTION_FORMAT21c_FIELD_ODEX) ) {
4930 				input.consume();
4931 				state.errorRecovery=false;
4932 			}
4933 			else {
4934 				MismatchedSetException mse = new MismatchedSetException(null,input);
4935 				throw mse;
4936 			}
4937 			REGISTER120=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_field2304);
4938 			pushFollow(FOLLOW_field_reference_in_insn_format21c_field2306);
4939 			field_reference121=field_reference();
4940 			state._fsp--;
4941 
4942 			match(input, Token.UP, null);
4943 
4944 
4945 			      Opcode opcode = opcodes.getOpcodeByName((inst!=null?inst.getText():null));
4946 			      short regA = parseRegister_byte((REGISTER120!=null?REGISTER120.getText():null));
4947 
4948 			      ImmutableFieldReference fieldReference = field_reference121;
4949 
4950 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA,
4951 			              dexBuilder.internFieldReference(fieldReference)));
4952 
4953 			}
4954 
4955 		}
4956 		catch (RecognitionException re) {
4957 			reportError(re);
4958 			recover(input,re);
4959 		}
4960 		finally {
4961 			// do for sure before leaving
4962 		}
4963 	}
4964 	// $ANTLR end "insn_format21c_field"
4965 
4966 
4967 
4968 	// $ANTLR start "insn_format21c_string"
4969 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:862:1: insn_format21c_string : ^( I_STATEMENT_FORMAT21c_STRING INSTRUCTION_FORMAT21c_STRING REGISTER string_literal ) ;
insn_format21c_string()4970 	public final void insn_format21c_string() throws RecognitionException {
4971 		CommonTree INSTRUCTION_FORMAT21c_STRING122=null;
4972 		CommonTree REGISTER123=null;
4973 		String string_literal124 =null;
4974 
4975 		try {
4976 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:863:3: ( ^( I_STATEMENT_FORMAT21c_STRING INSTRUCTION_FORMAT21c_STRING REGISTER string_literal ) )
4977 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:864:5: ^( I_STATEMENT_FORMAT21c_STRING INSTRUCTION_FORMAT21c_STRING REGISTER string_literal )
4978 			{
4979 			match(input,I_STATEMENT_FORMAT21c_STRING,FOLLOW_I_STATEMENT_FORMAT21c_STRING_in_insn_format21c_string2329);
4980 			match(input, Token.DOWN, null);
4981 			INSTRUCTION_FORMAT21c_STRING122=(CommonTree)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string2331);
4982 			REGISTER123=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_string2333);
4983 			pushFollow(FOLLOW_string_literal_in_insn_format21c_string2335);
4984 			string_literal124=string_literal();
4985 			state._fsp--;
4986 
4987 			match(input, Token.UP, null);
4988 
4989 
4990 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_STRING122!=null?INSTRUCTION_FORMAT21c_STRING122.getText():null));
4991 			      short regA = parseRegister_byte((REGISTER123!=null?REGISTER123.getText():null));
4992 
4993 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA,
4994 			              dexBuilder.internStringReference(string_literal124)));
4995 
4996 			}
4997 
4998 		}
4999 		catch (RecognitionException re) {
5000 			reportError(re);
5001 			recover(input,re);
5002 		}
5003 		finally {
5004 			// do for sure before leaving
5005 		}
5006 	}
5007 	// $ANTLR end "insn_format21c_string"
5008 
5009 
5010 
5011 	// $ANTLR start "insn_format21c_type"
5012 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:873:1: insn_format21c_type : ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) ;
insn_format21c_type()5013 	public final void insn_format21c_type() throws RecognitionException {
5014 		CommonTree INSTRUCTION_FORMAT21c_TYPE125=null;
5015 		CommonTree REGISTER126=null;
5016 		TreeRuleReturnScope nonvoid_type_descriptor127 =null;
5017 
5018 		try {
5019 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:874:3: ( ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) )
5020 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:875:5: ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor )
5021 			{
5022 			match(input,I_STATEMENT_FORMAT21c_TYPE,FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2358);
5023 			match(input, Token.DOWN, null);
5024 			INSTRUCTION_FORMAT21c_TYPE125=(CommonTree)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type2360);
5025 			REGISTER126=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_type2362);
5026 			pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type2364);
5027 			nonvoid_type_descriptor127=nonvoid_type_descriptor();
5028 			state._fsp--;
5029 
5030 			match(input, Token.UP, null);
5031 
5032 
5033 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_TYPE125!=null?INSTRUCTION_FORMAT21c_TYPE125.getText():null));
5034 			      short regA = parseRegister_byte((REGISTER126!=null?REGISTER126.getText():null));
5035 
5036 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA,
5037 			              dexBuilder.internTypeReference((nonvoid_type_descriptor127!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor127).type:null))));
5038 
5039 			}
5040 
5041 		}
5042 		catch (RecognitionException re) {
5043 			reportError(re);
5044 			recover(input,re);
5045 		}
5046 		finally {
5047 			// do for sure before leaving
5048 		}
5049 	}
5050 	// $ANTLR end "insn_format21c_type"
5051 
5052 
5053 
5054 	// $ANTLR start "insn_format21c_lambda"
5055 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:884:1: insn_format21c_lambda : ^( I_STATEMENT_FORMAT21c_LAMBDA INSTRUCTION_FORMAT21c_LAMBDA REGISTER string_literal ) ;
insn_format21c_lambda()5056 	public final void insn_format21c_lambda() throws RecognitionException {
5057 		CommonTree INSTRUCTION_FORMAT21c_LAMBDA128=null;
5058 		CommonTree REGISTER129=null;
5059 		String string_literal130 =null;
5060 
5061 		try {
5062 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:885:3: ( ^( I_STATEMENT_FORMAT21c_LAMBDA INSTRUCTION_FORMAT21c_LAMBDA REGISTER string_literal ) )
5063 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:886:5: ^( I_STATEMENT_FORMAT21c_LAMBDA INSTRUCTION_FORMAT21c_LAMBDA REGISTER string_literal )
5064 			{
5065 			match(input,I_STATEMENT_FORMAT21c_LAMBDA,FOLLOW_I_STATEMENT_FORMAT21c_LAMBDA_in_insn_format21c_lambda2387);
5066 			match(input, Token.DOWN, null);
5067 			INSTRUCTION_FORMAT21c_LAMBDA128=(CommonTree)match(input,INSTRUCTION_FORMAT21c_LAMBDA,FOLLOW_INSTRUCTION_FORMAT21c_LAMBDA_in_insn_format21c_lambda2389);
5068 			REGISTER129=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_lambda2391);
5069 			pushFollow(FOLLOW_string_literal_in_insn_format21c_lambda2393);
5070 			string_literal130=string_literal();
5071 			state._fsp--;
5072 
5073 			match(input, Token.UP, null);
5074 
5075 
5076 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_LAMBDA128!=null?INSTRUCTION_FORMAT21c_LAMBDA128.getText():null));
5077 			      short regA = parseRegister_byte((REGISTER129!=null?REGISTER129.getText():null));
5078 
5079 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA,
5080 			              dexBuilder.internStringReference(string_literal130)));
5081 
5082 			}
5083 
5084 		}
5085 		catch (RecognitionException re) {
5086 			reportError(re);
5087 			recover(input,re);
5088 		}
5089 		finally {
5090 			// do for sure before leaving
5091 		}
5092 	}
5093 	// $ANTLR end "insn_format21c_lambda"
5094 
5095 
5096 
5097 	// $ANTLR start "insn_format21c_method"
5098 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:895:1: insn_format21c_method : ^( I_STATEMENT_FORMAT21c_METHOD INSTRUCTION_FORMAT21c_METHOD REGISTER method_reference ) ;
insn_format21c_method()5099 	public final void insn_format21c_method() throws RecognitionException {
5100 		CommonTree INSTRUCTION_FORMAT21c_METHOD131=null;
5101 		CommonTree REGISTER132=null;
5102 		ImmutableMethodReference method_reference133 =null;
5103 
5104 		try {
5105 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:896:3: ( ^( I_STATEMENT_FORMAT21c_METHOD INSTRUCTION_FORMAT21c_METHOD REGISTER method_reference ) )
5106 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:897:5: ^( I_STATEMENT_FORMAT21c_METHOD INSTRUCTION_FORMAT21c_METHOD REGISTER method_reference )
5107 			{
5108 			match(input,I_STATEMENT_FORMAT21c_METHOD,FOLLOW_I_STATEMENT_FORMAT21c_METHOD_in_insn_format21c_method2416);
5109 			match(input, Token.DOWN, null);
5110 			INSTRUCTION_FORMAT21c_METHOD131=(CommonTree)match(input,INSTRUCTION_FORMAT21c_METHOD,FOLLOW_INSTRUCTION_FORMAT21c_METHOD_in_insn_format21c_method2418);
5111 			REGISTER132=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_method2420);
5112 			pushFollow(FOLLOW_method_reference_in_insn_format21c_method2422);
5113 			method_reference133=method_reference();
5114 			state._fsp--;
5115 
5116 			match(input, Token.UP, null);
5117 
5118 
5119 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_METHOD131!=null?INSTRUCTION_FORMAT21c_METHOD131.getText():null));
5120 			      short regA = parseRegister_byte((REGISTER132!=null?REGISTER132.getText():null));
5121 
5122 			      ImmutableMethodReference methodReference = method_reference133;
5123 
5124 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA,
5125 			              dexBuilder.internMethodReference(methodReference)));
5126 
5127 			}
5128 
5129 		}
5130 		catch (RecognitionException re) {
5131 			reportError(re);
5132 			recover(input,re);
5133 		}
5134 		finally {
5135 			// do for sure before leaving
5136 		}
5137 	}
5138 	// $ANTLR end "insn_format21c_method"
5139 
5140 
5141 
5142 	// $ANTLR start "insn_format21ih"
5143 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:908:1: insn_format21ih : ^( I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) ;
insn_format21ih()5144 	public final void insn_format21ih() throws RecognitionException {
5145 		CommonTree INSTRUCTION_FORMAT21ih134=null;
5146 		CommonTree REGISTER135=null;
5147 		int fixed_32bit_literal136 =0;
5148 
5149 		try {
5150 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:909:3: ( ^( I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal ) )
5151 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:910:5: ^( I_STATEMENT_FORMAT21ih INSTRUCTION_FORMAT21ih REGISTER fixed_32bit_literal )
5152 			{
5153 			match(input,I_STATEMENT_FORMAT21ih,FOLLOW_I_STATEMENT_FORMAT21ih_in_insn_format21ih2445);
5154 			match(input, Token.DOWN, null);
5155 			INSTRUCTION_FORMAT21ih134=(CommonTree)match(input,INSTRUCTION_FORMAT21ih,FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih2447);
5156 			REGISTER135=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21ih2449);
5157 			pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format21ih2451);
5158 			fixed_32bit_literal136=fixed_32bit_literal();
5159 			state._fsp--;
5160 
5161 			match(input, Token.UP, null);
5162 
5163 
5164 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21ih134!=null?INSTRUCTION_FORMAT21ih134.getText():null));
5165 			      short regA = parseRegister_byte((REGISTER135!=null?REGISTER135.getText():null));
5166 
5167 			      int litB = fixed_32bit_literal136;
5168 
5169 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21ih(opcode, regA, litB));
5170 
5171 			}
5172 
5173 		}
5174 		catch (RecognitionException re) {
5175 			reportError(re);
5176 			recover(input,re);
5177 		}
5178 		finally {
5179 			// do for sure before leaving
5180 		}
5181 	}
5182 	// $ANTLR end "insn_format21ih"
5183 
5184 
5185 
5186 	// $ANTLR start "insn_format21lh"
5187 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:920:1: insn_format21lh : ^( I_STATEMENT_FORMAT21lh INSTRUCTION_FORMAT21lh REGISTER fixed_64bit_literal ) ;
insn_format21lh()5188 	public final void insn_format21lh() throws RecognitionException {
5189 		CommonTree INSTRUCTION_FORMAT21lh137=null;
5190 		CommonTree REGISTER138=null;
5191 		long fixed_64bit_literal139 =0;
5192 
5193 		try {
5194 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:921:3: ( ^( I_STATEMENT_FORMAT21lh INSTRUCTION_FORMAT21lh REGISTER fixed_64bit_literal ) )
5195 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:922:5: ^( I_STATEMENT_FORMAT21lh INSTRUCTION_FORMAT21lh REGISTER fixed_64bit_literal )
5196 			{
5197 			match(input,I_STATEMENT_FORMAT21lh,FOLLOW_I_STATEMENT_FORMAT21lh_in_insn_format21lh2474);
5198 			match(input, Token.DOWN, null);
5199 			INSTRUCTION_FORMAT21lh137=(CommonTree)match(input,INSTRUCTION_FORMAT21lh,FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh2476);
5200 			REGISTER138=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21lh2478);
5201 			pushFollow(FOLLOW_fixed_64bit_literal_in_insn_format21lh2480);
5202 			fixed_64bit_literal139=fixed_64bit_literal();
5203 			state._fsp--;
5204 
5205 			match(input, Token.UP, null);
5206 
5207 
5208 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21lh137!=null?INSTRUCTION_FORMAT21lh137.getText():null));
5209 			      short regA = parseRegister_byte((REGISTER138!=null?REGISTER138.getText():null));
5210 
5211 			      long litB = fixed_64bit_literal139;
5212 
5213 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21lh(opcode, regA, litB));
5214 
5215 			}
5216 
5217 		}
5218 		catch (RecognitionException re) {
5219 			reportError(re);
5220 			recover(input,re);
5221 		}
5222 		finally {
5223 			// do for sure before leaving
5224 		}
5225 	}
5226 	// $ANTLR end "insn_format21lh"
5227 
5228 
5229 
5230 	// $ANTLR start "insn_format21s"
5231 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:932:1: insn_format21s : ^( I_STATEMENT_FORMAT21s INSTRUCTION_FORMAT21s REGISTER short_integral_literal ) ;
insn_format21s()5232 	public final void insn_format21s() throws RecognitionException {
5233 		CommonTree INSTRUCTION_FORMAT21s140=null;
5234 		CommonTree REGISTER141=null;
5235 		short short_integral_literal142 =0;
5236 
5237 		try {
5238 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:933:3: ( ^( I_STATEMENT_FORMAT21s INSTRUCTION_FORMAT21s REGISTER short_integral_literal ) )
5239 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:934:5: ^( I_STATEMENT_FORMAT21s INSTRUCTION_FORMAT21s REGISTER short_integral_literal )
5240 			{
5241 			match(input,I_STATEMENT_FORMAT21s,FOLLOW_I_STATEMENT_FORMAT21s_in_insn_format21s2503);
5242 			match(input, Token.DOWN, null);
5243 			INSTRUCTION_FORMAT21s140=(CommonTree)match(input,INSTRUCTION_FORMAT21s,FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s2505);
5244 			REGISTER141=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21s2507);
5245 			pushFollow(FOLLOW_short_integral_literal_in_insn_format21s2509);
5246 			short_integral_literal142=short_integral_literal();
5247 			state._fsp--;
5248 
5249 			match(input, Token.UP, null);
5250 
5251 
5252 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21s140!=null?INSTRUCTION_FORMAT21s140.getText():null));
5253 			      short regA = parseRegister_byte((REGISTER141!=null?REGISTER141.getText():null));
5254 
5255 			      short litB = short_integral_literal142;
5256 
5257 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21s(opcode, regA, litB));
5258 
5259 			}
5260 
5261 		}
5262 		catch (RecognitionException re) {
5263 			reportError(re);
5264 			recover(input,re);
5265 		}
5266 		finally {
5267 			// do for sure before leaving
5268 		}
5269 	}
5270 	// $ANTLR end "insn_format21s"
5271 
5272 
5273 
5274 	// $ANTLR start "insn_format21t"
5275 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:944:1: insn_format21t : ^( I_STATEMENT_FORMAT21t INSTRUCTION_FORMAT21t REGISTER label_ref ) ;
insn_format21t()5276 	public final void insn_format21t() throws RecognitionException {
5277 		CommonTree INSTRUCTION_FORMAT21t143=null;
5278 		CommonTree REGISTER144=null;
5279 		Label label_ref145 =null;
5280 
5281 		try {
5282 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:945:3: ( ^( I_STATEMENT_FORMAT21t INSTRUCTION_FORMAT21t REGISTER label_ref ) )
5283 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:946:5: ^( I_STATEMENT_FORMAT21t INSTRUCTION_FORMAT21t REGISTER label_ref )
5284 			{
5285 			match(input,I_STATEMENT_FORMAT21t,FOLLOW_I_STATEMENT_FORMAT21t_in_insn_format21t2532);
5286 			match(input, Token.DOWN, null);
5287 			INSTRUCTION_FORMAT21t143=(CommonTree)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t2534);
5288 			REGISTER144=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21t2536);
5289 			pushFollow(FOLLOW_label_ref_in_insn_format21t2538);
5290 			label_ref145=label_ref();
5291 			state._fsp--;
5292 
5293 			match(input, Token.UP, null);
5294 
5295 
5296 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21t143!=null?INSTRUCTION_FORMAT21t143.getText():null));
5297 			      short regA = parseRegister_byte((REGISTER144!=null?REGISTER144.getText():null));
5298 
5299 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21t(opcode, regA, label_ref145));
5300 
5301 			}
5302 
5303 		}
5304 		catch (RecognitionException re) {
5305 			reportError(re);
5306 			recover(input,re);
5307 		}
5308 		finally {
5309 			// do for sure before leaving
5310 		}
5311 	}
5312 	// $ANTLR end "insn_format21t"
5313 
5314 
5315 
5316 	// $ANTLR start "insn_format22b"
5317 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:954:1: insn_format22b : ^( I_STATEMENT_FORMAT22b INSTRUCTION_FORMAT22b registerA= REGISTER registerB= REGISTER short_integral_literal ) ;
insn_format22b()5318 	public final void insn_format22b() throws RecognitionException {
5319 		CommonTree registerA=null;
5320 		CommonTree registerB=null;
5321 		CommonTree INSTRUCTION_FORMAT22b146=null;
5322 		short short_integral_literal147 =0;
5323 
5324 		try {
5325 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:955:3: ( ^( I_STATEMENT_FORMAT22b INSTRUCTION_FORMAT22b registerA= REGISTER registerB= REGISTER short_integral_literal ) )
5326 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:956:5: ^( I_STATEMENT_FORMAT22b INSTRUCTION_FORMAT22b registerA= REGISTER registerB= REGISTER short_integral_literal )
5327 			{
5328 			match(input,I_STATEMENT_FORMAT22b,FOLLOW_I_STATEMENT_FORMAT22b_in_insn_format22b2561);
5329 			match(input, Token.DOWN, null);
5330 			INSTRUCTION_FORMAT22b146=(CommonTree)match(input,INSTRUCTION_FORMAT22b,FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b2563);
5331 			registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b2567);
5332 			registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22b2571);
5333 			pushFollow(FOLLOW_short_integral_literal_in_insn_format22b2573);
5334 			short_integral_literal147=short_integral_literal();
5335 			state._fsp--;
5336 
5337 			match(input, Token.UP, null);
5338 
5339 
5340 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22b146!=null?INSTRUCTION_FORMAT22b146.getText():null));
5341 			      short regA = parseRegister_byte((registerA!=null?registerA.getText():null));
5342 			      short regB = parseRegister_byte((registerB!=null?registerB.getText():null));
5343 
5344 			      short litC = short_integral_literal147;
5345 			      LiteralTools.checkByte(litC);
5346 
5347 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22b(opcode, regA, regB, litC));
5348 
5349 			}
5350 
5351 		}
5352 		catch (RecognitionException re) {
5353 			reportError(re);
5354 			recover(input,re);
5355 		}
5356 		finally {
5357 			// do for sure before leaving
5358 		}
5359 	}
5360 	// $ANTLR end "insn_format22b"
5361 
5362 
5363 
5364 	// $ANTLR start "insn_format22c_field"
5365 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:968:1: insn_format22c_field : ^( I_STATEMENT_FORMAT22c_FIELD inst= ( INSTRUCTION_FORMAT22c_FIELD | INSTRUCTION_FORMAT22c_FIELD_ODEX ) registerA= REGISTER registerB= REGISTER field_reference ) ;
insn_format22c_field()5366 	public final void insn_format22c_field() throws RecognitionException {
5367 		CommonTree inst=null;
5368 		CommonTree registerA=null;
5369 		CommonTree registerB=null;
5370 		ImmutableFieldReference field_reference148 =null;
5371 
5372 		try {
5373 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:969:3: ( ^( I_STATEMENT_FORMAT22c_FIELD inst= ( INSTRUCTION_FORMAT22c_FIELD | INSTRUCTION_FORMAT22c_FIELD_ODEX ) registerA= REGISTER registerB= REGISTER field_reference ) )
5374 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:970:5: ^( I_STATEMENT_FORMAT22c_FIELD inst= ( INSTRUCTION_FORMAT22c_FIELD | INSTRUCTION_FORMAT22c_FIELD_ODEX ) registerA= REGISTER registerB= REGISTER field_reference )
5375 			{
5376 			match(input,I_STATEMENT_FORMAT22c_FIELD,FOLLOW_I_STATEMENT_FORMAT22c_FIELD_in_insn_format22c_field2596);
5377 			match(input, Token.DOWN, null);
5378 			inst=(CommonTree)input.LT(1);
5379 			if ( (input.LA(1) >= INSTRUCTION_FORMAT22c_FIELD && input.LA(1) <= INSTRUCTION_FORMAT22c_FIELD_ODEX) ) {
5380 				input.consume();
5381 				state.errorRecovery=false;
5382 			}
5383 			else {
5384 				MismatchedSetException mse = new MismatchedSetException(null,input);
5385 				throw mse;
5386 			}
5387 			registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field2610);
5388 			registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_field2614);
5389 			pushFollow(FOLLOW_field_reference_in_insn_format22c_field2616);
5390 			field_reference148=field_reference();
5391 			state._fsp--;
5392 
5393 			match(input, Token.UP, null);
5394 
5395 
5396 			      Opcode opcode = opcodes.getOpcodeByName((inst!=null?inst.getText():null));
5397 			      byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null));
5398 			      byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null));
5399 
5400 			      ImmutableFieldReference fieldReference = field_reference148;
5401 
5402 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB,
5403 			              dexBuilder.internFieldReference(fieldReference)));
5404 
5405 			}
5406 
5407 		}
5408 		catch (RecognitionException re) {
5409 			reportError(re);
5410 			recover(input,re);
5411 		}
5412 		finally {
5413 			// do for sure before leaving
5414 		}
5415 	}
5416 	// $ANTLR end "insn_format22c_field"
5417 
5418 
5419 
5420 	// $ANTLR start "insn_format22c_type"
5421 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:982:1: insn_format22c_type : ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) ;
insn_format22c_type()5422 	public final void insn_format22c_type() throws RecognitionException {
5423 		CommonTree registerA=null;
5424 		CommonTree registerB=null;
5425 		CommonTree INSTRUCTION_FORMAT22c_TYPE149=null;
5426 		TreeRuleReturnScope nonvoid_type_descriptor150 =null;
5427 
5428 		try {
5429 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:983:3: ( ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) )
5430 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:984:5: ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor )
5431 			{
5432 			match(input,I_STATEMENT_FORMAT22c_TYPE,FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2639);
5433 			match(input, Token.DOWN, null);
5434 			INSTRUCTION_FORMAT22c_TYPE149=(CommonTree)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type2641);
5435 			registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2645);
5436 			registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2649);
5437 			pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type2651);
5438 			nonvoid_type_descriptor150=nonvoid_type_descriptor();
5439 			state._fsp--;
5440 
5441 			match(input, Token.UP, null);
5442 
5443 
5444 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_TYPE149!=null?INSTRUCTION_FORMAT22c_TYPE149.getText():null));
5445 			      byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null));
5446 			      byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null));
5447 
5448 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB,
5449 			              dexBuilder.internTypeReference((nonvoid_type_descriptor150!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor150).type:null))));
5450 
5451 			}
5452 
5453 		}
5454 		catch (RecognitionException re) {
5455 			reportError(re);
5456 			recover(input,re);
5457 		}
5458 		finally {
5459 			// do for sure before leaving
5460 		}
5461 	}
5462 	// $ANTLR end "insn_format22c_type"
5463 
5464 
5465 
5466 	// $ANTLR start "insn_format22c_string"
5467 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:994:1: insn_format22c_string : ^( I_STATEMENT_FORMAT22c_STRING INSTRUCTION_FORMAT22c_STRING registerA= REGISTER registerB= REGISTER string_literal ) ;
insn_format22c_string()5468 	public final void insn_format22c_string() throws RecognitionException {
5469 		CommonTree registerA=null;
5470 		CommonTree registerB=null;
5471 		CommonTree INSTRUCTION_FORMAT22c_STRING151=null;
5472 		String string_literal152 =null;
5473 
5474 		try {
5475 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:995:3: ( ^( I_STATEMENT_FORMAT22c_STRING INSTRUCTION_FORMAT22c_STRING registerA= REGISTER registerB= REGISTER string_literal ) )
5476 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:996:5: ^( I_STATEMENT_FORMAT22c_STRING INSTRUCTION_FORMAT22c_STRING registerA= REGISTER registerB= REGISTER string_literal )
5477 			{
5478 			match(input,I_STATEMENT_FORMAT22c_STRING,FOLLOW_I_STATEMENT_FORMAT22c_STRING_in_insn_format22c_string2674);
5479 			match(input, Token.DOWN, null);
5480 			INSTRUCTION_FORMAT22c_STRING151=(CommonTree)match(input,INSTRUCTION_FORMAT22c_STRING,FOLLOW_INSTRUCTION_FORMAT22c_STRING_in_insn_format22c_string2676);
5481 			registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_string2680);
5482 			registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_string2684);
5483 			pushFollow(FOLLOW_string_literal_in_insn_format22c_string2686);
5484 			string_literal152=string_literal();
5485 			state._fsp--;
5486 
5487 			match(input, Token.UP, null);
5488 
5489 
5490 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_STRING151!=null?INSTRUCTION_FORMAT22c_STRING151.getText():null));
5491 			      byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null));
5492 			      byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null));
5493 
5494 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB,
5495 			              dexBuilder.internStringReference(string_literal152)));
5496 
5497 			}
5498 
5499 		}
5500 		catch (RecognitionException re) {
5501 			reportError(re);
5502 			recover(input,re);
5503 		}
5504 		finally {
5505 			// do for sure before leaving
5506 		}
5507 	}
5508 	// $ANTLR end "insn_format22c_string"
5509 
5510 
5511 
5512 	// $ANTLR start "insn_format22s"
5513 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1006:1: insn_format22s : ^( I_STATEMENT_FORMAT22s INSTRUCTION_FORMAT22s registerA= REGISTER registerB= REGISTER short_integral_literal ) ;
insn_format22s()5514 	public final void insn_format22s() throws RecognitionException {
5515 		CommonTree registerA=null;
5516 		CommonTree registerB=null;
5517 		CommonTree INSTRUCTION_FORMAT22s153=null;
5518 		short short_integral_literal154 =0;
5519 
5520 		try {
5521 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1007:3: ( ^( I_STATEMENT_FORMAT22s INSTRUCTION_FORMAT22s registerA= REGISTER registerB= REGISTER short_integral_literal ) )
5522 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1008:5: ^( I_STATEMENT_FORMAT22s INSTRUCTION_FORMAT22s registerA= REGISTER registerB= REGISTER short_integral_literal )
5523 			{
5524 			match(input,I_STATEMENT_FORMAT22s,FOLLOW_I_STATEMENT_FORMAT22s_in_insn_format22s2709);
5525 			match(input, Token.DOWN, null);
5526 			INSTRUCTION_FORMAT22s153=(CommonTree)match(input,INSTRUCTION_FORMAT22s,FOLLOW_INSTRUCTION_FORMAT22s_in_insn_format22s2711);
5527 			registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s2715);
5528 			registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22s2719);
5529 			pushFollow(FOLLOW_short_integral_literal_in_insn_format22s2721);
5530 			short_integral_literal154=short_integral_literal();
5531 			state._fsp--;
5532 
5533 			match(input, Token.UP, null);
5534 
5535 
5536 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22s153!=null?INSTRUCTION_FORMAT22s153.getText():null));
5537 			      byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null));
5538 			      byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null));
5539 
5540 			      short litC = short_integral_literal154;
5541 
5542 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22s(opcode, regA, regB, litC));
5543 
5544 			}
5545 
5546 		}
5547 		catch (RecognitionException re) {
5548 			reportError(re);
5549 			recover(input,re);
5550 		}
5551 		finally {
5552 			// do for sure before leaving
5553 		}
5554 	}
5555 	// $ANTLR end "insn_format22s"
5556 
5557 
5558 
5559 	// $ANTLR start "insn_format22t"
5560 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1019:1: insn_format22t : ^( I_STATEMENT_FORMAT22t INSTRUCTION_FORMAT22t registerA= REGISTER registerB= REGISTER label_ref ) ;
insn_format22t()5561 	public final void insn_format22t() throws RecognitionException {
5562 		CommonTree registerA=null;
5563 		CommonTree registerB=null;
5564 		CommonTree INSTRUCTION_FORMAT22t155=null;
5565 		Label label_ref156 =null;
5566 
5567 		try {
5568 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1020:3: ( ^( I_STATEMENT_FORMAT22t INSTRUCTION_FORMAT22t registerA= REGISTER registerB= REGISTER label_ref ) )
5569 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1021:5: ^( I_STATEMENT_FORMAT22t INSTRUCTION_FORMAT22t registerA= REGISTER registerB= REGISTER label_ref )
5570 			{
5571 			match(input,I_STATEMENT_FORMAT22t,FOLLOW_I_STATEMENT_FORMAT22t_in_insn_format22t2744);
5572 			match(input, Token.DOWN, null);
5573 			INSTRUCTION_FORMAT22t155=(CommonTree)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t2746);
5574 			registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t2750);
5575 			registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22t2754);
5576 			pushFollow(FOLLOW_label_ref_in_insn_format22t2756);
5577 			label_ref156=label_ref();
5578 			state._fsp--;
5579 
5580 			match(input, Token.UP, null);
5581 
5582 
5583 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22t155!=null?INSTRUCTION_FORMAT22t155.getText():null));
5584 			      byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null));
5585 			      byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null));
5586 
5587 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22t(opcode, regA, regB, label_ref156));
5588 
5589 			}
5590 
5591 		}
5592 		catch (RecognitionException re) {
5593 			reportError(re);
5594 			recover(input,re);
5595 		}
5596 		finally {
5597 			// do for sure before leaving
5598 		}
5599 	}
5600 	// $ANTLR end "insn_format22t"
5601 
5602 
5603 
5604 	// $ANTLR start "insn_format22x"
5605 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1030:1: insn_format22x : ^( I_STATEMENT_FORMAT22x INSTRUCTION_FORMAT22x registerA= REGISTER registerB= REGISTER ) ;
insn_format22x()5606 	public final void insn_format22x() throws RecognitionException {
5607 		CommonTree registerA=null;
5608 		CommonTree registerB=null;
5609 		CommonTree INSTRUCTION_FORMAT22x157=null;
5610 
5611 		try {
5612 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1031:3: ( ^( I_STATEMENT_FORMAT22x INSTRUCTION_FORMAT22x registerA= REGISTER registerB= REGISTER ) )
5613 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1032:5: ^( I_STATEMENT_FORMAT22x INSTRUCTION_FORMAT22x registerA= REGISTER registerB= REGISTER )
5614 			{
5615 			match(input,I_STATEMENT_FORMAT22x,FOLLOW_I_STATEMENT_FORMAT22x_in_insn_format22x2779);
5616 			match(input, Token.DOWN, null);
5617 			INSTRUCTION_FORMAT22x157=(CommonTree)match(input,INSTRUCTION_FORMAT22x,FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x2781);
5618 			registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x2785);
5619 			registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22x2789);
5620 			match(input, Token.UP, null);
5621 
5622 
5623 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22x157!=null?INSTRUCTION_FORMAT22x157.getText():null));
5624 			      short regA = parseRegister_byte((registerA!=null?registerA.getText():null));
5625 			      int regB = parseRegister_short((registerB!=null?registerB.getText():null));
5626 
5627 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22x(opcode, regA, regB));
5628 
5629 			}
5630 
5631 		}
5632 		catch (RecognitionException re) {
5633 			reportError(re);
5634 			recover(input,re);
5635 		}
5636 		finally {
5637 			// do for sure before leaving
5638 		}
5639 	}
5640 	// $ANTLR end "insn_format22x"
5641 
5642 
5643 
5644 	// $ANTLR start "insn_format23x"
5645 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1041:1: insn_format23x : ^( I_STATEMENT_FORMAT23x INSTRUCTION_FORMAT23x registerA= REGISTER registerB= REGISTER registerC= REGISTER ) ;
insn_format23x()5646 	public final void insn_format23x() throws RecognitionException {
5647 		CommonTree registerA=null;
5648 		CommonTree registerB=null;
5649 		CommonTree registerC=null;
5650 		CommonTree INSTRUCTION_FORMAT23x158=null;
5651 
5652 		try {
5653 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1042:3: ( ^( I_STATEMENT_FORMAT23x INSTRUCTION_FORMAT23x registerA= REGISTER registerB= REGISTER registerC= REGISTER ) )
5654 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1043:5: ^( I_STATEMENT_FORMAT23x INSTRUCTION_FORMAT23x registerA= REGISTER registerB= REGISTER registerC= REGISTER )
5655 			{
5656 			match(input,I_STATEMENT_FORMAT23x,FOLLOW_I_STATEMENT_FORMAT23x_in_insn_format23x2812);
5657 			match(input, Token.DOWN, null);
5658 			INSTRUCTION_FORMAT23x158=(CommonTree)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x2814);
5659 			registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2818);
5660 			registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2822);
5661 			registerC=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format23x2826);
5662 			match(input, Token.UP, null);
5663 
5664 
5665 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT23x158!=null?INSTRUCTION_FORMAT23x158.getText():null));
5666 			      short regA = parseRegister_byte((registerA!=null?registerA.getText():null));
5667 			      short regB = parseRegister_byte((registerB!=null?registerB.getText():null));
5668 			      short regC = parseRegister_byte((registerC!=null?registerC.getText():null));
5669 
5670 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction23x(opcode, regA, regB, regC));
5671 
5672 			}
5673 
5674 		}
5675 		catch (RecognitionException re) {
5676 			reportError(re);
5677 			recover(input,re);
5678 		}
5679 		finally {
5680 			// do for sure before leaving
5681 		}
5682 	}
5683 	// $ANTLR end "insn_format23x"
5684 
5685 
5686 
5687 	// $ANTLR start "insn_format25x"
5688 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1053:1: insn_format25x : ^( I_STATEMENT_FORMAT25x INSTRUCTION_FORMAT25x REGISTER register_list4 ) ;
insn_format25x()5689 	public final void insn_format25x() throws RecognitionException {
5690 		CommonTree INSTRUCTION_FORMAT25x159=null;
5691 		CommonTree REGISTER160=null;
5692 		TreeRuleReturnScope register_list4161 =null;
5693 
5694 		try {
5695 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1054:3: ( ^( I_STATEMENT_FORMAT25x INSTRUCTION_FORMAT25x REGISTER register_list4 ) )
5696 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1055:5: ^( I_STATEMENT_FORMAT25x INSTRUCTION_FORMAT25x REGISTER register_list4 )
5697 			{
5698 			match(input,I_STATEMENT_FORMAT25x,FOLLOW_I_STATEMENT_FORMAT25x_in_insn_format25x2849);
5699 			match(input, Token.DOWN, null);
5700 			INSTRUCTION_FORMAT25x159=(CommonTree)match(input,INSTRUCTION_FORMAT25x,FOLLOW_INSTRUCTION_FORMAT25x_in_insn_format25x2851);
5701 			REGISTER160=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format25x2853);
5702 			pushFollow(FOLLOW_register_list4_in_insn_format25x2855);
5703 			register_list4161=register_list4();
5704 			state._fsp--;
5705 
5706 			match(input, Token.UP, null);
5707 
5708 
5709 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT25x159!=null?INSTRUCTION_FORMAT25x159.getText():null));
5710 
5711 			      byte closureRegister = parseRegister_nibble((REGISTER160!=null?REGISTER160.getText():null));
5712 
5713 			      //this depends on the fact that register_list4 returns a byte[4]
5714 			      byte[] registers = (register_list4161!=null?((smaliTreeWalker.register_list4_return)register_list4161).registers:null);
5715 			      int parameterRegisterCount = (register_list4161!=null?((smaliTreeWalker.register_list4_return)register_list4161).registerCount:0);  // don't count closure register
5716 
5717 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction25x(opcode,
5718 			            parameterRegisterCount, closureRegister, registers[0], registers[1],
5719 			            registers[2], registers[3]));
5720 
5721 			}
5722 
5723 		}
5724 		catch (RecognitionException re) {
5725 			reportError(re);
5726 			recover(input,re);
5727 		}
5728 		finally {
5729 			// do for sure before leaving
5730 		}
5731 	}
5732 	// $ANTLR end "insn_format25x"
5733 
5734 
5735 
5736 	// $ANTLR start "insn_format30t"
5737 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1070:1: insn_format30t : ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref ) ;
insn_format30t()5738 	public final void insn_format30t() throws RecognitionException {
5739 		CommonTree INSTRUCTION_FORMAT30t162=null;
5740 		Label label_ref163 =null;
5741 
5742 		try {
5743 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1071:3: ( ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref ) )
5744 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1072:5: ^( I_STATEMENT_FORMAT30t INSTRUCTION_FORMAT30t label_ref )
5745 			{
5746 			match(input,I_STATEMENT_FORMAT30t,FOLLOW_I_STATEMENT_FORMAT30t_in_insn_format30t2878);
5747 			match(input, Token.DOWN, null);
5748 			INSTRUCTION_FORMAT30t162=(CommonTree)match(input,INSTRUCTION_FORMAT30t,FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t2880);
5749 			pushFollow(FOLLOW_label_ref_in_insn_format30t2882);
5750 			label_ref163=label_ref();
5751 			state._fsp--;
5752 
5753 			match(input, Token.UP, null);
5754 
5755 
5756 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT30t162!=null?INSTRUCTION_FORMAT30t162.getText():null));
5757 
5758 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction30t(opcode, label_ref163));
5759 
5760 			}
5761 
5762 		}
5763 		catch (RecognitionException re) {
5764 			reportError(re);
5765 			recover(input,re);
5766 		}
5767 		finally {
5768 			// do for sure before leaving
5769 		}
5770 	}
5771 	// $ANTLR end "insn_format30t"
5772 
5773 
5774 
5775 	// $ANTLR start "insn_format31c"
5776 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1079:1: insn_format31c : ^( I_STATEMENT_FORMAT31c INSTRUCTION_FORMAT31c REGISTER string_literal ) ;
insn_format31c()5777 	public final void insn_format31c() throws RecognitionException {
5778 		CommonTree INSTRUCTION_FORMAT31c164=null;
5779 		CommonTree REGISTER165=null;
5780 		String string_literal166 =null;
5781 
5782 		try {
5783 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1080:3: ( ^( I_STATEMENT_FORMAT31c INSTRUCTION_FORMAT31c REGISTER string_literal ) )
5784 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1081:5: ^( I_STATEMENT_FORMAT31c INSTRUCTION_FORMAT31c REGISTER string_literal )
5785 			{
5786 			match(input,I_STATEMENT_FORMAT31c,FOLLOW_I_STATEMENT_FORMAT31c_in_insn_format31c2905);
5787 			match(input, Token.DOWN, null);
5788 			INSTRUCTION_FORMAT31c164=(CommonTree)match(input,INSTRUCTION_FORMAT31c,FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c2907);
5789 			REGISTER165=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31c2909);
5790 			pushFollow(FOLLOW_string_literal_in_insn_format31c2911);
5791 			string_literal166=string_literal();
5792 			state._fsp--;
5793 
5794 			match(input, Token.UP, null);
5795 
5796 
5797 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31c164!=null?INSTRUCTION_FORMAT31c164.getText():null));
5798 			      short regA = parseRegister_byte((REGISTER165!=null?REGISTER165.getText():null));
5799 
5800 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction31c(opcode, regA,
5801 			              dexBuilder.internStringReference(string_literal166)));
5802 
5803 			}
5804 
5805 		}
5806 		catch (RecognitionException re) {
5807 			reportError(re);
5808 			recover(input,re);
5809 		}
5810 		finally {
5811 			// do for sure before leaving
5812 		}
5813 	}
5814 	// $ANTLR end "insn_format31c"
5815 
5816 
5817 
5818 	// $ANTLR start "insn_format31i"
5819 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1090:1: insn_format31i : ^( I_STATEMENT_FORMAT31i INSTRUCTION_FORMAT31i REGISTER fixed_32bit_literal ) ;
insn_format31i()5820 	public final void insn_format31i() throws RecognitionException {
5821 		CommonTree INSTRUCTION_FORMAT31i167=null;
5822 		CommonTree REGISTER168=null;
5823 		int fixed_32bit_literal169 =0;
5824 
5825 		try {
5826 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1091:3: ( ^( I_STATEMENT_FORMAT31i INSTRUCTION_FORMAT31i REGISTER fixed_32bit_literal ) )
5827 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1092:5: ^( I_STATEMENT_FORMAT31i INSTRUCTION_FORMAT31i REGISTER fixed_32bit_literal )
5828 			{
5829 			match(input,I_STATEMENT_FORMAT31i,FOLLOW_I_STATEMENT_FORMAT31i_in_insn_format31i2934);
5830 			match(input, Token.DOWN, null);
5831 			INSTRUCTION_FORMAT31i167=(CommonTree)match(input,INSTRUCTION_FORMAT31i,FOLLOW_INSTRUCTION_FORMAT31i_in_insn_format31i2936);
5832 			REGISTER168=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31i2938);
5833 			pushFollow(FOLLOW_fixed_32bit_literal_in_insn_format31i2940);
5834 			fixed_32bit_literal169=fixed_32bit_literal();
5835 			state._fsp--;
5836 
5837 			match(input, Token.UP, null);
5838 
5839 
5840 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31i167!=null?INSTRUCTION_FORMAT31i167.getText():null));
5841 			      short regA = parseRegister_byte((REGISTER168!=null?REGISTER168.getText():null));
5842 
5843 			      int litB = fixed_32bit_literal169;
5844 
5845 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction31i(opcode, regA, litB));
5846 
5847 			}
5848 
5849 		}
5850 		catch (RecognitionException re) {
5851 			reportError(re);
5852 			recover(input,re);
5853 		}
5854 		finally {
5855 			// do for sure before leaving
5856 		}
5857 	}
5858 	// $ANTLR end "insn_format31i"
5859 
5860 
5861 
5862 	// $ANTLR start "insn_format31t"
5863 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1102:1: insn_format31t : ^( I_STATEMENT_FORMAT31t INSTRUCTION_FORMAT31t REGISTER label_ref ) ;
insn_format31t()5864 	public final void insn_format31t() throws RecognitionException {
5865 		CommonTree INSTRUCTION_FORMAT31t170=null;
5866 		CommonTree REGISTER171=null;
5867 		Label label_ref172 =null;
5868 
5869 		try {
5870 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1103:3: ( ^( I_STATEMENT_FORMAT31t INSTRUCTION_FORMAT31t REGISTER label_ref ) )
5871 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1104:5: ^( I_STATEMENT_FORMAT31t INSTRUCTION_FORMAT31t REGISTER label_ref )
5872 			{
5873 			match(input,I_STATEMENT_FORMAT31t,FOLLOW_I_STATEMENT_FORMAT31t_in_insn_format31t2963);
5874 			match(input, Token.DOWN, null);
5875 			INSTRUCTION_FORMAT31t170=(CommonTree)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t2965);
5876 			REGISTER171=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format31t2967);
5877 			pushFollow(FOLLOW_label_ref_in_insn_format31t2969);
5878 			label_ref172=label_ref();
5879 			state._fsp--;
5880 
5881 			match(input, Token.UP, null);
5882 
5883 
5884 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT31t170!=null?INSTRUCTION_FORMAT31t170.getText():null));
5885 
5886 			      short regA = parseRegister_byte((REGISTER171!=null?REGISTER171.getText():null));
5887 
5888 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction31t(opcode, regA, label_ref172));
5889 
5890 			}
5891 
5892 		}
5893 		catch (RecognitionException re) {
5894 			reportError(re);
5895 			recover(input,re);
5896 		}
5897 		finally {
5898 			// do for sure before leaving
5899 		}
5900 	}
5901 	// $ANTLR end "insn_format31t"
5902 
5903 
5904 
5905 	// $ANTLR start "insn_format32x"
5906 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1113:1: insn_format32x : ^( I_STATEMENT_FORMAT32x INSTRUCTION_FORMAT32x registerA= REGISTER registerB= REGISTER ) ;
insn_format32x()5907 	public final void insn_format32x() throws RecognitionException {
5908 		CommonTree registerA=null;
5909 		CommonTree registerB=null;
5910 		CommonTree INSTRUCTION_FORMAT32x173=null;
5911 
5912 		try {
5913 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1114:3: ( ^( I_STATEMENT_FORMAT32x INSTRUCTION_FORMAT32x registerA= REGISTER registerB= REGISTER ) )
5914 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1115:5: ^( I_STATEMENT_FORMAT32x INSTRUCTION_FORMAT32x registerA= REGISTER registerB= REGISTER )
5915 			{
5916 			match(input,I_STATEMENT_FORMAT32x,FOLLOW_I_STATEMENT_FORMAT32x_in_insn_format32x2992);
5917 			match(input, Token.DOWN, null);
5918 			INSTRUCTION_FORMAT32x173=(CommonTree)match(input,INSTRUCTION_FORMAT32x,FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x2994);
5919 			registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x2998);
5920 			registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format32x3002);
5921 			match(input, Token.UP, null);
5922 
5923 
5924 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT32x173!=null?INSTRUCTION_FORMAT32x173.getText():null));
5925 			      int regA = parseRegister_short((registerA!=null?registerA.getText():null));
5926 			      int regB = parseRegister_short((registerB!=null?registerB.getText():null));
5927 
5928 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction32x(opcode, regA, regB));
5929 
5930 			}
5931 
5932 		}
5933 		catch (RecognitionException re) {
5934 			reportError(re);
5935 			recover(input,re);
5936 		}
5937 		finally {
5938 			// do for sure before leaving
5939 		}
5940 	}
5941 	// $ANTLR end "insn_format32x"
5942 
5943 
5944 
5945 	// $ANTLR start "insn_format35c_method"
5946 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1124:1: insn_format35c_method : ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) ;
insn_format35c_method()5947 	public final void insn_format35c_method() throws RecognitionException {
5948 		CommonTree INSTRUCTION_FORMAT35c_METHOD174=null;
5949 		TreeRuleReturnScope register_list175 =null;
5950 		ImmutableMethodReference method_reference176 =null;
5951 
5952 		try {
5953 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1125:3: ( ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) )
5954 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1126:5: ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list method_reference )
5955 			{
5956 			match(input,I_STATEMENT_FORMAT35c_METHOD,FOLLOW_I_STATEMENT_FORMAT35c_METHOD_in_insn_format35c_method3025);
5957 			match(input, Token.DOWN, null);
5958 			INSTRUCTION_FORMAT35c_METHOD174=(CommonTree)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method3027);
5959 			pushFollow(FOLLOW_register_list_in_insn_format35c_method3029);
5960 			register_list175=register_list();
5961 			state._fsp--;
5962 
5963 			pushFollow(FOLLOW_method_reference_in_insn_format35c_method3031);
5964 			method_reference176=method_reference();
5965 			state._fsp--;
5966 
5967 			match(input, Token.UP, null);
5968 
5969 
5970 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_METHOD174!=null?INSTRUCTION_FORMAT35c_METHOD174.getText():null));
5971 
5972 			      //this depends on the fact that register_list returns a byte[5]
5973 			      byte[] registers = (register_list175!=null?((smaliTreeWalker.register_list_return)register_list175).registers:null);
5974 			      byte registerCount = (register_list175!=null?((smaliTreeWalker.register_list_return)register_list175).registerCount:0);
5975 
5976 			      ImmutableMethodReference methodReference = method_reference176;
5977 
5978 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction35c(opcode, registerCount, registers[0], registers[1],
5979 			              registers[2], registers[3], registers[4], dexBuilder.internMethodReference(methodReference)));
5980 
5981 			}
5982 
5983 		}
5984 		catch (RecognitionException re) {
5985 			reportError(re);
5986 			recover(input,re);
5987 		}
5988 		finally {
5989 			// do for sure before leaving
5990 		}
5991 	}
5992 	// $ANTLR end "insn_format35c_method"
5993 
5994 
5995 
5996 	// $ANTLR start "insn_format35c_type"
5997 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1140:1: insn_format35c_type : ^( I_STATEMENT_FORMAT35c_TYPE INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) ;
insn_format35c_type()5998 	public final void insn_format35c_type() throws RecognitionException {
5999 		CommonTree INSTRUCTION_FORMAT35c_TYPE177=null;
6000 		TreeRuleReturnScope register_list178 =null;
6001 		TreeRuleReturnScope nonvoid_type_descriptor179 =null;
6002 
6003 		try {
6004 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1141:3: ( ^( I_STATEMENT_FORMAT35c_TYPE INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) )
6005 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1142:5: ^( I_STATEMENT_FORMAT35c_TYPE INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor )
6006 			{
6007 			match(input,I_STATEMENT_FORMAT35c_TYPE,FOLLOW_I_STATEMENT_FORMAT35c_TYPE_in_insn_format35c_type3054);
6008 			match(input, Token.DOWN, null);
6009 			INSTRUCTION_FORMAT35c_TYPE177=(CommonTree)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type3056);
6010 			pushFollow(FOLLOW_register_list_in_insn_format35c_type3058);
6011 			register_list178=register_list();
6012 			state._fsp--;
6013 
6014 			pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type3060);
6015 			nonvoid_type_descriptor179=nonvoid_type_descriptor();
6016 			state._fsp--;
6017 
6018 			match(input, Token.UP, null);
6019 
6020 
6021 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_TYPE177!=null?INSTRUCTION_FORMAT35c_TYPE177.getText():null));
6022 
6023 			      //this depends on the fact that register_list returns a byte[5]
6024 			      byte[] registers = (register_list178!=null?((smaliTreeWalker.register_list_return)register_list178).registers:null);
6025 			      byte registerCount = (register_list178!=null?((smaliTreeWalker.register_list_return)register_list178).registerCount:0);
6026 
6027 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction35c(opcode, registerCount, registers[0], registers[1],
6028 			              registers[2], registers[3], registers[4], dexBuilder.internTypeReference((nonvoid_type_descriptor179!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor179).type:null))));
6029 
6030 			}
6031 
6032 		}
6033 		catch (RecognitionException re) {
6034 			reportError(re);
6035 			recover(input,re);
6036 		}
6037 		finally {
6038 			// do for sure before leaving
6039 		}
6040 	}
6041 	// $ANTLR end "insn_format35c_type"
6042 
6043 
6044 
6045 	// $ANTLR start "insn_format3rc_method"
6046 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1154:1: insn_format3rc_method : ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) ;
insn_format3rc_method()6047 	public final void insn_format3rc_method() throws RecognitionException {
6048 		CommonTree INSTRUCTION_FORMAT3rc_METHOD180=null;
6049 		TreeRuleReturnScope register_range181 =null;
6050 		ImmutableMethodReference method_reference182 =null;
6051 
6052 		try {
6053 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1155:3: ( ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) )
6054 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1156:5: ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range method_reference )
6055 			{
6056 			match(input,I_STATEMENT_FORMAT3rc_METHOD,FOLLOW_I_STATEMENT_FORMAT3rc_METHOD_in_insn_format3rc_method3083);
6057 			match(input, Token.DOWN, null);
6058 			INSTRUCTION_FORMAT3rc_METHOD180=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_METHOD,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method3085);
6059 			pushFollow(FOLLOW_register_range_in_insn_format3rc_method3087);
6060 			register_range181=register_range();
6061 			state._fsp--;
6062 
6063 			pushFollow(FOLLOW_method_reference_in_insn_format3rc_method3089);
6064 			method_reference182=method_reference();
6065 			state._fsp--;
6066 
6067 			match(input, Token.UP, null);
6068 
6069 
6070 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_METHOD180!=null?INSTRUCTION_FORMAT3rc_METHOD180.getText():null));
6071 			      int startRegister = (register_range181!=null?((smaliTreeWalker.register_range_return)register_range181).startRegister:0);
6072 			      int endRegister = (register_range181!=null?((smaliTreeWalker.register_range_return)register_range181).endRegister:0);
6073 
6074 			      int registerCount = endRegister-startRegister+1;
6075 
6076 			      ImmutableMethodReference methodReference = method_reference182;
6077 
6078 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction3rc(opcode, startRegister, registerCount,
6079 			              dexBuilder.internMethodReference(methodReference)));
6080 
6081 			}
6082 
6083 		}
6084 		catch (RecognitionException re) {
6085 			reportError(re);
6086 			recover(input,re);
6087 		}
6088 		finally {
6089 			// do for sure before leaving
6090 		}
6091 	}
6092 	// $ANTLR end "insn_format3rc_method"
6093 
6094 
6095 
6096 	// $ANTLR start "insn_format3rc_type"
6097 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1170:1: insn_format3rc_type : ^( I_STATEMENT_FORMAT3rc_TYPE INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) ;
insn_format3rc_type()6098 	public final void insn_format3rc_type() throws RecognitionException {
6099 		CommonTree INSTRUCTION_FORMAT3rc_TYPE183=null;
6100 		TreeRuleReturnScope register_range184 =null;
6101 		TreeRuleReturnScope nonvoid_type_descriptor185 =null;
6102 
6103 		try {
6104 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1171:3: ( ^( I_STATEMENT_FORMAT3rc_TYPE INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) )
6105 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1172:5: ^( I_STATEMENT_FORMAT3rc_TYPE INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor )
6106 			{
6107 			match(input,I_STATEMENT_FORMAT3rc_TYPE,FOLLOW_I_STATEMENT_FORMAT3rc_TYPE_in_insn_format3rc_type3112);
6108 			match(input, Token.DOWN, null);
6109 			INSTRUCTION_FORMAT3rc_TYPE183=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_TYPE,FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type3114);
6110 			pushFollow(FOLLOW_register_range_in_insn_format3rc_type3116);
6111 			register_range184=register_range();
6112 			state._fsp--;
6113 
6114 			pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type3118);
6115 			nonvoid_type_descriptor185=nonvoid_type_descriptor();
6116 			state._fsp--;
6117 
6118 			match(input, Token.UP, null);
6119 
6120 
6121 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_TYPE183!=null?INSTRUCTION_FORMAT3rc_TYPE183.getText():null));
6122 			      int startRegister = (register_range184!=null?((smaliTreeWalker.register_range_return)register_range184).startRegister:0);
6123 			      int endRegister = (register_range184!=null?((smaliTreeWalker.register_range_return)register_range184).endRegister:0);
6124 
6125 			      int registerCount = endRegister-startRegister+1;
6126 
6127 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction3rc(opcode, startRegister, registerCount,
6128 			              dexBuilder.internTypeReference((nonvoid_type_descriptor185!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor185).type:null))));
6129 
6130 			}
6131 
6132 		}
6133 		catch (RecognitionException re) {
6134 			reportError(re);
6135 			recover(input,re);
6136 		}
6137 		finally {
6138 			// do for sure before leaving
6139 		}
6140 	}
6141 	// $ANTLR end "insn_format3rc_type"
6142 
6143 
6144 
6145 	// $ANTLR start "insn_format51l_type"
6146 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1184:1: insn_format51l_type : ^( I_STATEMENT_FORMAT51l INSTRUCTION_FORMAT51l REGISTER fixed_64bit_literal ) ;
insn_format51l_type()6147 	public final void insn_format51l_type() throws RecognitionException {
6148 		CommonTree INSTRUCTION_FORMAT51l186=null;
6149 		CommonTree REGISTER187=null;
6150 		long fixed_64bit_literal188 =0;
6151 
6152 		try {
6153 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1185:3: ( ^( I_STATEMENT_FORMAT51l INSTRUCTION_FORMAT51l REGISTER fixed_64bit_literal ) )
6154 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1186:5: ^( I_STATEMENT_FORMAT51l INSTRUCTION_FORMAT51l REGISTER fixed_64bit_literal )
6155 			{
6156 			match(input,I_STATEMENT_FORMAT51l,FOLLOW_I_STATEMENT_FORMAT51l_in_insn_format51l_type3141);
6157 			match(input, Token.DOWN, null);
6158 			INSTRUCTION_FORMAT51l186=(CommonTree)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l_type3143);
6159 			REGISTER187=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format51l_type3145);
6160 			pushFollow(FOLLOW_fixed_64bit_literal_in_insn_format51l_type3147);
6161 			fixed_64bit_literal188=fixed_64bit_literal();
6162 			state._fsp--;
6163 
6164 			match(input, Token.UP, null);
6165 
6166 
6167 			      Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT51l186!=null?INSTRUCTION_FORMAT51l186.getText():null));
6168 			      short regA = parseRegister_byte((REGISTER187!=null?REGISTER187.getText():null));
6169 
6170 			      long litB = fixed_64bit_literal188;
6171 
6172 			      method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction51l(opcode, regA, litB));
6173 
6174 			}
6175 
6176 		}
6177 		catch (RecognitionException re) {
6178 			reportError(re);
6179 			recover(input,re);
6180 		}
6181 		finally {
6182 			// do for sure before leaving
6183 		}
6184 	}
6185 	// $ANTLR end "insn_format51l_type"
6186 
6187 
6188 
6189 	// $ANTLR start "insn_array_data_directive"
6190 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1196:1: insn_array_data_directive : ^( I_STATEMENT_ARRAY_DATA ^( I_ARRAY_ELEMENT_SIZE short_integral_literal ) array_elements ) ;
insn_array_data_directive()6191 	public final void insn_array_data_directive() throws RecognitionException {
6192 		short short_integral_literal189 =0;
6193 		List<Number> array_elements190 =null;
6194 
6195 		try {
6196 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1197:3: ( ^( I_STATEMENT_ARRAY_DATA ^( I_ARRAY_ELEMENT_SIZE short_integral_literal ) array_elements ) )
6197 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1198:5: ^( I_STATEMENT_ARRAY_DATA ^( I_ARRAY_ELEMENT_SIZE short_integral_literal ) array_elements )
6198 			{
6199 			match(input,I_STATEMENT_ARRAY_DATA,FOLLOW_I_STATEMENT_ARRAY_DATA_in_insn_array_data_directive3170);
6200 			match(input, Token.DOWN, null);
6201 			match(input,I_ARRAY_ELEMENT_SIZE,FOLLOW_I_ARRAY_ELEMENT_SIZE_in_insn_array_data_directive3173);
6202 			match(input, Token.DOWN, null);
6203 			pushFollow(FOLLOW_short_integral_literal_in_insn_array_data_directive3175);
6204 			short_integral_literal189=short_integral_literal();
6205 			state._fsp--;
6206 
6207 			match(input, Token.UP, null);
6208 
6209 			pushFollow(FOLLOW_array_elements_in_insn_array_data_directive3178);
6210 			array_elements190=array_elements();
6211 			state._fsp--;
6212 
6213 			match(input, Token.UP, null);
6214 
6215 
6216 			      int elementWidth = short_integral_literal189;
6217 			      List<Number> elements = array_elements190;
6218 
6219 			      method_stack.peek().methodBuilder.addInstruction(new BuilderArrayPayload(elementWidth, array_elements190));
6220 
6221 			}
6222 
6223 		}
6224 		catch (RecognitionException re) {
6225 			reportError(re);
6226 			recover(input,re);
6227 		}
6228 		finally {
6229 			// do for sure before leaving
6230 		}
6231 	}
6232 	// $ANTLR end "insn_array_data_directive"
6233 
6234 
6235 
6236 	// $ANTLR start "insn_packed_switch_directive"
6237 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1206:1: insn_packed_switch_directive : ^( I_STATEMENT_PACKED_SWITCH ^( I_PACKED_SWITCH_START_KEY fixed_32bit_literal ) packed_switch_elements ) ;
insn_packed_switch_directive()6238 	public final void insn_packed_switch_directive() throws RecognitionException {
6239 		int fixed_32bit_literal191 =0;
6240 		List<Label> packed_switch_elements192 =null;
6241 
6242 		try {
6243 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1207:3: ( ^( I_STATEMENT_PACKED_SWITCH ^( I_PACKED_SWITCH_START_KEY fixed_32bit_literal ) packed_switch_elements ) )
6244 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1208:5: ^( I_STATEMENT_PACKED_SWITCH ^( I_PACKED_SWITCH_START_KEY fixed_32bit_literal ) packed_switch_elements )
6245 			{
6246 			match(input,I_STATEMENT_PACKED_SWITCH,FOLLOW_I_STATEMENT_PACKED_SWITCH_in_insn_packed_switch_directive3200);
6247 			match(input, Token.DOWN, null);
6248 			match(input,I_PACKED_SWITCH_START_KEY,FOLLOW_I_PACKED_SWITCH_START_KEY_in_insn_packed_switch_directive3203);
6249 			match(input, Token.DOWN, null);
6250 			pushFollow(FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive3205);
6251 			fixed_32bit_literal191=fixed_32bit_literal();
6252 			state._fsp--;
6253 
6254 			match(input, Token.UP, null);
6255 
6256 			pushFollow(FOLLOW_packed_switch_elements_in_insn_packed_switch_directive3208);
6257 			packed_switch_elements192=packed_switch_elements();
6258 			state._fsp--;
6259 
6260 			match(input, Token.UP, null);
6261 
6262 
6263 			        int startKey = fixed_32bit_literal191;
6264 			        method_stack.peek().methodBuilder.addInstruction(new BuilderPackedSwitchPayload(startKey,
6265 			            packed_switch_elements192));
6266 
6267 			}
6268 
6269 		}
6270 		catch (RecognitionException re) {
6271 			reportError(re);
6272 			recover(input,re);
6273 		}
6274 		finally {
6275 			// do for sure before leaving
6276 		}
6277 	}
6278 	// $ANTLR end "insn_packed_switch_directive"
6279 
6280 
6281 
6282 	// $ANTLR start "insn_sparse_switch_directive"
6283 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1215:1: insn_sparse_switch_directive : ^( I_STATEMENT_SPARSE_SWITCH sparse_switch_elements ) ;
insn_sparse_switch_directive()6284 	public final void insn_sparse_switch_directive() throws RecognitionException {
6285 		List<SwitchLabelElement> sparse_switch_elements193 =null;
6286 
6287 		try {
6288 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1216:3: ( ^( I_STATEMENT_SPARSE_SWITCH sparse_switch_elements ) )
6289 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1217:5: ^( I_STATEMENT_SPARSE_SWITCH sparse_switch_elements )
6290 			{
6291 			match(input,I_STATEMENT_SPARSE_SWITCH,FOLLOW_I_STATEMENT_SPARSE_SWITCH_in_insn_sparse_switch_directive3232);
6292 			match(input, Token.DOWN, null);
6293 			pushFollow(FOLLOW_sparse_switch_elements_in_insn_sparse_switch_directive3234);
6294 			sparse_switch_elements193=sparse_switch_elements();
6295 			state._fsp--;
6296 
6297 			match(input, Token.UP, null);
6298 
6299 
6300 			      method_stack.peek().methodBuilder.addInstruction(new BuilderSparseSwitchPayload(sparse_switch_elements193));
6301 
6302 			}
6303 
6304 		}
6305 		catch (RecognitionException re) {
6306 			reportError(re);
6307 			recover(input,re);
6308 		}
6309 		finally {
6310 			// do for sure before leaving
6311 		}
6312 	}
6313 	// $ANTLR end "insn_sparse_switch_directive"
6314 
6315 
6316 	public static class nonvoid_type_descriptor_return extends TreeRuleReturnScope {
6317 		public String type;
6318 	};
6319 
6320 
6321 	// $ANTLR start "nonvoid_type_descriptor"
6322 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1222:1: nonvoid_type_descriptor returns [String type] : ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) ;
nonvoid_type_descriptor()6323 	public final smaliTreeWalker.nonvoid_type_descriptor_return nonvoid_type_descriptor() throws RecognitionException {
6324 		smaliTreeWalker.nonvoid_type_descriptor_return retval = new smaliTreeWalker.nonvoid_type_descriptor_return();
6325 		retval.start = input.LT(1);
6326 
6327 		try {
6328 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1223:3: ( ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) )
6329 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1223:5: ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR )
6330 			{
6331 			if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR||input.LA(1)==PRIMITIVE_TYPE ) {
6332 				input.consume();
6333 				state.errorRecovery=false;
6334 			}
6335 			else {
6336 				MismatchedSetException mse = new MismatchedSetException(null,input);
6337 				throw mse;
6338 			}
6339 
6340 			    retval.type = ((CommonTree)retval.start).getText();
6341 
6342 			}
6343 
6344 		}
6345 		catch (RecognitionException re) {
6346 			reportError(re);
6347 			recover(input,re);
6348 		}
6349 		finally {
6350 			// do for sure before leaving
6351 		}
6352 		return retval;
6353 	}
6354 	// $ANTLR end "nonvoid_type_descriptor"
6355 
6356 
6357 	public static class reference_type_descriptor_return extends TreeRuleReturnScope {
6358 		public String type;
6359 	};
6360 
6361 
6362 	// $ANTLR start "reference_type_descriptor"
6363 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1230:1: reference_type_descriptor returns [String type] : ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) ;
reference_type_descriptor()6364 	public final smaliTreeWalker.reference_type_descriptor_return reference_type_descriptor() throws RecognitionException {
6365 		smaliTreeWalker.reference_type_descriptor_return retval = new smaliTreeWalker.reference_type_descriptor_return();
6366 		retval.start = input.LT(1);
6367 
6368 		try {
6369 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1231:3: ( ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) )
6370 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1231:5: ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR )
6371 			{
6372 			if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR ) {
6373 				input.consume();
6374 				state.errorRecovery=false;
6375 			}
6376 			else {
6377 				MismatchedSetException mse = new MismatchedSetException(null,input);
6378 				throw mse;
6379 			}
6380 
6381 			    retval.type = ((CommonTree)retval.start).getText();
6382 
6383 			}
6384 
6385 		}
6386 		catch (RecognitionException re) {
6387 			reportError(re);
6388 			recover(input,re);
6389 		}
6390 		finally {
6391 			// do for sure before leaving
6392 		}
6393 		return retval;
6394 	}
6395 	// $ANTLR end "reference_type_descriptor"
6396 
6397 
6398 
6399 	// $ANTLR start "type_descriptor"
6400 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1237:1: type_descriptor returns [String type] : ( VOID_TYPE | nonvoid_type_descriptor );
type_descriptor()6401 	public final String type_descriptor() throws RecognitionException {
6402 		String type = null;
6403 
6404 
6405 		TreeRuleReturnScope nonvoid_type_descriptor194 =null;
6406 
6407 		try {
6408 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1238:3: ( VOID_TYPE | nonvoid_type_descriptor )
6409 			int alt38=2;
6410 			int LA38_0 = input.LA(1);
6411 			if ( (LA38_0==VOID_TYPE) ) {
6412 				alt38=1;
6413 			}
6414 			else if ( (LA38_0==ARRAY_DESCRIPTOR||LA38_0==CLASS_DESCRIPTOR||LA38_0==PRIMITIVE_TYPE) ) {
6415 				alt38=2;
6416 			}
6417 
6418 			else {
6419 				NoViableAltException nvae =
6420 					new NoViableAltException("", 38, 0, input);
6421 				throw nvae;
6422 			}
6423 
6424 			switch (alt38) {
6425 				case 1 :
6426 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1238:5: VOID_TYPE
6427 					{
6428 					match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_type_descriptor3313);
6429 					type = "V";
6430 					}
6431 					break;
6432 				case 2 :
6433 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1239:5: nonvoid_type_descriptor
6434 					{
6435 					pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_descriptor3321);
6436 					nonvoid_type_descriptor194=nonvoid_type_descriptor();
6437 					state._fsp--;
6438 
6439 					type = (nonvoid_type_descriptor194!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor194).type:null);
6440 					}
6441 					break;
6442 
6443 			}
6444 		}
6445 		catch (RecognitionException re) {
6446 			reportError(re);
6447 			recover(input,re);
6448 		}
6449 		finally {
6450 			// do for sure before leaving
6451 		}
6452 		return type;
6453 	}
6454 	// $ANTLR end "type_descriptor"
6455 
6456 
6457 
6458 	// $ANTLR start "short_integral_literal"
6459 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1242:1: short_integral_literal returns [short value] : ( long_literal | integer_literal | short_literal | char_literal | byte_literal );
short_integral_literal()6460 	public final short short_integral_literal() throws RecognitionException {
6461 		short value = 0;
6462 
6463 
6464 		long long_literal195 =0;
6465 		int integer_literal196 =0;
6466 		short short_literal197 =0;
6467 		char char_literal198 =0;
6468 		byte byte_literal199 =0;
6469 
6470 		try {
6471 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1243:3: ( long_literal | integer_literal | short_literal | char_literal | byte_literal )
6472 			int alt39=5;
6473 			switch ( input.LA(1) ) {
6474 			case LONG_LITERAL:
6475 				{
6476 				alt39=1;
6477 				}
6478 				break;
6479 			case INTEGER_LITERAL:
6480 				{
6481 				alt39=2;
6482 				}
6483 				break;
6484 			case SHORT_LITERAL:
6485 				{
6486 				alt39=3;
6487 				}
6488 				break;
6489 			case CHAR_LITERAL:
6490 				{
6491 				alt39=4;
6492 				}
6493 				break;
6494 			case BYTE_LITERAL:
6495 				{
6496 				alt39=5;
6497 				}
6498 				break;
6499 			default:
6500 				NoViableAltException nvae =
6501 					new NoViableAltException("", 39, 0, input);
6502 				throw nvae;
6503 			}
6504 			switch (alt39) {
6505 				case 1 :
6506 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1243:5: long_literal
6507 					{
6508 					pushFollow(FOLLOW_long_literal_in_short_integral_literal3339);
6509 					long_literal195=long_literal();
6510 					state._fsp--;
6511 
6512 
6513 					      LiteralTools.checkShort(long_literal195);
6514 					      value = (short)long_literal195;
6515 
6516 					}
6517 					break;
6518 				case 2 :
6519 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1248:5: integer_literal
6520 					{
6521 					pushFollow(FOLLOW_integer_literal_in_short_integral_literal3351);
6522 					integer_literal196=integer_literal();
6523 					state._fsp--;
6524 
6525 
6526 					      LiteralTools.checkShort(integer_literal196);
6527 					      value = (short)integer_literal196;
6528 
6529 					}
6530 					break;
6531 				case 3 :
6532 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1253:5: short_literal
6533 					{
6534 					pushFollow(FOLLOW_short_literal_in_short_integral_literal3363);
6535 					short_literal197=short_literal();
6536 					state._fsp--;
6537 
6538 					value = short_literal197;
6539 					}
6540 					break;
6541 				case 4 :
6542 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1254:5: char_literal
6543 					{
6544 					pushFollow(FOLLOW_char_literal_in_short_integral_literal3371);
6545 					char_literal198=char_literal();
6546 					state._fsp--;
6547 
6548 					value = (short)char_literal198;
6549 					}
6550 					break;
6551 				case 5 :
6552 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1255:5: byte_literal
6553 					{
6554 					pushFollow(FOLLOW_byte_literal_in_short_integral_literal3379);
6555 					byte_literal199=byte_literal();
6556 					state._fsp--;
6557 
6558 					value = byte_literal199;
6559 					}
6560 					break;
6561 
6562 			}
6563 		}
6564 		catch (RecognitionException re) {
6565 			reportError(re);
6566 			recover(input,re);
6567 		}
6568 		finally {
6569 			// do for sure before leaving
6570 		}
6571 		return value;
6572 	}
6573 	// $ANTLR end "short_integral_literal"
6574 
6575 
6576 
6577 	// $ANTLR start "integral_literal"
6578 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1257:1: integral_literal returns [int value] : ( long_literal | integer_literal | short_literal | byte_literal );
integral_literal()6579 	public final int integral_literal() throws RecognitionException {
6580 		int value = 0;
6581 
6582 
6583 		long long_literal200 =0;
6584 		int integer_literal201 =0;
6585 		short short_literal202 =0;
6586 		byte byte_literal203 =0;
6587 
6588 		try {
6589 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1258:3: ( long_literal | integer_literal | short_literal | byte_literal )
6590 			int alt40=4;
6591 			switch ( input.LA(1) ) {
6592 			case LONG_LITERAL:
6593 				{
6594 				alt40=1;
6595 				}
6596 				break;
6597 			case INTEGER_LITERAL:
6598 				{
6599 				alt40=2;
6600 				}
6601 				break;
6602 			case SHORT_LITERAL:
6603 				{
6604 				alt40=3;
6605 				}
6606 				break;
6607 			case BYTE_LITERAL:
6608 				{
6609 				alt40=4;
6610 				}
6611 				break;
6612 			default:
6613 				NoViableAltException nvae =
6614 					new NoViableAltException("", 40, 0, input);
6615 				throw nvae;
6616 			}
6617 			switch (alt40) {
6618 				case 1 :
6619 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1258:5: long_literal
6620 					{
6621 					pushFollow(FOLLOW_long_literal_in_integral_literal3394);
6622 					long_literal200=long_literal();
6623 					state._fsp--;
6624 
6625 
6626 					      LiteralTools.checkInt(long_literal200);
6627 					      value = (int)long_literal200;
6628 
6629 					}
6630 					break;
6631 				case 2 :
6632 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1263:5: integer_literal
6633 					{
6634 					pushFollow(FOLLOW_integer_literal_in_integral_literal3406);
6635 					integer_literal201=integer_literal();
6636 					state._fsp--;
6637 
6638 					value = integer_literal201;
6639 					}
6640 					break;
6641 				case 3 :
6642 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1264:5: short_literal
6643 					{
6644 					pushFollow(FOLLOW_short_literal_in_integral_literal3414);
6645 					short_literal202=short_literal();
6646 					state._fsp--;
6647 
6648 					value = short_literal202;
6649 					}
6650 					break;
6651 				case 4 :
6652 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1265:5: byte_literal
6653 					{
6654 					pushFollow(FOLLOW_byte_literal_in_integral_literal3422);
6655 					byte_literal203=byte_literal();
6656 					state._fsp--;
6657 
6658 					value = byte_literal203;
6659 					}
6660 					break;
6661 
6662 			}
6663 		}
6664 		catch (RecognitionException re) {
6665 			reportError(re);
6666 			recover(input,re);
6667 		}
6668 		finally {
6669 			// do for sure before leaving
6670 		}
6671 		return value;
6672 	}
6673 	// $ANTLR end "integral_literal"
6674 
6675 
6676 
6677 	// $ANTLR start "integer_literal"
6678 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1268:1: integer_literal returns [int value] : INTEGER_LITERAL ;
integer_literal()6679 	public final int integer_literal() throws RecognitionException {
6680 		int value = 0;
6681 
6682 
6683 		CommonTree INTEGER_LITERAL204=null;
6684 
6685 		try {
6686 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1269:3: ( INTEGER_LITERAL )
6687 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1269:5: INTEGER_LITERAL
6688 			{
6689 			INTEGER_LITERAL204=(CommonTree)match(input,INTEGER_LITERAL,FOLLOW_INTEGER_LITERAL_in_integer_literal3438);
6690 			 value = LiteralTools.parseInt((INTEGER_LITERAL204!=null?INTEGER_LITERAL204.getText():null));
6691 			}
6692 
6693 		}
6694 		catch (RecognitionException re) {
6695 			reportError(re);
6696 			recover(input,re);
6697 		}
6698 		finally {
6699 			// do for sure before leaving
6700 		}
6701 		return value;
6702 	}
6703 	// $ANTLR end "integer_literal"
6704 
6705 
6706 
6707 	// $ANTLR start "long_literal"
6708 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1271:1: long_literal returns [long value] : LONG_LITERAL ;
long_literal()6709 	public final long long_literal() throws RecognitionException {
6710 		long value = 0;
6711 
6712 
6713 		CommonTree LONG_LITERAL205=null;
6714 
6715 		try {
6716 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1272:3: ( LONG_LITERAL )
6717 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1272:5: LONG_LITERAL
6718 			{
6719 			LONG_LITERAL205=(CommonTree)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_long_literal3453);
6720 			 value = LiteralTools.parseLong((LONG_LITERAL205!=null?LONG_LITERAL205.getText():null));
6721 			}
6722 
6723 		}
6724 		catch (RecognitionException re) {
6725 			reportError(re);
6726 			recover(input,re);
6727 		}
6728 		finally {
6729 			// do for sure before leaving
6730 		}
6731 		return value;
6732 	}
6733 	// $ANTLR end "long_literal"
6734 
6735 
6736 
6737 	// $ANTLR start "short_literal"
6738 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1274:1: short_literal returns [short value] : SHORT_LITERAL ;
short_literal()6739 	public final short short_literal() throws RecognitionException {
6740 		short value = 0;
6741 
6742 
6743 		CommonTree SHORT_LITERAL206=null;
6744 
6745 		try {
6746 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1275:3: ( SHORT_LITERAL )
6747 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1275:5: SHORT_LITERAL
6748 			{
6749 			SHORT_LITERAL206=(CommonTree)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_short_literal3468);
6750 			 value = LiteralTools.parseShort((SHORT_LITERAL206!=null?SHORT_LITERAL206.getText():null));
6751 			}
6752 
6753 		}
6754 		catch (RecognitionException re) {
6755 			reportError(re);
6756 			recover(input,re);
6757 		}
6758 		finally {
6759 			// do for sure before leaving
6760 		}
6761 		return value;
6762 	}
6763 	// $ANTLR end "short_literal"
6764 
6765 
6766 
6767 	// $ANTLR start "byte_literal"
6768 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1277:1: byte_literal returns [byte value] : BYTE_LITERAL ;
byte_literal()6769 	public final byte byte_literal() throws RecognitionException {
6770 		byte value = 0;
6771 
6772 
6773 		CommonTree BYTE_LITERAL207=null;
6774 
6775 		try {
6776 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1278:3: ( BYTE_LITERAL )
6777 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1278:5: BYTE_LITERAL
6778 			{
6779 			BYTE_LITERAL207=(CommonTree)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_byte_literal3483);
6780 			 value = LiteralTools.parseByte((BYTE_LITERAL207!=null?BYTE_LITERAL207.getText():null));
6781 			}
6782 
6783 		}
6784 		catch (RecognitionException re) {
6785 			reportError(re);
6786 			recover(input,re);
6787 		}
6788 		finally {
6789 			// do for sure before leaving
6790 		}
6791 		return value;
6792 	}
6793 	// $ANTLR end "byte_literal"
6794 
6795 
6796 
6797 	// $ANTLR start "float_literal"
6798 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1280:1: float_literal returns [float value] : FLOAT_LITERAL ;
float_literal()6799 	public final float float_literal() throws RecognitionException {
6800 		float value = 0.0f;
6801 
6802 
6803 		CommonTree FLOAT_LITERAL208=null;
6804 
6805 		try {
6806 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1281:3: ( FLOAT_LITERAL )
6807 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1281:5: FLOAT_LITERAL
6808 			{
6809 			FLOAT_LITERAL208=(CommonTree)match(input,FLOAT_LITERAL,FOLLOW_FLOAT_LITERAL_in_float_literal3498);
6810 			 value = LiteralTools.parseFloat((FLOAT_LITERAL208!=null?FLOAT_LITERAL208.getText():null));
6811 			}
6812 
6813 		}
6814 		catch (RecognitionException re) {
6815 			reportError(re);
6816 			recover(input,re);
6817 		}
6818 		finally {
6819 			// do for sure before leaving
6820 		}
6821 		return value;
6822 	}
6823 	// $ANTLR end "float_literal"
6824 
6825 
6826 
6827 	// $ANTLR start "double_literal"
6828 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1283:1: double_literal returns [double value] : DOUBLE_LITERAL ;
double_literal()6829 	public final double double_literal() throws RecognitionException {
6830 		double value = 0.0;
6831 
6832 
6833 		CommonTree DOUBLE_LITERAL209=null;
6834 
6835 		try {
6836 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1284:3: ( DOUBLE_LITERAL )
6837 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1284:5: DOUBLE_LITERAL
6838 			{
6839 			DOUBLE_LITERAL209=(CommonTree)match(input,DOUBLE_LITERAL,FOLLOW_DOUBLE_LITERAL_in_double_literal3513);
6840 			 value = LiteralTools.parseDouble((DOUBLE_LITERAL209!=null?DOUBLE_LITERAL209.getText():null));
6841 			}
6842 
6843 		}
6844 		catch (RecognitionException re) {
6845 			reportError(re);
6846 			recover(input,re);
6847 		}
6848 		finally {
6849 			// do for sure before leaving
6850 		}
6851 		return value;
6852 	}
6853 	// $ANTLR end "double_literal"
6854 
6855 
6856 
6857 	// $ANTLR start "char_literal"
6858 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1286:1: char_literal returns [char value] : CHAR_LITERAL ;
char_literal()6859 	public final char char_literal() throws RecognitionException {
6860 		char value = 0;
6861 
6862 
6863 		CommonTree CHAR_LITERAL210=null;
6864 
6865 		try {
6866 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1287:3: ( CHAR_LITERAL )
6867 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1287:5: CHAR_LITERAL
6868 			{
6869 			CHAR_LITERAL210=(CommonTree)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_char_literal3528);
6870 			 value = (CHAR_LITERAL210!=null?CHAR_LITERAL210.getText():null).charAt(1);
6871 			}
6872 
6873 		}
6874 		catch (RecognitionException re) {
6875 			reportError(re);
6876 			recover(input,re);
6877 		}
6878 		finally {
6879 			// do for sure before leaving
6880 		}
6881 		return value;
6882 	}
6883 	// $ANTLR end "char_literal"
6884 
6885 
6886 
6887 	// $ANTLR start "string_literal"
6888 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1289:1: string_literal returns [String value] : STRING_LITERAL ;
string_literal()6889 	public final String string_literal() throws RecognitionException {
6890 		String value = null;
6891 
6892 
6893 		CommonTree STRING_LITERAL211=null;
6894 
6895 		try {
6896 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1290:3: ( STRING_LITERAL )
6897 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1290:5: STRING_LITERAL
6898 			{
6899 			STRING_LITERAL211=(CommonTree)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_string_literal3543);
6900 
6901 			      value = (STRING_LITERAL211!=null?STRING_LITERAL211.getText():null);
6902 			      value = value.substring(1,value.length()-1);
6903 
6904 			}
6905 
6906 		}
6907 		catch (RecognitionException re) {
6908 			reportError(re);
6909 			recover(input,re);
6910 		}
6911 		finally {
6912 			// do for sure before leaving
6913 		}
6914 		return value;
6915 	}
6916 	// $ANTLR end "string_literal"
6917 
6918 
6919 
6920 	// $ANTLR start "bool_literal"
6921 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1296:1: bool_literal returns [boolean value] : BOOL_LITERAL ;
bool_literal()6922 	public final boolean bool_literal() throws RecognitionException {
6923 		boolean value = false;
6924 
6925 
6926 		CommonTree BOOL_LITERAL212=null;
6927 
6928 		try {
6929 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1297:3: ( BOOL_LITERAL )
6930 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1297:5: BOOL_LITERAL
6931 			{
6932 			BOOL_LITERAL212=(CommonTree)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_bool_literal3562);
6933 			 value = Boolean.parseBoolean((BOOL_LITERAL212!=null?BOOL_LITERAL212.getText():null));
6934 			}
6935 
6936 		}
6937 		catch (RecognitionException re) {
6938 			reportError(re);
6939 			recover(input,re);
6940 		}
6941 		finally {
6942 			// do for sure before leaving
6943 		}
6944 		return value;
6945 	}
6946 	// $ANTLR end "bool_literal"
6947 
6948 
6949 
6950 	// $ANTLR start "array_literal"
6951 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1299:1: array_literal returns [List<EncodedValue> elements] : ^( I_ENCODED_ARRAY ( literal )* ) ;
array_literal()6952 	public final List<EncodedValue> array_literal() throws RecognitionException {
6953 		List<EncodedValue> elements = null;
6954 
6955 
6956 		EncodedValue literal213 =null;
6957 
6958 		try {
6959 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1300:3: ( ^( I_ENCODED_ARRAY ( literal )* ) )
6960 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1300:5: ^( I_ENCODED_ARRAY ( literal )* )
6961 			{
6962 			elements = Lists.newArrayList();
6963 			match(input,I_ENCODED_ARRAY,FOLLOW_I_ENCODED_ARRAY_in_array_literal3584);
6964 			if ( input.LA(1)==Token.DOWN ) {
6965 				match(input, Token.DOWN, null);
6966 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1301:23: ( literal )*
6967 				loop41:
6968 				while (true) {
6969 					int alt41=2;
6970 					int LA41_0 = input.LA(1);
6971 					if ( (LA41_0==ARRAY_DESCRIPTOR||(LA41_0 >= BOOL_LITERAL && LA41_0 <= BYTE_LITERAL)||(LA41_0 >= CHAR_LITERAL && LA41_0 <= CLASS_DESCRIPTOR)||LA41_0==DOUBLE_LITERAL||LA41_0==FLOAT_LITERAL||LA41_0==INTEGER_LITERAL||(LA41_0 >= I_ENCODED_ARRAY && LA41_0 <= I_ENCODED_METHOD)||LA41_0==I_SUBANNOTATION||LA41_0==LONG_LITERAL||LA41_0==NULL_LITERAL||LA41_0==PRIMITIVE_TYPE||LA41_0==SHORT_LITERAL||LA41_0==STRING_LITERAL||LA41_0==VOID_TYPE) ) {
6972 						alt41=1;
6973 					}
6974 
6975 					switch (alt41) {
6976 					case 1 :
6977 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1301:24: literal
6978 						{
6979 						pushFollow(FOLLOW_literal_in_array_literal3587);
6980 						literal213=literal();
6981 						state._fsp--;
6982 
6983 						elements.add(literal213);
6984 						}
6985 						break;
6986 
6987 					default :
6988 						break loop41;
6989 					}
6990 				}
6991 
6992 				match(input, Token.UP, null);
6993 			}
6994 
6995 			}
6996 
6997 		}
6998 		catch (RecognitionException re) {
6999 			reportError(re);
7000 			recover(input,re);
7001 		}
7002 		finally {
7003 			// do for sure before leaving
7004 		}
7005 		return elements;
7006 	}
7007 	// $ANTLR end "array_literal"
7008 
7009 
7010 
7011 	// $ANTLR start "annotations"
7012 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1303:1: annotations returns [Set<Annotation> annotations] : ^( I_ANNOTATIONS ( annotation )* ) ;
annotations()7013 	public final Set<Annotation> annotations() throws RecognitionException {
7014 		Set<Annotation> annotations = null;
7015 
7016 
7017 		Annotation annotation214 =null;
7018 
7019 		try {
7020 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1304:3: ( ^( I_ANNOTATIONS ( annotation )* ) )
7021 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1304:5: ^( I_ANNOTATIONS ( annotation )* )
7022 			{
7023 			HashMap<String, Annotation> annotationMap = Maps.newHashMap();
7024 			match(input,I_ANNOTATIONS,FOLLOW_I_ANNOTATIONS_in_annotations3612);
7025 			if ( input.LA(1)==Token.DOWN ) {
7026 				match(input, Token.DOWN, null);
7027 				// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1305:21: ( annotation )*
7028 				loop42:
7029 				while (true) {
7030 					int alt42=2;
7031 					int LA42_0 = input.LA(1);
7032 					if ( (LA42_0==I_ANNOTATION) ) {
7033 						alt42=1;
7034 					}
7035 
7036 					switch (alt42) {
7037 					case 1 :
7038 						// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1305:22: annotation
7039 						{
7040 						pushFollow(FOLLOW_annotation_in_annotations3615);
7041 						annotation214=annotation();
7042 						state._fsp--;
7043 
7044 
7045 						        Annotation anno = annotation214;
7046 						        Annotation old = annotationMap.put(anno.getType(), anno);
7047 						        if (old != null) {
7048 						            throw new SemanticException(input, "Multiple annotations of type %s", anno.getType());
7049 						        }
7050 
7051 						}
7052 						break;
7053 
7054 					default :
7055 						break loop42;
7056 					}
7057 				}
7058 
7059 				match(input, Token.UP, null);
7060 			}
7061 
7062 
7063 			      if (annotationMap.size() > 0) {
7064 			        annotations = ImmutableSet.copyOf(annotationMap.values());
7065 			      }
7066 
7067 			}
7068 
7069 		}
7070 		catch (RecognitionException re) {
7071 			reportError(re);
7072 			recover(input,re);
7073 		}
7074 		finally {
7075 			// do for sure before leaving
7076 		}
7077 		return annotations;
7078 	}
7079 	// $ANTLR end "annotations"
7080 
7081 
7082 
7083 	// $ANTLR start "annotation"
7084 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1319:1: annotation returns [Annotation annotation] : ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation ) ;
annotation()7085 	public final Annotation annotation() throws RecognitionException {
7086 		Annotation annotation = null;
7087 
7088 
7089 		CommonTree ANNOTATION_VISIBILITY215=null;
7090 		TreeRuleReturnScope subannotation216 =null;
7091 
7092 		try {
7093 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1320:3: ( ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation ) )
7094 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1320:5: ^( I_ANNOTATION ANNOTATION_VISIBILITY subannotation )
7095 			{
7096 			match(input,I_ANNOTATION,FOLLOW_I_ANNOTATION_in_annotation3644);
7097 			match(input, Token.DOWN, null);
7098 			ANNOTATION_VISIBILITY215=(CommonTree)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_annotation3646);
7099 			pushFollow(FOLLOW_subannotation_in_annotation3648);
7100 			subannotation216=subannotation();
7101 			state._fsp--;
7102 
7103 			match(input, Token.UP, null);
7104 
7105 
7106 			      int visibility = AnnotationVisibility.getVisibility((ANNOTATION_VISIBILITY215!=null?ANNOTATION_VISIBILITY215.getText():null));
7107 			      annotation = new ImmutableAnnotation(visibility, (subannotation216!=null?((smaliTreeWalker.subannotation_return)subannotation216).annotationType:null), (subannotation216!=null?((smaliTreeWalker.subannotation_return)subannotation216).elements:null));
7108 
7109 			}
7110 
7111 		}
7112 		catch (RecognitionException re) {
7113 			reportError(re);
7114 			recover(input,re);
7115 		}
7116 		finally {
7117 			// do for sure before leaving
7118 		}
7119 		return annotation;
7120 	}
7121 	// $ANTLR end "annotation"
7122 
7123 
7124 
7125 	// $ANTLR start "annotation_element"
7126 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1326:1: annotation_element returns [AnnotationElement element] : ^( I_ANNOTATION_ELEMENT SIMPLE_NAME literal ) ;
annotation_element()7127 	public final AnnotationElement annotation_element() throws RecognitionException {
7128 		AnnotationElement element = null;
7129 
7130 
7131 		CommonTree SIMPLE_NAME217=null;
7132 		EncodedValue literal218 =null;
7133 
7134 		try {
7135 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1327:3: ( ^( I_ANNOTATION_ELEMENT SIMPLE_NAME literal ) )
7136 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1327:5: ^( I_ANNOTATION_ELEMENT SIMPLE_NAME literal )
7137 			{
7138 			match(input,I_ANNOTATION_ELEMENT,FOLLOW_I_ANNOTATION_ELEMENT_in_annotation_element3669);
7139 			match(input, Token.DOWN, null);
7140 			SIMPLE_NAME217=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_annotation_element3671);
7141 			pushFollow(FOLLOW_literal_in_annotation_element3673);
7142 			literal218=literal();
7143 			state._fsp--;
7144 
7145 			match(input, Token.UP, null);
7146 
7147 
7148 			      element = new ImmutableAnnotationElement((SIMPLE_NAME217!=null?SIMPLE_NAME217.getText():null), literal218);
7149 
7150 			}
7151 
7152 		}
7153 		catch (RecognitionException re) {
7154 			reportError(re);
7155 			recover(input,re);
7156 		}
7157 		finally {
7158 			// do for sure before leaving
7159 		}
7160 		return element;
7161 	}
7162 	// $ANTLR end "annotation_element"
7163 
7164 
7165 	public static class subannotation_return extends TreeRuleReturnScope {
7166 		public String annotationType;
7167 		public List<AnnotationElement> elements;
7168 	};
7169 
7170 
7171 	// $ANTLR start "subannotation"
7172 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1332:1: subannotation returns [String annotationType, List<AnnotationElement> elements] : ^( I_SUBANNOTATION CLASS_DESCRIPTOR ( annotation_element )* ) ;
subannotation()7173 	public final smaliTreeWalker.subannotation_return subannotation() throws RecognitionException {
7174 		smaliTreeWalker.subannotation_return retval = new smaliTreeWalker.subannotation_return();
7175 		retval.start = input.LT(1);
7176 
7177 		CommonTree CLASS_DESCRIPTOR220=null;
7178 		AnnotationElement annotation_element219 =null;
7179 
7180 		try {
7181 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1333:3: ( ^( I_SUBANNOTATION CLASS_DESCRIPTOR ( annotation_element )* ) )
7182 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1333:5: ^( I_SUBANNOTATION CLASS_DESCRIPTOR ( annotation_element )* )
7183 			{
7184 			ArrayList<AnnotationElement> elements = Lists.newArrayList();
7185 			match(input,I_SUBANNOTATION,FOLLOW_I_SUBANNOTATION_in_subannotation3700);
7186 			match(input, Token.DOWN, null);
7187 			CLASS_DESCRIPTOR220=(CommonTree)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_subannotation3710);
7188 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1336:9: ( annotation_element )*
7189 			loop43:
7190 			while (true) {
7191 				int alt43=2;
7192 				int LA43_0 = input.LA(1);
7193 				if ( (LA43_0==I_ANNOTATION_ELEMENT) ) {
7194 					alt43=1;
7195 				}
7196 
7197 				switch (alt43) {
7198 				case 1 :
7199 					// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1336:10: annotation_element
7200 					{
7201 					pushFollow(FOLLOW_annotation_element_in_subannotation3721);
7202 					annotation_element219=annotation_element();
7203 					state._fsp--;
7204 
7205 
7206 					           elements.add(annotation_element219);
7207 
7208 					}
7209 					break;
7210 
7211 				default :
7212 					break loop43;
7213 				}
7214 			}
7215 
7216 			match(input, Token.UP, null);
7217 
7218 
7219 			      retval.annotationType = (CLASS_DESCRIPTOR220!=null?CLASS_DESCRIPTOR220.getText():null);
7220 			      retval.elements = elements;
7221 
7222 			}
7223 
7224 		}
7225 		catch (RecognitionException re) {
7226 			reportError(re);
7227 			recover(input,re);
7228 		}
7229 		finally {
7230 			// do for sure before leaving
7231 		}
7232 		return retval;
7233 	}
7234 	// $ANTLR end "subannotation"
7235 
7236 
7237 
7238 	// $ANTLR start "field_literal"
7239 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1346:1: field_literal returns [FieldReference value] : ^( I_ENCODED_FIELD field_reference ) ;
field_literal()7240 	public final FieldReference field_literal() throws RecognitionException {
7241 		FieldReference value = null;
7242 
7243 
7244 		ImmutableFieldReference field_reference221 =null;
7245 
7246 		try {
7247 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1347:3: ( ^( I_ENCODED_FIELD field_reference ) )
7248 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1347:5: ^( I_ENCODED_FIELD field_reference )
7249 			{
7250 			match(input,I_ENCODED_FIELD,FOLLOW_I_ENCODED_FIELD_in_field_literal3760);
7251 			match(input, Token.DOWN, null);
7252 			pushFollow(FOLLOW_field_reference_in_field_literal3762);
7253 			field_reference221=field_reference();
7254 			state._fsp--;
7255 
7256 			match(input, Token.UP, null);
7257 
7258 
7259 			      value = field_reference221;
7260 
7261 			}
7262 
7263 		}
7264 		catch (RecognitionException re) {
7265 			reportError(re);
7266 			recover(input,re);
7267 		}
7268 		finally {
7269 			// do for sure before leaving
7270 		}
7271 		return value;
7272 	}
7273 	// $ANTLR end "field_literal"
7274 
7275 
7276 
7277 	// $ANTLR start "method_literal"
7278 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1352:1: method_literal returns [MethodReference value] : ^( I_ENCODED_METHOD method_reference ) ;
method_literal()7279 	public final MethodReference method_literal() throws RecognitionException {
7280 		MethodReference value = null;
7281 
7282 
7283 		ImmutableMethodReference method_reference222 =null;
7284 
7285 		try {
7286 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1353:3: ( ^( I_ENCODED_METHOD method_reference ) )
7287 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1353:5: ^( I_ENCODED_METHOD method_reference )
7288 			{
7289 			match(input,I_ENCODED_METHOD,FOLLOW_I_ENCODED_METHOD_in_method_literal3783);
7290 			match(input, Token.DOWN, null);
7291 			pushFollow(FOLLOW_method_reference_in_method_literal3785);
7292 			method_reference222=method_reference();
7293 			state._fsp--;
7294 
7295 			match(input, Token.UP, null);
7296 
7297 
7298 			      value = method_reference222;
7299 
7300 			}
7301 
7302 		}
7303 		catch (RecognitionException re) {
7304 			reportError(re);
7305 			recover(input,re);
7306 		}
7307 		finally {
7308 			// do for sure before leaving
7309 		}
7310 		return value;
7311 	}
7312 	// $ANTLR end "method_literal"
7313 
7314 
7315 
7316 	// $ANTLR start "enum_literal"
7317 	// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1358:1: enum_literal returns [FieldReference value] : ^( I_ENCODED_ENUM field_reference ) ;
enum_literal()7318 	public final FieldReference enum_literal() throws RecognitionException {
7319 		FieldReference value = null;
7320 
7321 
7322 		ImmutableFieldReference field_reference223 =null;
7323 
7324 		try {
7325 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1359:3: ( ^( I_ENCODED_ENUM field_reference ) )
7326 			// /mnt/ssd1/workspace/aosp_master/external/smali/smali/src/main/antlr/smaliTreeWalker.g:1359:5: ^( I_ENCODED_ENUM field_reference )
7327 			{
7328 			match(input,I_ENCODED_ENUM,FOLLOW_I_ENCODED_ENUM_in_enum_literal3806);
7329 			match(input, Token.DOWN, null);
7330 			pushFollow(FOLLOW_field_reference_in_enum_literal3808);
7331 			field_reference223=field_reference();
7332 			state._fsp--;
7333 
7334 			match(input, Token.UP, null);
7335 
7336 
7337 			      value = field_reference223;
7338 
7339 			}
7340 
7341 		}
7342 		catch (RecognitionException re) {
7343 			reportError(re);
7344 			recover(input,re);
7345 		}
7346 		finally {
7347 			// do for sure before leaving
7348 		}
7349 		return value;
7350 	}
7351 	// $ANTLR end "enum_literal"
7352 
7353 	// Delegated rules
7354 
7355 
7356 
7357 	public static final BitSet FOLLOW_I_CLASS_DEF_in_smali_file52 = new BitSet(new long[]{0x0000000000000004L});
7358 	public static final BitSet FOLLOW_header_in_smali_file54 = new BitSet(new long[]{0x0000000000000000L,0x0040000000000000L});
7359 	public static final BitSet FOLLOW_methods_in_smali_file56 = new BitSet(new long[]{0x0000000000000000L,0x0000200000000000L});
7360 	public static final BitSet FOLLOW_fields_in_smali_file58 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L});
7361 	public static final BitSet FOLLOW_annotations_in_smali_file60 = new BitSet(new long[]{0x0000000000000008L});
7362 	public static final BitSet FOLLOW_class_spec_in_header85 = new BitSet(new long[]{0x0000000000000000L,0x0001000000000000L,0x0000200000000010L});
7363 	public static final BitSet FOLLOW_super_spec_in_header87 = new BitSet(new long[]{0x0000000000000000L,0x0001000000000000L,0x0000000000000010L});
7364 	public static final BitSet FOLLOW_implements_list_in_header90 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000010L});
7365 	public static final BitSet FOLLOW_source_spec_in_header92 = new BitSet(new long[]{0x0000000000000002L});
7366 	public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_class_spec110 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L});
7367 	public static final BitSet FOLLOW_access_list_in_class_spec112 = new BitSet(new long[]{0x0000000000000002L});
7368 	public static final BitSet FOLLOW_I_SUPER_in_super_spec130 = new BitSet(new long[]{0x0000000000000004L});
7369 	public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_super_spec132 = new BitSet(new long[]{0x0000000000000008L});
7370 	public static final BitSet FOLLOW_I_IMPLEMENTS_in_implements_spec152 = new BitSet(new long[]{0x0000000000000004L});
7371 	public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_implements_spec154 = new BitSet(new long[]{0x0000000000000008L});
7372 	public static final BitSet FOLLOW_implements_spec_in_implements_list184 = new BitSet(new long[]{0x0000000000000002L,0x0001000000000000L});
7373 	public static final BitSet FOLLOW_I_SOURCE_in_source_spec213 = new BitSet(new long[]{0x0000000000000004L});
7374 	public static final BitSet FOLLOW_string_literal_in_source_spec215 = new BitSet(new long[]{0x0000000000000008L});
7375 	public static final BitSet FOLLOW_I_ACCESS_LIST_in_access_list248 = new BitSet(new long[]{0x0000000000000004L});
7376 	public static final BitSet FOLLOW_ACCESS_SPEC_in_access_list266 = new BitSet(new long[]{0x0000000000000018L});
7377 	public static final BitSet FOLLOW_I_FIELDS_in_fields308 = new BitSet(new long[]{0x0000000000000004L});
7378 	public static final BitSet FOLLOW_field_in_fields317 = new BitSet(new long[]{0x0000000000000008L,0x0000100000000000L});
7379 	public static final BitSet FOLLOW_I_METHODS_in_methods349 = new BitSet(new long[]{0x0000000000000004L});
7380 	public static final BitSet FOLLOW_method_in_methods358 = new BitSet(new long[]{0x0000000000000008L,0x0020000000000000L});
7381 	public static final BitSet FOLLOW_I_FIELD_in_field383 = new BitSet(new long[]{0x0000000000000004L});
7382 	public static final BitSet FOLLOW_SIMPLE_NAME_in_field385 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L});
7383 	public static final BitSet FOLLOW_access_list_in_field387 = new BitSet(new long[]{0x0000000000000000L,0x0000800000000000L});
7384 	public static final BitSet FOLLOW_I_FIELD_TYPE_in_field390 = new BitSet(new long[]{0x0000000000000004L});
7385 	public static final BitSet FOLLOW_nonvoid_type_descriptor_in_field392 = new BitSet(new long[]{0x0000000000000008L});
7386 	public static final BitSet FOLLOW_field_initial_value_in_field395 = new BitSet(new long[]{0x0000000000000008L,0x0000000040000000L});
7387 	public static final BitSet FOLLOW_annotations_in_field397 = new BitSet(new long[]{0x0000000000000008L});
7388 	public static final BitSet FOLLOW_I_FIELD_INITIAL_VALUE_in_field_initial_value418 = new BitSet(new long[]{0x0000000000000004L});
7389 	public static final BitSet FOLLOW_literal_in_field_initial_value420 = new BitSet(new long[]{0x0000000000000008L});
7390 	public static final BitSet FOLLOW_integer_literal_in_literal442 = new BitSet(new long[]{0x0000000000000002L});
7391 	public static final BitSet FOLLOW_long_literal_in_literal450 = new BitSet(new long[]{0x0000000000000002L});
7392 	public static final BitSet FOLLOW_short_literal_in_literal458 = new BitSet(new long[]{0x0000000000000002L});
7393 	public static final BitSet FOLLOW_byte_literal_in_literal466 = new BitSet(new long[]{0x0000000000000002L});
7394 	public static final BitSet FOLLOW_float_literal_in_literal474 = new BitSet(new long[]{0x0000000000000002L});
7395 	public static final BitSet FOLLOW_double_literal_in_literal482 = new BitSet(new long[]{0x0000000000000002L});
7396 	public static final BitSet FOLLOW_char_literal_in_literal490 = new BitSet(new long[]{0x0000000000000002L});
7397 	public static final BitSet FOLLOW_string_literal_in_literal498 = new BitSet(new long[]{0x0000000000000002L});
7398 	public static final BitSet FOLLOW_bool_literal_in_literal506 = new BitSet(new long[]{0x0000000000000002L});
7399 	public static final BitSet FOLLOW_NULL_LITERAL_in_literal514 = new BitSet(new long[]{0x0000000000000002L});
7400 	public static final BitSet FOLLOW_type_descriptor_in_literal522 = new BitSet(new long[]{0x0000000000000002L});
7401 	public static final BitSet FOLLOW_array_literal_in_literal530 = new BitSet(new long[]{0x0000000000000002L});
7402 	public static final BitSet FOLLOW_subannotation_in_literal538 = new BitSet(new long[]{0x0000000000000002L});
7403 	public static final BitSet FOLLOW_field_literal_in_literal546 = new BitSet(new long[]{0x0000000000000002L});
7404 	public static final BitSet FOLLOW_method_literal_in_literal554 = new BitSet(new long[]{0x0000000000000002L});
7405 	public static final BitSet FOLLOW_enum_literal_in_literal562 = new BitSet(new long[]{0x0000000000000002L});
7406 	public static final BitSet FOLLOW_integer_literal_in_fixed_64bit_literal_number578 = new BitSet(new long[]{0x0000000000000002L});
7407 	public static final BitSet FOLLOW_long_literal_in_fixed_64bit_literal_number586 = new BitSet(new long[]{0x0000000000000002L});
7408 	public static final BitSet FOLLOW_short_literal_in_fixed_64bit_literal_number594 = new BitSet(new long[]{0x0000000000000002L});
7409 	public static final BitSet FOLLOW_byte_literal_in_fixed_64bit_literal_number602 = new BitSet(new long[]{0x0000000000000002L});
7410 	public static final BitSet FOLLOW_float_literal_in_fixed_64bit_literal_number610 = new BitSet(new long[]{0x0000000000000002L});
7411 	public static final BitSet FOLLOW_double_literal_in_fixed_64bit_literal_number618 = new BitSet(new long[]{0x0000000000000002L});
7412 	public static final BitSet FOLLOW_char_literal_in_fixed_64bit_literal_number626 = new BitSet(new long[]{0x0000000000000002L});
7413 	public static final BitSet FOLLOW_bool_literal_in_fixed_64bit_literal_number634 = new BitSet(new long[]{0x0000000000000002L});
7414 	public static final BitSet FOLLOW_integer_literal_in_fixed_64bit_literal649 = new BitSet(new long[]{0x0000000000000002L});
7415 	public static final BitSet FOLLOW_long_literal_in_fixed_64bit_literal657 = new BitSet(new long[]{0x0000000000000002L});
7416 	public static final BitSet FOLLOW_short_literal_in_fixed_64bit_literal665 = new BitSet(new long[]{0x0000000000000002L});
7417 	public static final BitSet FOLLOW_byte_literal_in_fixed_64bit_literal673 = new BitSet(new long[]{0x0000000000000002L});
7418 	public static final BitSet FOLLOW_float_literal_in_fixed_64bit_literal681 = new BitSet(new long[]{0x0000000000000002L});
7419 	public static final BitSet FOLLOW_double_literal_in_fixed_64bit_literal689 = new BitSet(new long[]{0x0000000000000002L});
7420 	public static final BitSet FOLLOW_char_literal_in_fixed_64bit_literal697 = new BitSet(new long[]{0x0000000000000002L});
7421 	public static final BitSet FOLLOW_bool_literal_in_fixed_64bit_literal705 = new BitSet(new long[]{0x0000000000000002L});
7422 	public static final BitSet FOLLOW_integer_literal_in_fixed_32bit_literal722 = new BitSet(new long[]{0x0000000000000002L});
7423 	public static final BitSet FOLLOW_long_literal_in_fixed_32bit_literal730 = new BitSet(new long[]{0x0000000000000002L});
7424 	public static final BitSet FOLLOW_short_literal_in_fixed_32bit_literal738 = new BitSet(new long[]{0x0000000000000002L});
7425 	public static final BitSet FOLLOW_byte_literal_in_fixed_32bit_literal746 = new BitSet(new long[]{0x0000000000000002L});
7426 	public static final BitSet FOLLOW_float_literal_in_fixed_32bit_literal754 = new BitSet(new long[]{0x0000000000000002L});
7427 	public static final BitSet FOLLOW_char_literal_in_fixed_32bit_literal762 = new BitSet(new long[]{0x0000000000000002L});
7428 	public static final BitSet FOLLOW_bool_literal_in_fixed_32bit_literal770 = new BitSet(new long[]{0x0000000000000002L});
7429 	public static final BitSet FOLLOW_I_ARRAY_ELEMENTS_in_array_elements792 = new BitSet(new long[]{0x0000000000000004L});
7430 	public static final BitSet FOLLOW_fixed_64bit_literal_number_in_array_elements801 = new BitSet(new long[]{0x0000004000404C08L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L});
7431 	public static final BitSet FOLLOW_I_PACKED_SWITCH_ELEMENTS_in_packed_switch_elements837 = new BitSet(new long[]{0x0000000000000004L});
7432 	public static final BitSet FOLLOW_label_ref_in_packed_switch_elements846 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7433 	public static final BitSet FOLLOW_I_SPARSE_SWITCH_ELEMENTS_in_sparse_switch_elements881 = new BitSet(new long[]{0x0000000000000004L});
7434 	public static final BitSet FOLLOW_fixed_32bit_literal_in_sparse_switch_elements891 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7435 	public static final BitSet FOLLOW_label_ref_in_sparse_switch_elements893 = new BitSet(new long[]{0x0000004000004C08L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L});
7436 	public static final BitSet FOLLOW_I_METHOD_in_method945 = new BitSet(new long[]{0x0000000000000004L});
7437 	public static final BitSet FOLLOW_method_name_and_prototype_in_method953 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L});
7438 	public static final BitSet FOLLOW_access_list_in_method961 = new BitSet(new long[]{0x0000000000000000L,0x0210000000000000L,0x0000000000000001L});
7439 	public static final BitSet FOLLOW_registers_directive_in_method988 = new BitSet(new long[]{0x0000000000000000L,0x0200000000000000L});
7440 	public static final BitSet FOLLOW_ordered_method_items_in_method1045 = new BitSet(new long[]{0x0000000000000000L,0x0000001000000000L});
7441 	public static final BitSet FOLLOW_catches_in_method1053 = new BitSet(new long[]{0x0000000000000000L,0x2000000000000000L});
7442 	public static final BitSet FOLLOW_parameters_in_method1061 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L});
7443 	public static final BitSet FOLLOW_annotations_in_method1070 = new BitSet(new long[]{0x0000000000000008L});
7444 	public static final BitSet FOLLOW_I_METHOD_PROTOTYPE_in_method_prototype1094 = new BitSet(new long[]{0x0000000000000004L});
7445 	public static final BitSet FOLLOW_I_METHOD_RETURN_TYPE_in_method_prototype1097 = new BitSet(new long[]{0x0000000000000004L});
7446 	public static final BitSet FOLLOW_type_descriptor_in_method_prototype1099 = new BitSet(new long[]{0x0000000000000008L});
7447 	public static final BitSet FOLLOW_method_type_list_in_method_prototype1102 = new BitSet(new long[]{0x0000000000000008L});
7448 	public static final BitSet FOLLOW_SIMPLE_NAME_in_method_name_and_prototype1120 = new BitSet(new long[]{0x0000000000000000L,0x0080000000000000L});
7449 	public static final BitSet FOLLOW_method_prototype_in_method_name_and_prototype1122 = new BitSet(new long[]{0x0000000000000002L});
7450 	public static final BitSet FOLLOW_nonvoid_type_descriptor_in_method_type_list1156 = new BitSet(new long[]{0x0000000000008102L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
7451 	public static final BitSet FOLLOW_reference_type_descriptor_in_method_reference1185 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7452 	public static final BitSet FOLLOW_SIMPLE_NAME_in_method_reference1188 = new BitSet(new long[]{0x0000000000000000L,0x0080000000000000L});
7453 	public static final BitSet FOLLOW_method_prototype_in_method_reference1190 = new BitSet(new long[]{0x0000000000000002L});
7454 	public static final BitSet FOLLOW_reference_type_descriptor_in_field_reference1207 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7455 	public static final BitSet FOLLOW_SIMPLE_NAME_in_field_reference1210 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
7456 	public static final BitSet FOLLOW_nonvoid_type_descriptor_in_field_reference1212 = new BitSet(new long[]{0x0000000000000002L});
7457 	public static final BitSet FOLLOW_I_REGISTERS_in_registers_directive1238 = new BitSet(new long[]{0x0000000000000004L});
7458 	public static final BitSet FOLLOW_I_LOCALS_in_registers_directive1250 = new BitSet(new long[]{0x0000000000000004L});
7459 	public static final BitSet FOLLOW_short_integral_literal_in_registers_directive1268 = new BitSet(new long[]{0x0000000000000008L});
7460 	public static final BitSet FOLLOW_I_LABEL_in_label_def1288 = new BitSet(new long[]{0x0000000000000004L});
7461 	public static final BitSet FOLLOW_SIMPLE_NAME_in_label_def1290 = new BitSet(new long[]{0x0000000000000008L});
7462 	public static final BitSet FOLLOW_I_CATCHES_in_catches1316 = new BitSet(new long[]{0x0000000000000004L});
7463 	public static final BitSet FOLLOW_catch_directive_in_catches1318 = new BitSet(new long[]{0x0000000000000008L,0x0000000C00000000L});
7464 	public static final BitSet FOLLOW_catchall_directive_in_catches1321 = new BitSet(new long[]{0x0000000000000008L,0x0000000800000000L});
7465 	public static final BitSet FOLLOW_I_CATCH_in_catch_directive1334 = new BitSet(new long[]{0x0000000000000004L});
7466 	public static final BitSet FOLLOW_nonvoid_type_descriptor_in_catch_directive1336 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7467 	public static final BitSet FOLLOW_label_ref_in_catch_directive1340 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7468 	public static final BitSet FOLLOW_label_ref_in_catch_directive1344 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7469 	public static final BitSet FOLLOW_label_ref_in_catch_directive1348 = new BitSet(new long[]{0x0000000000000008L});
7470 	public static final BitSet FOLLOW_I_CATCHALL_in_catchall_directive1364 = new BitSet(new long[]{0x0000000000000004L});
7471 	public static final BitSet FOLLOW_label_ref_in_catchall_directive1368 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7472 	public static final BitSet FOLLOW_label_ref_in_catchall_directive1372 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7473 	public static final BitSet FOLLOW_label_ref_in_catchall_directive1376 = new BitSet(new long[]{0x0000000000000008L});
7474 	public static final BitSet FOLLOW_I_PARAMETERS_in_parameters1393 = new BitSet(new long[]{0x0000000000000004L});
7475 	public static final BitSet FOLLOW_parameter_in_parameters1396 = new BitSet(new long[]{0x0000000000000008L,0x1000000000000000L});
7476 	public static final BitSet FOLLOW_I_PARAMETER_in_parameter1412 = new BitSet(new long[]{0x0000000000000004L});
7477 	public static final BitSet FOLLOW_REGISTER_in_parameter1414 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L,0x0000000000000000L,0x0000000000000200L});
7478 	public static final BitSet FOLLOW_string_literal_in_parameter1416 = new BitSet(new long[]{0x0000000000000000L,0x0000000040000000L});
7479 	public static final BitSet FOLLOW_annotations_in_parameter1419 = new BitSet(new long[]{0x0000000000000008L});
7480 	public static final BitSet FOLLOW_line_in_debug_directive1436 = new BitSet(new long[]{0x0000000000000002L});
7481 	public static final BitSet FOLLOW_local_in_debug_directive1442 = new BitSet(new long[]{0x0000000000000002L});
7482 	public static final BitSet FOLLOW_end_local_in_debug_directive1448 = new BitSet(new long[]{0x0000000000000002L});
7483 	public static final BitSet FOLLOW_restart_local_in_debug_directive1454 = new BitSet(new long[]{0x0000000000000002L});
7484 	public static final BitSet FOLLOW_prologue_in_debug_directive1460 = new BitSet(new long[]{0x0000000000000002L});
7485 	public static final BitSet FOLLOW_epilogue_in_debug_directive1466 = new BitSet(new long[]{0x0000000000000002L});
7486 	public static final BitSet FOLLOW_source_in_debug_directive1472 = new BitSet(new long[]{0x0000000000000002L});
7487 	public static final BitSet FOLLOW_I_LINE_in_line1483 = new BitSet(new long[]{0x0000000000000004L});
7488 	public static final BitSet FOLLOW_integral_literal_in_line1485 = new BitSet(new long[]{0x0000000000000008L});
7489 	public static final BitSet FOLLOW_I_LOCAL_in_local1503 = new BitSet(new long[]{0x0000000000000004L});
7490 	public static final BitSet FOLLOW_REGISTER_in_local1505 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0040000000000000L,0x0000000000000200L});
7491 	public static final BitSet FOLLOW_NULL_LITERAL_in_local1509 = new BitSet(new long[]{0x0000000000008108L,0x0000000000000000L,0x0000000000000000L,0x0000000000000201L});
7492 	public static final BitSet FOLLOW_string_literal_in_local1515 = new BitSet(new long[]{0x0000000000008108L,0x0000000000000000L,0x0000000000000000L,0x0000000000000201L});
7493 	public static final BitSet FOLLOW_nonvoid_type_descriptor_in_local1518 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
7494 	public static final BitSet FOLLOW_string_literal_in_local1523 = new BitSet(new long[]{0x0000000000000008L});
7495 	public static final BitSet FOLLOW_I_END_LOCAL_in_end_local1544 = new BitSet(new long[]{0x0000000000000004L});
7496 	public static final BitSet FOLLOW_REGISTER_in_end_local1546 = new BitSet(new long[]{0x0000000000000008L});
7497 	public static final BitSet FOLLOW_I_RESTART_LOCAL_in_restart_local1564 = new BitSet(new long[]{0x0000000000000004L});
7498 	public static final BitSet FOLLOW_REGISTER_in_restart_local1566 = new BitSet(new long[]{0x0000000000000008L});
7499 	public static final BitSet FOLLOW_I_PROLOGUE_in_prologue1583 = new BitSet(new long[]{0x0000000000000002L});
7500 	public static final BitSet FOLLOW_I_EPILOGUE_in_epilogue1599 = new BitSet(new long[]{0x0000000000000002L});
7501 	public static final BitSet FOLLOW_I_SOURCE_in_source1616 = new BitSet(new long[]{0x0000000000000004L});
7502 	public static final BitSet FOLLOW_string_literal_in_source1618 = new BitSet(new long[]{0x0000000000000008L});
7503 	public static final BitSet FOLLOW_I_ORDERED_METHOD_ITEMS_in_ordered_method_items1637 = new BitSet(new long[]{0x0000000000000004L});
7504 	public static final BitSet FOLLOW_label_def_in_ordered_method_items1640 = new BitSet(new long[]{0x0000000000000008L,0x800E0C0000000000L,0x00000FFFFFFFFFD8L});
7505 	public static final BitSet FOLLOW_instruction_in_ordered_method_items1644 = new BitSet(new long[]{0x0000000000000008L,0x800E0C0000000000L,0x00000FFFFFFFFFD8L});
7506 	public static final BitSet FOLLOW_debug_directive_in_ordered_method_items1648 = new BitSet(new long[]{0x0000000000000008L,0x800E0C0000000000L,0x00000FFFFFFFFFD8L});
7507 	public static final BitSet FOLLOW_SIMPLE_NAME_in_label_ref1664 = new BitSet(new long[]{0x0000000000000002L});
7508 	public static final BitSet FOLLOW_I_REGISTER_LIST_in_register_list1689 = new BitSet(new long[]{0x0000000000000004L});
7509 	public static final BitSet FOLLOW_REGISTER_in_register_list1698 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7510 	public static final BitSet FOLLOW_I_REGISTER_LIST_in_register_list41732 = new BitSet(new long[]{0x0000000000000004L});
7511 	public static final BitSet FOLLOW_REGISTER_in_register_list41741 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7512 	public static final BitSet FOLLOW_I_REGISTER_RANGE_in_register_range1766 = new BitSet(new long[]{0x0000000000000004L});
7513 	public static final BitSet FOLLOW_REGISTER_in_register_range1771 = new BitSet(new long[]{0x0000000000000008L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7514 	public static final BitSet FOLLOW_REGISTER_in_register_range1775 = new BitSet(new long[]{0x0000000000000008L});
7515 	public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_verification_error_reference1798 = new BitSet(new long[]{0x0000000000000002L});
7516 	public static final BitSet FOLLOW_field_reference_in_verification_error_reference1808 = new BitSet(new long[]{0x0000000000000002L});
7517 	public static final BitSet FOLLOW_method_reference_in_verification_error_reference1818 = new BitSet(new long[]{0x0000000000000002L});
7518 	public static final BitSet FOLLOW_VERIFICATION_ERROR_TYPE_in_verification_error_type1835 = new BitSet(new long[]{0x0000000000000002L});
7519 	public static final BitSet FOLLOW_insn_format10t_in_instruction1849 = new BitSet(new long[]{0x0000000000000002L});
7520 	public static final BitSet FOLLOW_insn_format10x_in_instruction1855 = new BitSet(new long[]{0x0000000000000002L});
7521 	public static final BitSet FOLLOW_insn_format11n_in_instruction1861 = new BitSet(new long[]{0x0000000000000002L});
7522 	public static final BitSet FOLLOW_insn_format11x_in_instruction1867 = new BitSet(new long[]{0x0000000000000002L});
7523 	public static final BitSet FOLLOW_insn_format12x_in_instruction1873 = new BitSet(new long[]{0x0000000000000002L});
7524 	public static final BitSet FOLLOW_insn_format20bc_in_instruction1879 = new BitSet(new long[]{0x0000000000000002L});
7525 	public static final BitSet FOLLOW_insn_format20t_in_instruction1885 = new BitSet(new long[]{0x0000000000000002L});
7526 	public static final BitSet FOLLOW_insn_format21c_field_in_instruction1891 = new BitSet(new long[]{0x0000000000000002L});
7527 	public static final BitSet FOLLOW_insn_format21c_string_in_instruction1897 = new BitSet(new long[]{0x0000000000000002L});
7528 	public static final BitSet FOLLOW_insn_format21c_type_in_instruction1903 = new BitSet(new long[]{0x0000000000000002L});
7529 	public static final BitSet FOLLOW_insn_format21c_lambda_in_instruction1909 = new BitSet(new long[]{0x0000000000000002L});
7530 	public static final BitSet FOLLOW_insn_format21c_method_in_instruction1915 = new BitSet(new long[]{0x0000000000000002L});
7531 	public static final BitSet FOLLOW_insn_format21ih_in_instruction1921 = new BitSet(new long[]{0x0000000000000002L});
7532 	public static final BitSet FOLLOW_insn_format21lh_in_instruction1927 = new BitSet(new long[]{0x0000000000000002L});
7533 	public static final BitSet FOLLOW_insn_format21s_in_instruction1933 = new BitSet(new long[]{0x0000000000000002L});
7534 	public static final BitSet FOLLOW_insn_format21t_in_instruction1939 = new BitSet(new long[]{0x0000000000000002L});
7535 	public static final BitSet FOLLOW_insn_format22b_in_instruction1945 = new BitSet(new long[]{0x0000000000000002L});
7536 	public static final BitSet FOLLOW_insn_format22c_field_in_instruction1951 = new BitSet(new long[]{0x0000000000000002L});
7537 	public static final BitSet FOLLOW_insn_format22c_type_in_instruction1957 = new BitSet(new long[]{0x0000000000000002L});
7538 	public static final BitSet FOLLOW_insn_format22c_string_in_instruction1963 = new BitSet(new long[]{0x0000000000000002L});
7539 	public static final BitSet FOLLOW_insn_format22s_in_instruction1969 = new BitSet(new long[]{0x0000000000000002L});
7540 	public static final BitSet FOLLOW_insn_format22t_in_instruction1975 = new BitSet(new long[]{0x0000000000000002L});
7541 	public static final BitSet FOLLOW_insn_format22x_in_instruction1981 = new BitSet(new long[]{0x0000000000000002L});
7542 	public static final BitSet FOLLOW_insn_format23x_in_instruction1987 = new BitSet(new long[]{0x0000000000000002L});
7543 	public static final BitSet FOLLOW_insn_format25x_in_instruction1993 = new BitSet(new long[]{0x0000000000000002L});
7544 	public static final BitSet FOLLOW_insn_format30t_in_instruction1999 = new BitSet(new long[]{0x0000000000000002L});
7545 	public static final BitSet FOLLOW_insn_format31c_in_instruction2005 = new BitSet(new long[]{0x0000000000000002L});
7546 	public static final BitSet FOLLOW_insn_format31i_in_instruction2011 = new BitSet(new long[]{0x0000000000000002L});
7547 	public static final BitSet FOLLOW_insn_format31t_in_instruction2017 = new BitSet(new long[]{0x0000000000000002L});
7548 	public static final BitSet FOLLOW_insn_format32x_in_instruction2023 = new BitSet(new long[]{0x0000000000000002L});
7549 	public static final BitSet FOLLOW_insn_format35c_method_in_instruction2029 = new BitSet(new long[]{0x0000000000000002L});
7550 	public static final BitSet FOLLOW_insn_format35c_type_in_instruction2035 = new BitSet(new long[]{0x0000000000000002L});
7551 	public static final BitSet FOLLOW_insn_format3rc_method_in_instruction2041 = new BitSet(new long[]{0x0000000000000002L});
7552 	public static final BitSet FOLLOW_insn_format3rc_type_in_instruction2047 = new BitSet(new long[]{0x0000000000000002L});
7553 	public static final BitSet FOLLOW_insn_format51l_type_in_instruction2053 = new BitSet(new long[]{0x0000000000000002L});
7554 	public static final BitSet FOLLOW_insn_array_data_directive_in_instruction2059 = new BitSet(new long[]{0x0000000000000002L});
7555 	public static final BitSet FOLLOW_insn_packed_switch_directive_in_instruction2065 = new BitSet(new long[]{0x0000000000000002L});
7556 	public static final BitSet FOLLOW_insn_sparse_switch_directive_in_instruction2071 = new BitSet(new long[]{0x0000000000000002L});
7557 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT10t_in_insn_format10t2095 = new BitSet(new long[]{0x0000000000000004L});
7558 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT10t_in_insn_format10t2097 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7559 	public static final BitSet FOLLOW_label_ref_in_insn_format10t2099 = new BitSet(new long[]{0x0000000000000008L});
7560 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT10x_in_insn_format10x2122 = new BitSet(new long[]{0x0000000000000004L});
7561 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT10x_in_insn_format10x2124 = new BitSet(new long[]{0x0000000000000008L});
7562 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT11n_in_insn_format11n2147 = new BitSet(new long[]{0x0000000000000004L});
7563 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT11n_in_insn_format11n2149 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7564 	public static final BitSet FOLLOW_REGISTER_in_insn_format11n2151 = new BitSet(new long[]{0x0000000000004800L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L});
7565 	public static final BitSet FOLLOW_short_integral_literal_in_insn_format11n2153 = new BitSet(new long[]{0x0000000000000008L});
7566 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT11x_in_insn_format11x2176 = new BitSet(new long[]{0x0000000000000004L});
7567 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT11x_in_insn_format11x2178 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7568 	public static final BitSet FOLLOW_REGISTER_in_insn_format11x2180 = new BitSet(new long[]{0x0000000000000008L});
7569 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT12x_in_insn_format12x2203 = new BitSet(new long[]{0x0000000000000004L});
7570 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT12x_in_insn_format12x2205 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7571 	public static final BitSet FOLLOW_REGISTER_in_insn_format12x2209 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7572 	public static final BitSet FOLLOW_REGISTER_in_insn_format12x2213 = new BitSet(new long[]{0x0000000000000008L});
7573 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT20bc_in_insn_format20bc2236 = new BitSet(new long[]{0x0000000000000004L});
7574 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT20bc_in_insn_format20bc2238 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000001000L});
7575 	public static final BitSet FOLLOW_verification_error_type_in_insn_format20bc2240 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7576 	public static final BitSet FOLLOW_verification_error_reference_in_insn_format20bc2242 = new BitSet(new long[]{0x0000000000000008L});
7577 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT20t_in_insn_format20t2265 = new BitSet(new long[]{0x0000000000000004L});
7578 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT20t_in_insn_format20t2267 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7579 	public static final BitSet FOLLOW_label_ref_in_insn_format20t2269 = new BitSet(new long[]{0x0000000000000008L});
7580 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_FIELD_in_insn_format21c_field2292 = new BitSet(new long[]{0x0000000000000004L});
7581 	public static final BitSet FOLLOW_set_in_insn_format21c_field2296 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7582 	public static final BitSet FOLLOW_REGISTER_in_insn_format21c_field2304 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7583 	public static final BitSet FOLLOW_field_reference_in_insn_format21c_field2306 = new BitSet(new long[]{0x0000000000000008L});
7584 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_STRING_in_insn_format21c_string2329 = new BitSet(new long[]{0x0000000000000004L});
7585 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_insn_format21c_string2331 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7586 	public static final BitSet FOLLOW_REGISTER_in_insn_format21c_string2333 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
7587 	public static final BitSet FOLLOW_string_literal_in_insn_format21c_string2335 = new BitSet(new long[]{0x0000000000000008L});
7588 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2358 = new BitSet(new long[]{0x0000000000000004L});
7589 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type2360 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7590 	public static final BitSet FOLLOW_REGISTER_in_insn_format21c_type2362 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
7591 	public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type2364 = new BitSet(new long[]{0x0000000000000008L});
7592 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_LAMBDA_in_insn_format21c_lambda2387 = new BitSet(new long[]{0x0000000000000004L});
7593 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_LAMBDA_in_insn_format21c_lambda2389 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7594 	public static final BitSet FOLLOW_REGISTER_in_insn_format21c_lambda2391 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
7595 	public static final BitSet FOLLOW_string_literal_in_insn_format21c_lambda2393 = new BitSet(new long[]{0x0000000000000008L});
7596 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT21c_METHOD_in_insn_format21c_method2416 = new BitSet(new long[]{0x0000000000000004L});
7597 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT21c_METHOD_in_insn_format21c_method2418 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7598 	public static final BitSet FOLLOW_REGISTER_in_insn_format21c_method2420 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7599 	public static final BitSet FOLLOW_method_reference_in_insn_format21c_method2422 = new BitSet(new long[]{0x0000000000000008L});
7600 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT21ih_in_insn_format21ih2445 = new BitSet(new long[]{0x0000000000000004L});
7601 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT21ih_in_insn_format21ih2447 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7602 	public static final BitSet FOLLOW_REGISTER_in_insn_format21ih2449 = new BitSet(new long[]{0x0000004000004C00L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L});
7603 	public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format21ih2451 = new BitSet(new long[]{0x0000000000000008L});
7604 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT21lh_in_insn_format21lh2474 = new BitSet(new long[]{0x0000000000000004L});
7605 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT21lh_in_insn_format21lh2476 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7606 	public static final BitSet FOLLOW_REGISTER_in_insn_format21lh2478 = new BitSet(new long[]{0x0000004000404C00L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L});
7607 	public static final BitSet FOLLOW_fixed_64bit_literal_in_insn_format21lh2480 = new BitSet(new long[]{0x0000000000000008L});
7608 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT21s_in_insn_format21s2503 = new BitSet(new long[]{0x0000000000000004L});
7609 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT21s_in_insn_format21s2505 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7610 	public static final BitSet FOLLOW_REGISTER_in_insn_format21s2507 = new BitSet(new long[]{0x0000000000004800L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L});
7611 	public static final BitSet FOLLOW_short_integral_literal_in_insn_format21s2509 = new BitSet(new long[]{0x0000000000000008L});
7612 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT21t_in_insn_format21t2532 = new BitSet(new long[]{0x0000000000000004L});
7613 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT21t_in_insn_format21t2534 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7614 	public static final BitSet FOLLOW_REGISTER_in_insn_format21t2536 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7615 	public static final BitSet FOLLOW_label_ref_in_insn_format21t2538 = new BitSet(new long[]{0x0000000000000008L});
7616 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT22b_in_insn_format22b2561 = new BitSet(new long[]{0x0000000000000004L});
7617 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT22b_in_insn_format22b2563 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7618 	public static final BitSet FOLLOW_REGISTER_in_insn_format22b2567 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7619 	public static final BitSet FOLLOW_REGISTER_in_insn_format22b2571 = new BitSet(new long[]{0x0000000000004800L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L});
7620 	public static final BitSet FOLLOW_short_integral_literal_in_insn_format22b2573 = new BitSet(new long[]{0x0000000000000008L});
7621 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT22c_FIELD_in_insn_format22c_field2596 = new BitSet(new long[]{0x0000000000000004L});
7622 	public static final BitSet FOLLOW_set_in_insn_format22c_field2600 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7623 	public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field2610 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7624 	public static final BitSet FOLLOW_REGISTER_in_insn_format22c_field2614 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7625 	public static final BitSet FOLLOW_field_reference_in_insn_format22c_field2616 = new BitSet(new long[]{0x0000000000000008L});
7626 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2639 = new BitSet(new long[]{0x0000000000000004L});
7627 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type2641 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7628 	public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type2645 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7629 	public static final BitSet FOLLOW_REGISTER_in_insn_format22c_type2649 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
7630 	public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type2651 = new BitSet(new long[]{0x0000000000000008L});
7631 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT22c_STRING_in_insn_format22c_string2674 = new BitSet(new long[]{0x0000000000000004L});
7632 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT22c_STRING_in_insn_format22c_string2676 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7633 	public static final BitSet FOLLOW_REGISTER_in_insn_format22c_string2680 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7634 	public static final BitSet FOLLOW_REGISTER_in_insn_format22c_string2684 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
7635 	public static final BitSet FOLLOW_string_literal_in_insn_format22c_string2686 = new BitSet(new long[]{0x0000000000000008L});
7636 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT22s_in_insn_format22s2709 = new BitSet(new long[]{0x0000000000000004L});
7637 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT22s_in_insn_format22s2711 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7638 	public static final BitSet FOLLOW_REGISTER_in_insn_format22s2715 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7639 	public static final BitSet FOLLOW_REGISTER_in_insn_format22s2719 = new BitSet(new long[]{0x0000000000004800L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L});
7640 	public static final BitSet FOLLOW_short_integral_literal_in_insn_format22s2721 = new BitSet(new long[]{0x0000000000000008L});
7641 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT22t_in_insn_format22t2744 = new BitSet(new long[]{0x0000000000000004L});
7642 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT22t_in_insn_format22t2746 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7643 	public static final BitSet FOLLOW_REGISTER_in_insn_format22t2750 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7644 	public static final BitSet FOLLOW_REGISTER_in_insn_format22t2754 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7645 	public static final BitSet FOLLOW_label_ref_in_insn_format22t2756 = new BitSet(new long[]{0x0000000000000008L});
7646 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT22x_in_insn_format22x2779 = new BitSet(new long[]{0x0000000000000004L});
7647 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT22x_in_insn_format22x2781 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7648 	public static final BitSet FOLLOW_REGISTER_in_insn_format22x2785 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7649 	public static final BitSet FOLLOW_REGISTER_in_insn_format22x2789 = new BitSet(new long[]{0x0000000000000008L});
7650 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT23x_in_insn_format23x2812 = new BitSet(new long[]{0x0000000000000004L});
7651 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT23x_in_insn_format23x2814 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7652 	public static final BitSet FOLLOW_REGISTER_in_insn_format23x2818 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7653 	public static final BitSet FOLLOW_REGISTER_in_insn_format23x2822 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7654 	public static final BitSet FOLLOW_REGISTER_in_insn_format23x2826 = new BitSet(new long[]{0x0000000000000008L});
7655 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT25x_in_insn_format25x2849 = new BitSet(new long[]{0x0000000000000004L});
7656 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT25x_in_insn_format25x2851 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7657 	public static final BitSet FOLLOW_REGISTER_in_insn_format25x2853 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000002L});
7658 	public static final BitSet FOLLOW_register_list4_in_insn_format25x2855 = new BitSet(new long[]{0x0000000000000008L});
7659 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT30t_in_insn_format30t2878 = new BitSet(new long[]{0x0000000000000004L});
7660 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT30t_in_insn_format30t2880 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7661 	public static final BitSet FOLLOW_label_ref_in_insn_format30t2882 = new BitSet(new long[]{0x0000000000000008L});
7662 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT31c_in_insn_format31c2905 = new BitSet(new long[]{0x0000000000000004L});
7663 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT31c_in_insn_format31c2907 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7664 	public static final BitSet FOLLOW_REGISTER_in_insn_format31c2909 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000200L});
7665 	public static final BitSet FOLLOW_string_literal_in_insn_format31c2911 = new BitSet(new long[]{0x0000000000000008L});
7666 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT31i_in_insn_format31i2934 = new BitSet(new long[]{0x0000000000000004L});
7667 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT31i_in_insn_format31i2936 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7668 	public static final BitSet FOLLOW_REGISTER_in_insn_format31i2938 = new BitSet(new long[]{0x0000004000004C00L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L});
7669 	public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_format31i2940 = new BitSet(new long[]{0x0000000000000008L});
7670 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT31t_in_insn_format31t2963 = new BitSet(new long[]{0x0000000000000004L});
7671 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT31t_in_insn_format31t2965 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7672 	public static final BitSet FOLLOW_REGISTER_in_insn_format31t2967 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7673 	public static final BitSet FOLLOW_label_ref_in_insn_format31t2969 = new BitSet(new long[]{0x0000000000000008L});
7674 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT32x_in_insn_format32x2992 = new BitSet(new long[]{0x0000000000000004L});
7675 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT32x_in_insn_format32x2994 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7676 	public static final BitSet FOLLOW_REGISTER_in_insn_format32x2998 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7677 	public static final BitSet FOLLOW_REGISTER_in_insn_format32x3002 = new BitSet(new long[]{0x0000000000000008L});
7678 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT35c_METHOD_in_insn_format35c_method3025 = new BitSet(new long[]{0x0000000000000004L});
7679 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method3027 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000002L});
7680 	public static final BitSet FOLLOW_register_list_in_insn_format35c_method3029 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7681 	public static final BitSet FOLLOW_method_reference_in_insn_format35c_method3031 = new BitSet(new long[]{0x0000000000000008L});
7682 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT35c_TYPE_in_insn_format35c_type3054 = new BitSet(new long[]{0x0000000000000004L});
7683 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type3056 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000002L});
7684 	public static final BitSet FOLLOW_register_list_in_insn_format35c_type3058 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
7685 	public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type3060 = new BitSet(new long[]{0x0000000000000008L});
7686 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT3rc_METHOD_in_insn_format3rc_method3083 = new BitSet(new long[]{0x0000000000000004L});
7687 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method3085 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7688 	public static final BitSet FOLLOW_register_range_in_insn_format3rc_method3087 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000040L});
7689 	public static final BitSet FOLLOW_method_reference_in_insn_format3rc_method3089 = new BitSet(new long[]{0x0000000000000008L});
7690 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT3rc_TYPE_in_insn_format3rc_type3112 = new BitSet(new long[]{0x0000000000000004L});
7691 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type3114 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7692 	public static final BitSet FOLLOW_register_range_in_insn_format3rc_type3116 = new BitSet(new long[]{0x0000000000008100L,0x0000000000000000L,0x0000000000000000L,0x0000000000000001L});
7693 	public static final BitSet FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type3118 = new BitSet(new long[]{0x0000000000000008L});
7694 	public static final BitSet FOLLOW_I_STATEMENT_FORMAT51l_in_insn_format51l_type3141 = new BitSet(new long[]{0x0000000000000004L});
7695 	public static final BitSet FOLLOW_INSTRUCTION_FORMAT51l_in_insn_format51l_type3143 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000000000000000L,0x0000000000000004L});
7696 	public static final BitSet FOLLOW_REGISTER_in_insn_format51l_type3145 = new BitSet(new long[]{0x0000004000404C00L,0x0000000004000000L,0x0004000000000000L,0x0000000000000020L});
7697 	public static final BitSet FOLLOW_fixed_64bit_literal_in_insn_format51l_type3147 = new BitSet(new long[]{0x0000000000000008L});
7698 	public static final BitSet FOLLOW_I_STATEMENT_ARRAY_DATA_in_insn_array_data_directive3170 = new BitSet(new long[]{0x0000000000000004L});
7699 	public static final BitSet FOLLOW_I_ARRAY_ELEMENT_SIZE_in_insn_array_data_directive3173 = new BitSet(new long[]{0x0000000000000004L});
7700 	public static final BitSet FOLLOW_short_integral_literal_in_insn_array_data_directive3175 = new BitSet(new long[]{0x0000000000000008L});
7701 	public static final BitSet FOLLOW_array_elements_in_insn_array_data_directive3178 = new BitSet(new long[]{0x0000000000000008L});
7702 	public static final BitSet FOLLOW_I_STATEMENT_PACKED_SWITCH_in_insn_packed_switch_directive3200 = new BitSet(new long[]{0x0000000000000004L});
7703 	public static final BitSet FOLLOW_I_PACKED_SWITCH_START_KEY_in_insn_packed_switch_directive3203 = new BitSet(new long[]{0x0000000000000004L});
7704 	public static final BitSet FOLLOW_fixed_32bit_literal_in_insn_packed_switch_directive3205 = new BitSet(new long[]{0x0000000000000008L});
7705 	public static final BitSet FOLLOW_packed_switch_elements_in_insn_packed_switch_directive3208 = new BitSet(new long[]{0x0000000000000008L});
7706 	public static final BitSet FOLLOW_I_STATEMENT_SPARSE_SWITCH_in_insn_sparse_switch_directive3232 = new BitSet(new long[]{0x0000000000000004L});
7707 	public static final BitSet FOLLOW_sparse_switch_elements_in_insn_sparse_switch_directive3234 = new BitSet(new long[]{0x0000000000000008L});
7708 	public static final BitSet FOLLOW_set_in_nonvoid_type_descriptor3255 = new BitSet(new long[]{0x0000000000000002L});
7709 	public static final BitSet FOLLOW_set_in_reference_type_descriptor3287 = new BitSet(new long[]{0x0000000000000002L});
7710 	public static final BitSet FOLLOW_VOID_TYPE_in_type_descriptor3313 = new BitSet(new long[]{0x0000000000000002L});
7711 	public static final BitSet FOLLOW_nonvoid_type_descriptor_in_type_descriptor3321 = new BitSet(new long[]{0x0000000000000002L});
7712 	public static final BitSet FOLLOW_long_literal_in_short_integral_literal3339 = new BitSet(new long[]{0x0000000000000002L});
7713 	public static final BitSet FOLLOW_integer_literal_in_short_integral_literal3351 = new BitSet(new long[]{0x0000000000000002L});
7714 	public static final BitSet FOLLOW_short_literal_in_short_integral_literal3363 = new BitSet(new long[]{0x0000000000000002L});
7715 	public static final BitSet FOLLOW_char_literal_in_short_integral_literal3371 = new BitSet(new long[]{0x0000000000000002L});
7716 	public static final BitSet FOLLOW_byte_literal_in_short_integral_literal3379 = new BitSet(new long[]{0x0000000000000002L});
7717 	public static final BitSet FOLLOW_long_literal_in_integral_literal3394 = new BitSet(new long[]{0x0000000000000002L});
7718 	public static final BitSet FOLLOW_integer_literal_in_integral_literal3406 = new BitSet(new long[]{0x0000000000000002L});
7719 	public static final BitSet FOLLOW_short_literal_in_integral_literal3414 = new BitSet(new long[]{0x0000000000000002L});
7720 	public static final BitSet FOLLOW_byte_literal_in_integral_literal3422 = new BitSet(new long[]{0x0000000000000002L});
7721 	public static final BitSet FOLLOW_INTEGER_LITERAL_in_integer_literal3438 = new BitSet(new long[]{0x0000000000000002L});
7722 	public static final BitSet FOLLOW_LONG_LITERAL_in_long_literal3453 = new BitSet(new long[]{0x0000000000000002L});
7723 	public static final BitSet FOLLOW_SHORT_LITERAL_in_short_literal3468 = new BitSet(new long[]{0x0000000000000002L});
7724 	public static final BitSet FOLLOW_BYTE_LITERAL_in_byte_literal3483 = new BitSet(new long[]{0x0000000000000002L});
7725 	public static final BitSet FOLLOW_FLOAT_LITERAL_in_float_literal3498 = new BitSet(new long[]{0x0000000000000002L});
7726 	public static final BitSet FOLLOW_DOUBLE_LITERAL_in_double_literal3513 = new BitSet(new long[]{0x0000000000000002L});
7727 	public static final BitSet FOLLOW_CHAR_LITERAL_in_char_literal3528 = new BitSet(new long[]{0x0000000000000002L});
7728 	public static final BitSet FOLLOW_STRING_LITERAL_in_string_literal3543 = new BitSet(new long[]{0x0000000000000002L});
7729 	public static final BitSet FOLLOW_BOOL_LITERAL_in_bool_literal3562 = new BitSet(new long[]{0x0000000000000002L});
7730 	public static final BitSet FOLLOW_I_ENCODED_ARRAY_in_array_literal3584 = new BitSet(new long[]{0x0000000000000004L});
7731 	public static final BitSet FOLLOW_literal_in_array_literal3587 = new BitSet(new long[]{0x000000400040CD08L,0x000003C004000000L,0x0044100000000000L,0x0000000000002221L});
7732 	public static final BitSet FOLLOW_I_ANNOTATIONS_in_annotations3612 = new BitSet(new long[]{0x0000000000000004L});
7733 	public static final BitSet FOLLOW_annotation_in_annotations3615 = new BitSet(new long[]{0x0000000000000008L,0x0000000020000000L});
7734 	public static final BitSet FOLLOW_I_ANNOTATION_in_annotation3644 = new BitSet(new long[]{0x0000000000000004L});
7735 	public static final BitSet FOLLOW_ANNOTATION_VISIBILITY_in_annotation3646 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000000L,0x0000100000000000L});
7736 	public static final BitSet FOLLOW_subannotation_in_annotation3648 = new BitSet(new long[]{0x0000000000000008L});
7737 	public static final BitSet FOLLOW_I_ANNOTATION_ELEMENT_in_annotation_element3669 = new BitSet(new long[]{0x0000000000000004L});
7738 	public static final BitSet FOLLOW_SIMPLE_NAME_in_annotation_element3671 = new BitSet(new long[]{0x000000400040CD00L,0x000003C004000000L,0x0044100000000000L,0x0000000000002221L});
7739 	public static final BitSet FOLLOW_literal_in_annotation_element3673 = new BitSet(new long[]{0x0000000000000008L});
7740 	public static final BitSet FOLLOW_I_SUBANNOTATION_in_subannotation3700 = new BitSet(new long[]{0x0000000000000004L});
7741 	public static final BitSet FOLLOW_CLASS_DESCRIPTOR_in_subannotation3710 = new BitSet(new long[]{0x0000000000000008L,0x0000000080000000L});
7742 	public static final BitSet FOLLOW_annotation_element_in_subannotation3721 = new BitSet(new long[]{0x0000000000000008L,0x0000000080000000L});
7743 	public static final BitSet FOLLOW_I_ENCODED_FIELD_in_field_literal3760 = new BitSet(new long[]{0x0000000000000004L});
7744 	public static final BitSet FOLLOW_field_reference_in_field_literal3762 = new BitSet(new long[]{0x0000000000000008L});
7745 	public static final BitSet FOLLOW_I_ENCODED_METHOD_in_method_literal3783 = new BitSet(new long[]{0x0000000000000004L});
7746 	public static final BitSet FOLLOW_method_reference_in_method_literal3785 = new BitSet(new long[]{0x0000000000000008L});
7747 	public static final BitSet FOLLOW_I_ENCODED_ENUM_in_enum_literal3806 = new BitSet(new long[]{0x0000000000000004L});
7748 	public static final BitSet FOLLOW_field_reference_in_enum_literal3808 = new BitSet(new long[]{0x0000000000000008L});
7749 }
7750